Sistema de Gestión de Negocios "Hexa"
Base de datos de conocimiento.
| Doc. Ref. 32005 Título: Los métodos Intc en Hexa V9 Autor: Soltec Última actualización: 17/08/2018#edi #sepa #verifactu #csb |
Los métodos Intc en Hexa V.9
La clase cIntC reúne los procedimientos de intercambio de Hexa: remesas y extractos bancarios, facturación electrónica, comunicaciones fiscales, archivos de documentos y exportación e importación del modelo de datos. Se utiliza mediante el objeto Intc y depende de la base de datos, su configuración y las bibliotecas de cada formato o servicio. Las operaciones de envío, importación y mantenimiento tienen los efectos indicados en cada método; los textos describen la implementación existente.
En los métodos con Condicion, Orden y Opciones, el criterio SQL se indica sin WHERE y el orden sin ORDER BY, salvo las particularidades descritas en cada caso. Opciones contiene valores con el formato Nombre=Valor; los textos con espacios se delimitan con comillas simples. Una condición vacía puede abarcar todos los registros. Los ejemplos utilizan datos ilustrativos.
Los métodos disponibles son los siguientes:
-
Intc.GRemSepa(Condicion, Orden, Opciones)
Genera una remesa de adeudos SEPA a partir de los recibos seleccionados. Banco identifica el banco de la remesa; Vencimiento indica la fecha y, si no es válida, se utiliza la fecha de trabajo. Recurrente, First y Final determinan la modalidad; SinBic y NoAgrupar modifican la preparación de los adeudos. Comprueba cuentas IBAN, titulares y vencimientos, agrupa los recibos cuando procede y crea registros en Remesa y AdeudoSEPA. Devuelve el número de remesa, cantidades e importe, o el error. El archivo XML se genera con GeneraArchivoXMLSEPA.
-
Intc.GeneraArchivoXMLSEPA(RemesaNumero, Archivo)
Carga la remesa identificada por RemesaNumero y sus registros AdeudoSEPA, construye el XML mediante la clase RemesaSEPA y lo guarda en Archivo. Devuelve un resumen de cargos, importe y líneas, o el error.
Ejemplo:
Intc.GeneraArchivoXMLSEPA(123, "C:\Intercambio\remesa.xml")
-
Intc.GRemSepaPagos(Condicion, Orden, Opciones)
Genera una remesa de transferencias a partir de Pago. Banco identifica el banco; Vencimiento utiliza la fecha de trabajo si no se proporciona una fecha válida. SinBic y NoAgrupar controlan la preparación y agrupación. Comprueba cuentas y vencimientos y crea RemesaPagos y AbonoSEPA. Devuelve el resumen de pagos, abonos e importe. El XML se obtiene posteriormente con GeneraArchivoXMLSEPAPagos.
-
Intc.GeneraArchivoXMLSEPAPagos(RemesaPagosNumero, Archivo)
Lee RemesaPagos y sus AbonoSEPA, genera el XML de transferencias y lo escribe en Archivo. RemesaPagosNumero identifica la remesa. Devuelve cantidades, importe y líneas generadas, o el error.
-
Intc.RecuperaArchivoCSB43(Archivo, Banco)
Lee el extracto bancario Archivo en formato CSB43. Interpreta cabeceras, movimientos y conceptos complementarios e introduce los datos en ApunteCSB43, asociados al Banco indicado. Recupera fechas, importes, saldos, referencias y conceptos. Devuelve Recuperado o el texto del error; la llamada introduce registros en la base de datos.
-
Intc.GeneraArchivoEDIFacturas(Condicion, Orden, Opciones)
Selecciona facturas y sus movimientos para construir una exportación mediante cEdiFactura. La opción Directorio indica el destino de CABFAC.TXT y LINFAC.TXT. Devuelve un resumen del proceso o el error. Requiere el directorio de salida y los datos de cabecera y líneas necesarios para el formato EDI.
-
Intc.GeneraArchivoFacturae(Condicion, Orden, Opciones)
Genera el XML Facturae de las facturas seleccionadas, registra el archivo en Documento y lo guarda en documentos con la numeración FicheroDocumento. Firma el XML mediante XAdES. PedirCertificado permite elegir el certificado; en otro caso utiliza la configuración Certificado. Devuelve el nombre del fichero y el código de Documento, o el error.
-
Intc.DFacSiiBaja(Condicion, orden, Opciones)
Solicita al servicio SII la baja de las facturas emitidas seleccionadas. Exige registros de un mismo ejercicio y mes y utiliza el certificado configurado en Certificado, instalado en el almacén personal del usuario. Construye la solicitud AnulacionLRFacturasEmitidas y devuelve un resumen. No elimina las facturas locales; el resumen no detalla cada respuesta individual.
-
Intc.DFacSii(Condicion, orden, Opciones)
Prepara y envía al SII las facturas emitidas seleccionadas, con sus datos fiscales, desglose de impuestos y datos de rectificación cuando corresponda. La selección debe pertenecer al mismo ejercicio y mes. Utiliza Certificado y configuraciones como ClienteAnonimo y CuentaVentas. Devuelve cantidades procesadas y los errores recogidos de la respuesta.
-
Intc.DFacSiiConsulta(Condicion, orden, Opciones)
Consulta el libro SII de facturas emitidas para el ejercicio y mes deducidos de la selección de Factura. Comprueba que la selección tenga un único periodo y utiliza el certificado configurado. Devuelve la cantidad de registros recibidos o el error; no importa esos registros a las facturas locales.
-
Intc.DFacProvSiiBaja(Condicion, orden, Opciones)
Solicita al SII la baja de las facturas de proveedor seleccionadas. Exige un único ejercicio y mes y utiliza Certificado. La identificación del documento depende de SiiReferenciaNumeroFacturaProveedor. Devuelve el resumen de la solicitud o el error, sin borrar las facturas de proveedor locales.
-
Intc.DFacProvSii(Condicion, orden, Opciones)
Construye y envía registros SII de facturas recibidas a partir de FacturaProveedor y sus datos fiscales. Requiere una selección del mismo ejercicio y mes. Utiliza Certificado, CuentaCompras y SiiReferenciaNumeroFacturaProveedor para preparar la solicitud. Devuelve el resumen y los errores de respuesta recogidos por el procedimiento.
-
Intc.DFacProvSiiConsulta(Condicion, orden, Opciones)
Consulta el libro SII de facturas recibidas para el ejercicio y mes obtenidos de las facturas de proveedor seleccionadas. Utiliza el certificado configurado y devuelve la cantidad de registros recibidos o el error. La consulta no incorpora esos registros a la base de datos local.
-
Intc.DCobroSii(Condicion, orden, Opciones)
Selecciona recibos y comunica sus cobros al servicio SII mediante SuministroLRCobrosEmitidas. Incluye la identificación de la factura y los datos de cobro disponibles en Recibo. Utiliza Certificado y devuelve la cantidad comunicada o el error; el mensaje final no desglosa las respuestas individuales del servicio.
-
Intc.DPagoSii(Condicion, orden, Opciones)
Selecciona pagos y comunica al SII los datos de pago de las facturas recibidas correspondientes. Utiliza el certificado configurado y devuelve el resumen de la llamada o el error. El texto de resultado del código actual utiliza la palabra recibos también en este procedimiento.
-
Intc.ConfVeriFactuRutas()
Configura Settings.xml y las carpetas Inbox, Outbox, Invoice, Blockchains y Log bajo Verifactu, habilita el registro de actividad y guarda los ajustes de la biblioteca. Devuelve el mensaje de configuración o el error. El código indica que esta utilidad no se utiliza para rutas de red.
-
Intc.ConfVeriFactu()
Configura la biblioteca VeriFactu para el equipo definido en VeriFactuEquipo. Selecciona el servicio de pruebas o producción según VeriFactuTest, asigna el certificado y los datos del sistema y de la instalación mediante la configuración de Hexa, y guarda los ajustes. Rechaza la llamada desde un equipo distinto del configurado.
-
Intc.DFacVeriFactu(Condicion, orden, Opciones)
Genera registros VeriFactu y sus códigos QR para las facturas seleccionadas. Requiere el equipo configurado, una condición no vacía y una selección de hasta 1.000 facturas; comprueba importes y estados antes del proceso. SoloQR permite obtener los QR sin efectuar el envío. Autofactura selecciona la rama de facturas de proveedor, aunque las comprobaciones iniciales del código actual siguen consultando Factura. También lee Primera y Subsanacion, cuyo tratamiento depende de la rama implementada. Registra resultados y devuelve cantidades correctas, incorrectas y parcialmente correctas.
-
Intc.ValidaNif(Condicion, orden, Opciones)
Valida el NIF y el nombre de los registros seleccionados mediante NifValidation de la biblioteca VeriFactu. Tabla vale Cliente si no se especifica; la tabla debe disponer de los campos de nombre y NIF utilizados por el procedimiento. Devuelve una línea por registro, precedida de V si no hay errores o X si hay incidencias, con su identificación y detalle. No modifica los registros.
Ejemplo:
Intc.ValidaNif("Codigo=100", "", "Tabla=Cliente") -
Intc.XFacVeriFactu(Condicion, orden, Opciones)
Genera y guarda solicitudes de anulación VeriFactu para las facturas seleccionadas mediante InvoiceCancellation. Registra el resultado en los sucesos de Hexa y devuelve los contadores de estados. No borra las facturas locales. La comparación del estado parcialmente correcto contiene una errata en el código actual, por lo que ese contador puede no reflejar la respuesta.
-
Intc.PruebaVeriFactu()
Rutina de diagnóstico que lee un XML de una ruta local fija y lo envía por HTTP al servicio de pruebas indicado en el código, utilizando Certificado. Devuelve la respuesta recibida o el error. No recibe parámetros y su ejecución realiza una comunicación real; exige adaptar o disponer del archivo previsto por la rutina.
-
Intc.GeneraArchivoAEAT349(Condicion, Orden, Opciones)
Prepara un archivo de operaciones intracomunitarias a partir de Factura y FacturaProveedor, agrupando los datos por NIF. Comprueba ejercicio y trimestre, utiliza GeneraArchivo349ContactoRelacion y el contador ArchivoAEAT349. Las opciones incluyen Directorio, Archivo, Complementaria, Sustitutiva y DeclaracionAnterior. La escritura se realiza en Archivo; el mensaje final construye una ruta con Directorio, ejercicio, periodo y secuencia, que puede ser distinta del destino realmente indicado.
-
Intc.ImpoDoc(Condicion, Orden, Opciones)
Importa uno o varios archivos y crea sus registros Documento. Ruta indica el archivo o carpeta; Campos relaciona componentes del nombre del archivo con campos de Documento y CamposForzados permite asignar valores fijos. Copia los archivos al directorio de documentos con la numeración correspondiente y devuelve la cantidad importada o el error.
-
Intc.ActDocArch(Condicion, Orden, Opciones)
Revisa los archivos de los registros Documento seleccionados, adapta sus nombres a DocumentoArchivoNombreAmpliado o a la numeración de ocho cifras y actualiza Ruta cuando los renombra. Devuelve cantidades actualizadas y archivos inexistentes. También actualiza Fecha y Tamano: en el código actual RespetarTamano controla la actualización de Fecha y RespetarFecha controla la de Tamano, de forma cruzada respecto de sus nombres.
-
Intc.NomArchAmpDoc(Codigo, Numero, TipoDocumento, PrefijoDocumento, NumeroDocumento, Nombre)
Construye el nombre ampliado de un archivo de Documento a partir de su relación con otro documento, el Nombre y el sufijo -Doc.Codigo. TipoDocumento, PrefijoDocumento y NumeroDocumento identifican esa relación. Elimina caracteres no permitidos mediante TNF y devuelve el nombre base, sin añadir la extensión. El parámetro Numero se conserva en la firma pero no determina el nombre actual.
-
Intc.ActDocFT(Condicion, Orden, Opciones)
Actualiza la fecha y el tamaño registrados en Documento a partir del archivo indicado por Ruta. RespetarFecha y RespetarTamano permiten conservar los valores respectivos. Procesa la selección indicada y devuelve cantidades de documentos actualizados y archivos inexistentes.
-
Intc.GenDoc(Condicion, Orden, Opciones)
Genera documentos mediante automatización de Word. Plantilla indica el archivo de partida, con Texto.dot como valor predeterminado; admite plantillas y documentos de Word. Destinatario identifica la tabla cuyos registros se seleccionan, y Asunto aporta el asunto del documento. Sustituye los campos previstos por la plantilla. GuardarDocumento permite guardar y registrar los archivos en Documento; sin destinatarios puede generar un documento único. Devuelve el resultado de la generación.
-
Intc.CompDoc(Condicion, Orden, Opciones)
Compara los registros Documento con los archivos del directorio de documentos y devuelve las incidencias y cantidades. BorrarRegistros elimina registros cuyo archivo no existe y BorrarArchivos elimina archivos sin registro. La lectura de la opción Filtro utiliza en el código actual una variable vacía como nombre de opción, por lo que no debe suponerse que Filtro limite correctamente el proceso; el patrón predeterminado es *.*.
-
Intc.ExpoDoc(Condicion, Orden, Opciones)
Copia los archivos de los registros Documento seleccionados al Directorio indicado en Opciones. Utiliza la ruta de cada registro y devuelve las cantidades copiadas y no copiadas, o el error. No elimina los originales.
-
Intc.ExpTbl(Condicion, Orden, Opciones)
Exporta las tablas seleccionadas en el modelo Tabla a archivos de instrucciones SQL. Datos y Estructura permiten incluir registros y definiciones; Directorio vale dat si se omite. SobreEscribir sustituye el archivo existente, Nombre permite reunir tablas en un archivo y Referencia añade un sufijo al nombre. Criterio filtra los datos y SentenciasIndividuales controla la forma de los INSERT. Eliminar incorpora instrucciones DROP al archivo generado, sin ejecutarlas en esta exportación.
Ejemplo:
Intc.ExpTbl("Nombre='Cliente'", "", "Datos=Si Estructura=Si Directorio=dat SobreEscribir=Si") -
Intc.ImpTbl(Condicion, Orden, Opciones)
Lee y ejecuta los archivos SQL de las tablas seleccionadas en Tabla. Directorio vale dat; Nombre y Referencia determinan el archivo y Descargar permite intentar recuperarlo del repositorio si falta. Datos habilita INSERT, Estructura habilita CREATE y Eliminar habilita DROP. Espera el separador de instrucciones propio de la exportación Hexa y lee el archivo como Windows-1252. Modifica la base de datos de destino y devuelve Proceso finalizado o el error.
-
Intc.ActTbl(Condicion, Orden, Opciones)
Actualiza la estructura de las tablas seleccionadas: exporta una copia con referencia SeguridadActualizacion, renombra la tabla existente con el sufijo Actualizada, importa la estructura Base, copia los campos anteriores y elimina la tabla renombrada. Utiliza operaciones de SQL Server y presupone que los campos antiguos existen en la nueva estructura. Devuelve la cantidad actualizada o el error; realiza cambios efectivos de estructura y datos.
-
Intc.ActInd(Condicion, Orden, Opciones)
Recorre las tablas seleccionadas y sus definiciones en Indice para crear los índices que todavía no existen en la base de datos. Respeta la conexión indicada por el modelo y devuelve la cantidad de índices creados o el error.
-
Intc.ActMod(Auxiliar, CSPNuevos, SoloTabla, TiposADO, SoloPrueba)
Compara el esquema físico de la conexión principal o auxiliar con el modelo y añade las tablas, campos e índices que falten. Auxiliar elige la conexión; CSPNuevos se asigna a los nuevos elementos; SoloTabla limita la revisión y TiposADO conserva los nombres de tipo ADO. SoloPrueba permite obtener el informe sin introducir los nuevos elementos. Devuelve el detalle del proceso; no elimina elementos sobrantes del modelo.
Ejemplo:
Intc.ActMod(False, "", "Cliente", False, True)
-
Intc.ExpTblAI(Condicion, Orden, Opciones)
Exporta información estructural de las tablas seleccionadas, con campos, índices y relaciones, para utilizarla como contexto de inteligencia artificial. HTML permite generar el formato de ayuda en lugar de JSON y Directorio indica el destino, con temp como valor predeterminado. No exporta los registros de negocio. La consulta de índices contiene ORDER Byte en el código actual, lo que puede producir un error durante la exportación.
-
Intc.Campos1(Tabla)
Rutina de diagnóstico que consulta el primer registro de Tabla y devuelve nombres, tipos .NET y longitudes de sus campos. Al final intenta leer el campo Cliente de ese primer registro; por ello requiere datos y dicho campo, aunque el parámetro permita indicar cualquier tabla. Devuelve el error si no se cumplen esas condiciones.
-
Intc.Campos()
Obtiene del esquema físico de la conexión principal las columnas de Factura, nombre fijado en el código. Devuelve posición, nombre, tipo, valor predeterminado y posibilidad de valor nulo. Es una utilidad de inspección sin parámetros.
-
Intc.Tablas()
Consulta el esquema de la conexión principal y devuelve los nombres de las tablas físicas encontrados. Permite inspeccionar las tablas de la conexión, independientemente de su presencia en el modelo de Hexa.
-
Intc.pruebatodo()
Recorre el esquema físico de la conexión principal y prepara una relación de tablas y campos, convirtiendo los códigos de tipo mediante TipADO. Es una rutina de diagnóstico sin parámetros.
-
Intc.TipADO(NumeroTipo)
Convierte un código numérico de tipo ADO en su nombre textual mediante la correspondencia implementada. Devuelve Desconocido para los códigos no contemplados. Conserva los nombres literales definidos por la rutina.
Ejemplo:
Intc.TipADO(3)
-
Intc.TipADO2Hexa(TipoADO)
Convierte un nombre de tipo ADO al tipo del modelo Hexa correspondiente. Para determinados tipos devuelve No soportado; si no encuentra ninguna correspondencia devuelve una cadena vacía. Se utiliza al recuperar el esquema físico para el modelo.
-
Intc.TipHexa2Crea(TipoHexa)
Devuelve el fragmento de tipo SQL correspondiente a un nombre de tipo Hexa o ADO para crear campos. Tiene en cuenta el motor configurado, incluyendo variantes de SQL Server, valores predeterminados y contadores. Los tipos de texto pueden necesitar que el llamador añada su longitud. Para los nombres no reconocidos utiliza la alternativa prevista en la rutina.
