Actualización 2017
Enero
07/01/2017
2109 Programa DpXbase: “DPSQLSELECTCLASS(cSql,cTable,cType,oTable,cDpXRun,cDpXLin”) , ejecuta en el método NEW() de la clase TTABLE, tiene como objetivo traducir o alinear las comandos de la sentencia SQL compatibles para MSSQL SERVER.
Para activar e Inactivar este proceso es necesario, definir en el archivo
DATAPRO.INI
SQLSELECTCLASS:=.T.
07/01/2017
2110 Programa DpXbase “TTABLE_COMMIT(cSql,oDb,cType,oTable)”, Ejecuta desde el method COMIT() de la clase TTABLE, tiene como objetivo recibir, alinear y devolver la sentencia SQL Según la sintaxis de MSSQL Server Antes de Ejecutar la sentencia en la Base de datos según: oDb:Execute(cSql)
07/01/2017
2110 Programa DpXbase “DSNCHECKTABLE”, migrado desde dpwin32.hrb. Ejecuta los procesos de creación de tablas, índices e integridad en la base de datos. Se ejecuta cuando no se encuentra el archivo *.chk según nombre de la BD y cuando se ejecutar revisar datos de la empresa (Seleccionar Empresa)
FUNCTION DsnCheckTable(cDsn,oMeter,aDsn,lIntRef,lSay)
RETURN EJECUTAR(“DSNCHECKTABLE”,cDsn,oMeter,aDsn,lIntRef,lSay)
También el programa de importación de datos de tabla ejemplo\ o Datadbf\ hacia el diccionario de datos:
FUNCTION IMPORTDBF32(cNumTab,cTable,cDsn,oSay,lFromDbf,lCopy) RETURN
EJECUTAR(“IMPORTDBF32”,cNumTab,cTable,cDsn,oSay,lFromDbf,lCopy)
10/01/2017
2110 Programa DpXbase “SQLGETFECHAHORAMAX”, parámetros:cTable,cFieldD,cFieldH, cWhere,cTypeBd.
Obtiene el máximo valor de fecha y Hora según la tabla , para el caso de MySQL según , se obtiene directamente a través de CONCAT(,) para MSSQL primero obtiene la máxima fecha y luego la máxima hora según la máxima fecha.
11/01/2017
2112 Programa DpXbase “DPTABLANODICCDAT “, ejecutado cuando la función GETDSN(cTabla,lSay), busca en el diccionario de datos una tabla y esta no existe en la tabla DPTABLA, realizar el proceso de importar desde
DATADBF\DPTABLAS.DBF
DATADBF\DPCAMPOS.DBF
DATABDF\DPCAMPOSOP.DBF
DATADBF\DPLINK.DBF
Cuando el sistema solicita una consulta mediante la clase ttable, esta busca cual es la base de datos vinculada con la tabla, mediante la función GETDSN() se busca en el diccionario de datos si corresponde a configuración o datos de empresa. En el caso que no exista en el diccionario de datos se ejecuta el programa “DPTABLANODICCDAT” quien se encarga de actualizar el diccionario de datos según el contenido de las tablas ubicadas en DATADBF, en el caso de no ser encontrada el sistema descargar desde AdaptaPro server En caso de ser encontrada actualiza el diccionario de datos.
12/01/2017
2113 Mejora en programa “SQLMSGERR”, cuando el mensaje de incidencia emitido por el gestor de la base de datos (MySQL) indica “Unknown column” o Campo no existe, ejecuta el programa “DPTABLANODICCDAT” para actualizar el diccionario de datos desde la carpeta\datadbf
IF !Empty(cError) .AND. “Unknown column”$cError
MsgRun(“Actualizando Diccionario de Datos”,”Por favor espere..”,{||EJECUTAR(“DPTABLANODICCDAT”,cTable)})
cError:=cError+CRLF+“Se ejecutó exploración del Diccionario de datos para Ingresar Campo Faltante”
ENDIF
12/01/2017
2114 Programa “IFFIELDBDF”, parámetros: cTable,cField, ejecuta desde Programa “SQLMSGERR”. Verifica si existe el campo y tabla en tabla DPCAMPOS del diccionario de datos, en caso de ser afirmativo realiza revisión de estructura de datos CheckTable(cTable). En el caso no encontrado en el diccionario de datos, realiza la búsqueda del campo y tabla en tabla datadbf\dpcampos.dbf, en caso no ser encontrada, descarga desde AdaptaPro server .PAQ mediante Programa “DPTABLANODICCDAT”.
12/01/2017
2115 FUNCTION ISSQLGET(cTable,cField,uValue,bRun,cWhere,oDb), incluye parámetro oDb
18/01/2017
2116 Programa “SCRTODPPROGRA”, realiza lectura de archivos script\*.scr busca por por uno en tabla DPPROGRA, en el caso de no existir, presenta formulario browse contentivo de los archivo *.scr que no están registrados. Incluye barra de botón con opcioneS:
Incluir : Agrega el programa en Tabla DPPROGRA
Ver : Muestra en formulario RTF contenido del programa.
Eliminar : Eliminar el programa *.scr *.bak *.dxb, SCRDELETE
Ejecutar : Programa DpXbase
18/01/2017
2117 Programa “SCRTODPPROGRA_AUTO”, Actualiza el campo PRG_TEXTO de la tabla DPPROGRA cuando su contenido está vacío y existe el programa “script” en la carpeta script\. Remueve el programa compilado y recompila nuevamente. Se ejecuta cuando se inicia la aplicación “Programación” mediante programa APLPRG
20/01/2017
2118 Programa “SCRNOTFOUND”, descarga un programa compilado *.dxbx desde Adaptapro Server desde la función EJECUTAR() o XCOMPILAR() y no existe el programa compilado (*.SCR), no esta registrado en DPDPROGRA y no existe el programa de ejecución o compilado (*.dxbx). La descarga es realizada mediante la función DPAPTGET() según datos de la llave adaptapro.dp obtendrá los componentes desde base de datos TEST (Desarrollo), PREP (Pre Producción) y PROD (Producción)
20/01/2017
2119 Programa “DPINVREPLACE”, Busca y reemplaza “Contenido de campos”.
Parámetros
cTable: Nombre de la tabla por defecto DPINV
cField: Nombre del Campo para Buscar y Reemplazar. Por defecto INV_DESCRI
cKey : Campo Clave. Por defecto es INV_CODIGO.
Se presenta formulario que solicita Texto que desea buscar (en la tabla) y el nuevo Texto para su reemplazo.
24/01/2017
2120 Programa nuevo campo “INV_REQMEM” en tabla “DPINV”, tipo caracter (1), acepta Si o No, en el caso de ser “S” prevalida antes de grabar que el registro de producto posea campo memo (no vacío). Necesario para productos de servicios que requieren contenidos, también esta validación aplica en el proceso de comercialización. La clase TDPEDIT(), incluye nuevo método:
ApEditMemo() quien ejecuta el formulario de campos memos.
Febrero
04/02/2017
2121 Mejora en programa “DPLOADCNFADDFIELD”, incluye registro en DATASET para registra la ejecución del proceso por empresa (Base de datos) y evitar verificar las estructuras de datos para las siguientes ejecuciones logrando mejor tiempo de respuesta en la iniciación Ejecución) de la empresa.
04/02/2017
2122 Nueva Variable ::lCreaRegIntRef en clase TDPEDIT, su valor por defecto es .T., en el método SAVE() antes de BEGIN/COMMIT/ROLLBACK ejecuta el método ::oTable:CreaRegIntRef() en la clase TTABLE, quien realiza la revisión de integridad (Existencia de registros vinculados para realizar la inserción de los registros omitidos) mediante el programa “DPCREAREGINTREF”.
De igual forma la clase TTABLE incluye la variable o class Data ::lCreaRegIntRef quien también realizar la revisión e insercion de registros omitidos cuando se ejecuta el método commit(). Cuando la clase TDPEDIT realiza incluye o modifica datos, ejecuta ::oTable:CreaRegIntRef() antes del commit() y asigna .F. en ::lCreaRegIntRef para evitar la revisión e inserción del registro durante la transacción BEGIN/COMMIT/ROLLBAK evitando incidencias de LOCK TABLES incompletos.
Programa DpXbase LOADLINKINSERT, carga en variable oDp:aLinkInsert, el contenido de los vínculos de la tabla ::oTable:cTable registrados en la tabla DPLINK, logrando optimizar el proceso de lectura del diccionario de datos.
Si por razones de optimización o incidencias se requiere desactivar el proceso de inclusión de registros omitidos, debe realizarlo mediante las instrucciones en el programa “DPCREAREGINTREF”
DEFAULT oDp:lCreaIntRef:=GETINI(“DATAPRO.INI”,”CREAINTREF”,.T.),;
lRun :=oDp:lCreaIntRef
DATAPRO.INI
CREAINTREF:=.F.
17/02/2017
2123 Nuevo programa DPMOVINV_10IVA, realiza el cambio de IVA de 10% a 12% o 12% a 10% durante el proceso de inclusión de la factura. Este programa Permite hacer cambio de IVA sobre facturas existentes en la tabla DPDOCCLI.
Fue removido el mensaje “Factura ya fué iniciada”. Implementado en el Programa DPFACTURAV.
23/02/2017
2124 Nuevas funciones DPFECHABD() y DPHORABD() devuelve fecha y Hora Según valor del Servidor en la Base de datos. Necesario para el registro de actualizaciones del diccionarios de datos sin depender de las definiciones de la empresa. Utilizado en programa DPVISTAS,DPTABLAS,DPPROGRA
26/02/2017
2125 R:17.01 Implementación DPJ26 (Planilla de Rentas Definitiva). Nueva opción en Tributación, Proceso, Declaración definitiva de Rentas (DPJ26).
Programa DPCTA, incluye nuevo campo CTA_DPJ26 contiene número de la casilla de la planilla donde asigna el monto total de los asientos (Actualizados del Ejercicio en Cierre)
Requisitos para hacer DPJ26:
- Cierre fiscal (Histórico) del ejercicio.
- Cálculo de Ajuste por Inflación de : Inventarios, Activos, Cuentas monetarias, otros activos no monetarios.
26/02/2017
2126 Nueva Variable: oDp:cRifIva_ISLR registrada en DATASET y recuperada desde programa DPLOADCNF, Contiene el RIF del Receptor Tributario registrado en la tabla “DPPROVEEDORES” y formulario “Registro Ente Tributario”.
Tiene como objetivo obtener el código de Cuentas por Pagar para el registro de los compromisos tributarios de la forma: 30, 28, 26, Retenciones de IVA y Retenciones de ISLR. Su contenido es editado en el formulario “DPCONFIG” o configuración de la Empresa., folder “Tributación” Además permitirá asignar las CxP de los documentos del proveedor F30,F28,F26,XML.
La variable oDp:cRifSeniat es creada desde el proceso automático “CREAR_TES_NAC”, ahora asume el valor de la variable oDp:cRifIva_ISLR. El programa “GETCODSENIAT”, obtiene el código de proveedor del ente tributario según RIF; necesario para registrar las CxP.
26/02/2017
2126 Programa: SQLDB_POSTUPDAT. Cambio definición de “Activos” por “Activos Corrientes” en integración Contable de Productos mediante grupo de productos
// Inventario es un Activo Corriente.
SQLUPDATE(“DPGRU_CTA”,”CIC_CODINT”,”CTAATC”,”CIC_CODINT”+GetWhere(“=”,”CTAACT”))
28/02/2017
2127 Nueva Tabla DPCTAUSU, registra la definición del uso de las cuentas con el objetivo de conocer cuales son las cuentas que generan estados financieros y cuales generan estados de resultados. Las cuentas vinculadas con resultados (Utilidad), deben ser identificadas para obtener el impuesto diferido, además necesario para generar balance de resultados (Fiscales y Financieros). El contenido de la tabla DPCTAUSO se genera desde el formulario “Utilización” de las cuentas donde se definen las cuentas para “Estados financieros y Resultados”
28/02/2017
2128 Nueva consulta Browse “BRMOCIMPDIFGAS” para determinar el Impuesto Diferido según los documentos registrados en CxP y vinculados con cuentas contables que generan los resultados del ejercicio. Requiere vistas:
DPCTARESULTADO: Cuentas Contables vinculadas con el estado de Resultado.
DPASIENTOSDOCCOM: Asientos vinculados con las cuentas de resultados con respectiva identificación del documento. Se genera cuando se contabilizan los documentos de compra y CxP.
DPASIENTOSDOCPAG: Asientos derivados del comprobante de pago con la respectiva identificación de los documentos.
Marzo
02/03/2017
2129 Cambio programa “DPACTIVOSMNU”, menú de activos. Condiciona la opción:
Editar depreciaciones si la tabla posee permiso para modificar su contenido.
IF ISTABMOD(“DPDEPRECIAACT”)
DEFINE BITMAP OF OUTLOOK oMnuAct:oOut ;
BITMAP “BITMAPS\DEPRECIACIONVER.BMP”;
PROMPT “Editar Depreciaciones”;
ACTION EJECUTAR(“DPDEPREC”,oMnuAct:cCodSuc,oMnuAct:cCodigo,.T.)
ENDIF
02/03/2017
2130 Programa DPGRUMNU “Menú por Grupo de productos”, incluye nueva opción “Editar Precios” quien ejecuta el programa “BRPRECIOS” mostrando los productos por marca facilitando modificar los precios. De igual forma el programa “DPMARCASMNU”, menu por Marca, accede al programa “BRPRECIOS” filtrado por la Marca. Nueva opción “Procesos” en aplicación “Inventario”, presenta opción “Editar Precios de Venta”, ejecuta el programa “BRPRECIOS” con todos los productos para la venta.
04/03/2017
2131 Mejora en uso de las cuentas, se incluye el uso de la cuenta. El registro CUT_CODUSO=”U4″ para conocer cuál es la cuenta de Utilidad de Ejercicio. Sera Validada previamente la generación de estados financieros.
SELECT * FROM
DPCTAUSO
WHERE CUT_CODUSO=”U4″
14/03/2017
2132 Nuevos campos en Tabla “DPCONRETISLR”, Conceptos de retenciones de IVA
CTR_APLCLI”,”Lógico”,”Aplica con Clientes”
CTR_APLPRO”,”Lógico”,”Aplica con Proveedores”
Desde el formulario “DPCONRETISLR”, permite Activar o Inactivar los conceptos de retenciones que aplican exclusivamente con clientes o Proveedores. En el caso de las retenciones aplicadas por clientes, el formulario de Retenciones presenta en el browse de conceptos de retenciones aquellas que Están vinculadas con el tipo de persona de la empresa y aplicación a empresas Residentes en el país.
Para reducir la discrecionalidad por parte de los usuarios, Recomendamos solo activar los conceptos de retenciones que pueden aplicar los Clientes según los servicios que presta la empresa. De igual manera, Restringir exclusivamente los servicios con terceros que contrata la empresa con prestadores de servicios, logrando evitar sanciones causadas por la aplicación de retenciones sobre servicios no contratados por la empresa. De igual manera, en los proveedores que prestan servicios el sistema provee un campo específico para indicar el código de retención de ISLR evitando por parte del usuario utilizar otros códigos de retención no autorizados para el prestador de servicios (Proveedor).
16/03/2017
2133 Contabilizar Documentos de Clientes/Proveedores, programa DPDOCCONTAB, utiliza las cuentas contables asociadas por Grupo de productos, mediante la tabla DPGRU_CTA. Los campos GRU_CTAVTA no están disponibles en el nuevo release, ahora los campos de grupos para las cuentas contables son utilizados virtualmente. AdaptaPro 2017, podrá contabilizar los inventarios por Grupos o Departamentos.
oTable:Replace(“GRU_CTAVTA”,EJECUTAR(“DPGETCTAMOD”,”DPGRU”,oTable:GRU_CODIGO,NIL,”CTAVTA”,.T.))
oTable:Replace(“GRU_CTACOM”,EJECUTAR(“DPGETCTAMOD”,”DPGRU”,oTable:GRU_CODIGO,NIL,”CTACOM”,.T.))
oTable:Replace(“GRU_CTADVC”,EJECUTAR(“DPGETCTAMOD”,”DPGRU”,oTable:GRU_CODIGO,NIL,”CTADVC”,.T.))
oTable:Replace(“GRU_CTADVV”,EJECUTAR(“DPGETCTAMOD”,”DPGRU”,oTable:GRU_CODIGO,NIL,”CTADVV”,.T.))
23/03/2017
2134 Nuevo programa “REPFIELDLENUPDATE”, ejecutado desde el Grid de campos de las estructura de tablas mediante botón ” Actualizar Generador de Reportes”, que ejecuta la actualización de longitud de Rangos y Criterios en el Reporte según la longitud del campo.
23/03/2017
2135 Nueva Variable oDp:lCosProHis, definible en “Configuración de la Empresa”, Su valor por defecto es .T., tiene como finalidad indicarle al sistema que realice el cálculo del costo promedio según la traza histórica de las operaciones (entradas y salidas) contables en forma cronológica. El programa de cálculo de costo Promedio “anterior” utiliza la masa monetaria de las compras y según la variable oCnf:lCosProCom=.F. podrá incluir las salidas.
Recomendamos no utilizar este método debido a que incluye valores de todas las compras menos las salidas. Si la variable oDp:lCosProHis es .T. ejecuta el programa “INVCOSPROHIS”
27/03/2017
2136 Nuevo programa “BRLIBINVRES”, muestra el resumen de los libros de inventarios sumarizados por cada campo:
Cant/Ant.
Cant/Compras,
Cant/Ventas,
Cant/Entradas
Cant/Salidas,
Valor/Anterior,
Valor/Actual
Cant/Reg.
Facilita hacer las comparaciones del resumen de cada libro de inventario. Es ejecutado desde el formulario browse contentivo de los registros de Planificación del libro de inventarios. También desde Macro, browse, deberes formales. Cuando se genera libro de compras sin planificación, es registrado en la tabla según número obtenido de Año+Mes ejemplo: AAMM
31/03/2017
2137 Mejora en Movimiento de Caja, Operación “Anular”,”Reactiva”, no elimina el registro, asigna CAJ_ACT=0 como anulado o CAJ_ACT=1 Activo. Se muestra el estado “Activo” o “Anulado”. Falta por remover los asientos contables “diferidos” en caso de anular la transacción.
Abril
06/04/2017
2137 Nuevo programa “DPISLRXMLBRW”, muestra mediante formulario Browse de tipo “MDI” el detalle de las retenciones de ÌSLR que serán declaradas en formato XML y mediante formulario “Generar XML de retenciones de ISLR”. La barra de botones incluye funcionalidad: Previsualización, Exportar Excel,
HTML, Impresión mediante Crystal Report, Menú de consulta del documento.
08/04/2017
2138 Nueva opción “Visualizar documentos del proveedor con retenciones” en aplicación “Tributación”, muestra browse contentivo de los todos los documentos vinculados con Libro de Compras. Incluye la opción “consultar” para acceder al menú de consultas, y opción “Menú” para acceder al menú de opciones del documento. La barra de botones del formulario incluye dos controles combobox. el primero permite seleccionar el estado del documento “Activo”,”Pagado”,”Anulado” o “Todos”. El Segundo control combobox permite seleccionar el campo de fecha “Emisión” o “Declaración” para seleccionar los documentos según rango de Fecha.
Mayo
05/05/2017
2139 Programa “DPPRIVVTA” privilegios para documentos de venta, el arreglo: aVarL Incluye cuarto elemento para indicar su valor por defecto .T. o .F. cuando se guarda o asigna por usuario.
Nuevo parámetro:
AADD(aVarl,{“RecPag” ,”Recibo e impresión al Finalizar?” ,””,.F.})
Para procesos de facturación “Ágil” que requiere al finalizar la factura, acceder al formulario del recibo de ingresos y luego del pago realizado (Registrado) imprimir la factura.
El programa “DPPRIVVTALEE”, lee los parámetros definidos por el usuario. En caso de no estar previamente definido asume los valores indicados en la variable aVarL del programa “DPPRIVVTA”
08/05/2017
2140 Tabla DPPROVEEDOR, campo PRO_TIPPER incluye nueva opción “Asociación Civil” para ser utilizada como persona natural para el cálculo de retenciones de ISLR y seleccionar código del concepto de retención desde formulario del proveedor o prestador de Servicios. También, para el caso de tipo de persona “Gobierno”, es asumido como persona Jurídica.
08/05/2017
2141 Nueva variable oDp:nTimerRun, Obtiene el último segundo contado mediante function SECONDS() en la clase TWINDOWS/TTABLE/TSCRLINE. permite determinar el tiempo sin uso de sistema.
LOCAL nMin:= (SECONDS()-oDp:nTimerRun)/60
// Programa DPLOADCNF
DPSETTIMER({|nMin|nMin:=(SECONDS()-oDp:nTimerRun)/60,;
IF(nMin>15,EJECUTAR(“DPGETTASKREL”),GetUsuario(.T.,”00M20″),EJECUTAR(“DPLOADCNF”)},NIL);
,”USUARIOSINOPERACIONES”,60*60*15)
08/05/2017
2142 Method MensajeErr() en clase TDOCGRID, muestra caja de diálogo sobre la posición del Browse.
METHOD MensajeErr(cMsg,cTitle) INLINE (::lMsgError:=.T.,;
EJECUTAR(“XSCGMSGERR”,::oBrw,cMsg,cTitle))
09/05/2017
2143 Mejora en Activación de Traza de Ejecución DpXbase y Ejecución de Sentencias SQL. Desde el sysmenu del formularios LBX,EDT y MDI, se incluye:
- Activar Traza de ejecución, la asignación del archivo temp\traza.txt para guardar la línea de ejecución.
- Visualizar Traza DpXbase.
- Activar Traza de SQL, asigna el archivo temp\
- Visualiza Traza SQL
Cuando se activa traza DpXbase y Traza SQL, el sistema agrega en el archivo temp\Tracer.txt las líneas de ejecución conjuntamente con las sentencias SQL incluyendo traza de funciones internas del kernel más tiempo de ejecución de comandos SQL.
Desde la opción sysmenu, visualizar traza DpXbase y Mediante el programa VIEWRTF se muestra el archivo temp\tracer.txt contentivo de la traza DpXbase conjuntamente con la traza SQL, además cuenta con el botón “Buscar” y “maximizar” facilitando la exploración y búsqueda de su contenido.
11/05/2017
2144 Nueva variable oDp:cSqlAlert:=”SELECT DOC_NUMERO FROM DPDOCCLI”, utilizada por la clase ttable para mostrar mensaje de Alerta cuando el contenido de oDp:cSqlAlert está incluido en la sentencia SQL. Útil para lograr determinar en cual programa se está ejecutando, caso la sentencia:
SELECT DOC_NUMETO FRON DPDOCCLI sin cláusula WHERE afectando el rendimiento del sistema.
11/05/2017
2145 Mejora en programa “DPPRIVVTA”, incluye nuevo parámetro “Crear cliente no existe”, en el proceso de carga de documento de clientes (Facturas). La validación busca el código del cliente en tabla DPDOCCLI “sin rellenar de ceros para utilizar numero de cedula o RIF”, en caso de no existir, ejecuta el formulario “Creación Rapida de clientes”. Esta funcionalidad evita presentar el browse de clientes cuando el código del cliente “no existe”.
El programa también valida si existen códigos similares y los busca mediante la cláusula LIKE %cCodigo% en el caso de existir más de una coincidencia, se Presenta browse contentivo de registros de clientes para su selección.
16/05/2017
2146 Nuevo programa “DPDOCPROVALFIS”, valida que el número de control fiscal de la factura de compra no esté registrada en otro documento del mismo proveedor.
16/05/2017
2147 Mejoras en “Adjuntar Archivos” en clase TDPEDIT y TDOCENC, cuando se modifica un registro, botón adjuntar y se asociar los archivos, al finalizar el formulario de digitalización, es actualizado el registro del formulario sin esperar por el botón “Grabar”. Requiere binario
23/05/2017
2148 Nueva funcionalidad que permite eliminar registros de la tabla DPDOCCLI (“no puede tener pagos realizado”) con el objetivo de corregir incidencias en proceso de facturación con secuencia numérica entre factura electrónica con Factura Fiscal (Fiscal preimpresa).
Nuevos campos en Tabla DPTIPDOCCLI:
Campos:
TDC_DELETE,”Lógico”,”Eliminar Registros”
TDC_MOVEND,”Lógico”,”Mover Número de Documento”
TDC_MOVENF,”Lógico”,”Mover Número de Fiscal”
TDC_DEPURA,”Ejecutar Proceso de Depuración de Registros”
24/05/2017
2149 Mejora en menú DPTIPDOCCLIMNU, Incluye nueva opción:
“Movilizar Número de Documentos” mediante formulario browse “BRDOCCLIMOVNUM” contentivo de los documentos vinculados al tipo de documento con las siguientes funciones:
- Eliminar: Remueve fácilmente el registros, previamente el sistema realiza copia del registro en la tabla DPDOCCLI_HIS con objetivo de realiza futuras recuperaciones y asegurar procesos de auditoría.
- Subir: Asigna el número anterior al documento actual, si el número de La factura es 0000004, ahora será 0000003.
- Bajar: Asigna número siguiente al documento focalizado, si su número es 0000004, su nuevo número será 00000005 (Este no deberá estar registrado).
24/05/2017
2150 Programa:
DPTABLEHIS : Crea la tabla espejo según DPDOCCLI más sufijo “_HIS” DPCAMPOSHIS: Copia la estructura de datos segun tabla Origen
“DPDOCCLI” DPLINKHIS : Copia relación de integridad de referencia para la tabla histórico garantizando integridad con las tablas (Padres relacionadas).
DPDOCCLIDEL: Copia el registro documento en tabla DPDOCCLI_HIS y luego elimina el registro en tabla DPDOCCLI.
25/05/2017
2151 Programa:
Restricciones en tablas por Usuarios. Para evitar incidencias por búsqueda de registros (no autorizados por usuarios), fue agregada la instrucción oDp:lExcluye:=.f. en las funciones:
COUNT()
SQLGET()
SQLGETMAX()
SQLGETMIN()
Las restricciones por usuario queda exclusivamente aplicada a la funciones
OPENTABLE() y ASQL().
Así evita la incidencia por la percepción “registro no existe” cuando el registro está restringido, los datos del registros son ubicables mediante SQLGET().
oDp:lExcluye:=.f.
Opentable() // Obtiene todos los registros.
Caso de permisos por tipo de documento de clientes, no se muestra registro no existe “sino registro sin autorización”.
25/05/2017
2152 Programa:
Mejoras en tipo de documentos del cliente (Restriccion por Usuarios).
Nueva variable oDp:LCLIPERMISO, creada desde el programa
“DPTIPDOCCLILOAD”.
En este caso de factura de venta, la variable es: oDp:LCLIFAVPERMISO Utilizada en la condición de permiso en el menú del sistema y tiene como finalidad presentar la opción en el menú en forma “negada o Apagada”.
25/05/2017
2153 Programa:
Mejoras en tipo de documentos del Proveedor (Restriccion por Usuarios).
Nueva variable oDp:LPROPERMISO, creada desde el programa “DPTIPDOCPROLOAD”. Ejecutado desde DPBUILDWHERE
En este caso de factura de Compra, la variable es: oDp:LPROFACPERMISO Utilizada en la condición de permiso en el menú del sistema y tiene como finalidad presentar la opción en el menú en forma “negada o Apagada”.
26/05/2017
2154 Actualización del Campo INV_FCHACT desde documentos de compra, venta, entradas y salidas que afecten inventario, también unidades de medida y precios. Con el objetivo de tener la fecha de actualización del producto necesario para la columna FECHA de las diversas vistas contentivas de los catálogos (Plantillas de productos) para la aplicación ePedidos/eManager para facilitar la lectura solo de los productos que han sido afectados durante periodo de fechas (evitando leer toda la vista) desde el dispositivo móvil.
También la fecha podrá ser obtenida de otra vista según la función MAX(MOV_FECHA) desde la tabla DPMOVINV
SELECT
INV_CODIGO AS CODE,
INV_DESCRI AS NAME,
INV_IVA AS TAX,
IME_UNDMED AS MEASURE,
IME_CANTID AS MEASUREXUNIT,
GRU_DESCRI AS X,
MAR_DESCRI AS Y,
DEP_DESCRI AS Z,
EXL_CANTID AS QUANTITY,
PRE_PRECIO AS PRICE,
INV_FCHACT AS DATE
FROM DPINV
INNER JOIN DPGRU ON INV_GRUPO=GRU_CODIGO
INNER JOIN DPMARCAS ON INV_CODMAR=MAR_CODIGO
INNER JOIN DPDPTO ON INV_CODDEP=DEP_CODIGO
INNER JOIN DPINVMED ON INV_CODIGO=IME_CODIGO AND IME_VENTA=”S”
INNER JOIN DPPRECIOS ON INV_CODIGO=PRE_CODIGO AND IME_UNDMED=PRE_UNDMED AND PRE_LISTA=”A”
LEFT JOIN VIEW_INVEXILOG ON INV_CODIGO=EXL_CODIGO
WHERE INV_UTILIZ=”Venta”
ORDER BY GRU_CODIGO,CODE
El diseño de ePedidos está fundamentado en plantillas o vistas que puedan ser diseñadas por el asesor para satisfacer las expectativas del cliente evitando modificar la base de datos del sistema ni realizar adaptaciones sobre la aplicación web o móvil.
Además en la tabla Vista fue agregado en campo VIS_INDEX, VIS_ACTIVOI, con el objetivo de activar índices para optimizar la vista en el caso que esta sea necesaria para el uso de ePedidos. Evitando sobrecarga de índices innecesarios en la base de datos.
27/05/2017
2155 Mejora en Programa BRDOCCLIREP Registro de Entrega de Productos, utilizado para indicar la fecha que el cliente recibe las mercancías adquiridas mediante factura de venta. Incluye formulario TMDI() permite maximizar, Actualiza la fecha de vencimiento de factura, nueva columna (Estado del documento) y Código del vendedor. Incluye dos nuevos combobox: Estado del Documento : Activos, Pagados y Todos. Además de estatus del registro:
Registrado, No registrado, (Todos).
30/05/2017
2156 Incorporación del Saldo de CxC en formulario DPCLIENTES.BRW quien muestra browse contentivo de los registros de clientes. El saldo se obtiene del uso de la vista. (Incluye todas las sucursales)
INNER :=LEFT JOIN VIEW_CXCXCLI ON CLI_CODIGO=CXC_CODIGO
30/05/2017
2157 Mejore en reporte : CLIRESUVEN (Análisis vencimiento de CxC), Utiliza la vista
VIEW_CXCXCLI para obtener los clientes con saldos de CXC y la vista
VIEW_DOCCLICXC contentiva del saldo por documento pendiente por pago. Mediante el programa SCRCLIRESUVEN y REPCLIVENCERESXCLI obtienen los vencimiento según el intervalo de días indicados en las variables: RGO_C2,RGO_C3,RGO_C4,RGO_C5, RGO_C6.
31/05/2017
2158 Mejora en clase TDpBrwPag(), en la barra de botones ejecuta el programa
EJECUTAR(“DPBRWADDBTN”,oBar,oDlg,oBrw,oDpBrw) con el objetivo de agregar mas botones antes del boton xTOP.BMP. También el programa:
EJECUTAR(“DPBRWPAGBAR”,oBar,oDlg,oBrw,oDpBrw) con el objetivo de agregar más controles para lograr ampliar las funcionalidades del browse según cada propósito: Ejemplo: Agregar control GET para rangos de fecha o ComboBox para seleccionar periodos.
31/05/2017
2159 Mejora en Browse, Muestra Clientes con Documentos fiscales (Según Sucursal Activa), incluye opción consulta.
31/05/2017
2160 Nuevo browse “VENCEXCLIENTE”, Muestra en análisis de vencimiento resumido por cliente, incluyendo 6 columnas de vencimiento, las fecha del primer vencimiento y fecha del último vencimiento. Los intervalos entre vencimiento y días son definibles por el usuario. El área visual se ajuste a la resolución del video, incluye maximizar, acceso consulta de la ficha del cliente, acceso Click) al detalle de los todos los documentos vencidos
Junio
01/06/2017
2161 Programa “DPFORMATOSPRNCOPY” realiza copia de formato de impresión plano,
ejecutado desde programa DPFACTURAV desde la función DOCCLIMAIL(), envío de
documento en formato HTML. Desde el programa de factura el formato es
denominado DPDOCCLIHTML, en caso de presupuesto: DPDOCCLIHTMLCTZ, si
no existe será clonado desde el tipo de documento “DPDOCCLIHTML”, si este archivo no existe, ejecuta programa para importar “formatos de impresión”.
07/06/2017
2162 Mejora en Programa “DPEXPADAPTA” exporta Adaptaciones, generar lista en browse de los registros del diccionario de datos identificado como adaptación.
15/06/2017
2163 Implementación del Control SPLITTER en ventana MDI logrando adjuntar como cliente a dos controles Browse (Reajustables). Definir
- Formulario MDI. DpMdi(cTitle,”oFRM”)
- Browse oBrw1
- Browse oBrw2
- Comando Spliter indicando ambos browse (Puede ser otros controles)
@ 0,0 SPLITTER oFrm:oHSplit ;
HORIZONTAL;
PREVIOUS CONTROLS oFRM:oBrw1 ;
HINDS CONTROLS oFRM:oBrw2;
TOP MARGIN 40 ;
BOTTOM MARGIN 40 ;
SIZE 300, 4 PIXEL ;
OF oFrm:oWnd ;
_3DLOOK
- Asignar SPLITTER como cliente de la ventana MDI oFrm:oWnd:oClient := oFrm:oHSplit
- Activar formulario
oFrm:Activate({||oFrm:InicioBar()})
- Asignar Áreas/ubicación en los tres controles
FUNCION InicioBar()
LOCAL nAltoBrw1:=200
LOCAL nAltoBrw2:=400
oFrm:oBrw1:Move(032,0,800,nAltoBrw,.T.)
oFrm:oHSplit:Move(oFrm:oBrw1:nHeight()+oFrm:oBrw1:nTop(),0)
oFrm:oBrw2:Move(oFrm:oBrw1:nHeight()+oFrm:oBrw1:nTop()+5,0,800,nAltoBrw2,.T.)
- Ajustar SPLITTER
oFrm:oHSplit:AdjLeft()
oFrm:oHSplit:AdjRight()
21/06/2017
2164 Desbloquear controles ComboBox en Windows 64 Bits.
Cuando se inicia el formulario es necesario ampliar la Altura del ComboBox.
El bloqueo de debe a la recuperación del alto del comboBox (desde el formulario EDT) está limitado a 24 de Altura medido en pixel. En algunos casos, resolvemos cambiando el Font en 8, En otros formularios cambiar el font no resuelve, requiere cambiar el Tamaño del área visual (Altura).
@ 10,06 COMBOBOX oFrm:oComboo VAR oFrm:cCombo ITEMS
{“Uno”,”Dos”,”Tres”} FONT oFont SIZE 30,140
oFrm:Activate({||oFrm:INICIO()})
RETURN
FUNCTION INICIO()
// oFrm:oCombo:SetSize(NIL,140)
// También,
AEVAL(oFrm:oDlg:aControls,{|o| IF(“COMBOBOX”$o:ClassName(),o:SetSize(NIL,140),NIL)})
RETURN .T.
Definición por defecto del Tamaño (Altura del ComboBox) en el nuevo Binario.
Valor definido en DPINI
oDp:nComboHeight:= 140
23/06/2017
2166 Programa “DPGRU_CTAVISTA”, genera de manera dinámica una vista VIEW_GRUCTA_ por cada referencia de integración contable de grupo de productos con el objetivo de agrupar en columnas las cuentas contables por grupos:
AADD(aRef,{“CTAATC”,”Activos Corrientes ” ,””})
AADD(aRef,{“CTACOS”,”Costo de Venta” ,””})
AADD(aRef,{“CTAVTA”,”Venta” ,””})
AADD(aRef,{“CTADVV”,”Devolución de Ventas” ,””})
AADD(aRef,{“CTACOM”,”Compra” ,””})
AADD(aRef,{“CTADVC”,”Devolución de Compras”,””})
AADD(aRef,{“CTAINI”,”Inventario Inicial” ,””})
AADD(aRef,{“CTAFIN”,”Inventario Final” ,””})
Genera finalmente las vistas:
VIEW_DPGRU_CTA contiene resumen de las cuentas por grupo desde la tabla DPGRU_CTA
VIEW_DPGRUCTA Vista definitiva con cada columna representando una cuenta contable. Emula la antigua estructura contable de la tabla DPGRU con sus respectivo campo por cuenta contable.
23/06/2017
2167 Tabla DPDPTO_INV_CTA, Contiene la integración contable de productos por Departamento. Desde Menú de departamento accede al formulario DPDEPTOINV_CTA para la asignación de las cuentas contables.
23/06/2017
2168 Nuevo programa DPPROGRARECOVER. Ejecuta desde formulario DPPROGRA.LBX , realiza la recuperación visual del contenido de la tabla de auditoría “DPAUDELIMODCNF”, presenta en el formulario browse superior con los registros de fecha, hora y texto parcial de programa, en la parte inferior el campo Texto contentivo de la copia del programa, mediante el botón “Paste”, el sistema copia en clipboard el contenido del campo memo focalizado.
23/06/2017
2167 Programa “DPDPTOINVVISTA”, genera de manera dinámica una vista VIEW_DPDPTOINVCTA_ por cada referencia de integracion contable de departamento con productos con el objetivo de agrupar en columnas las cuentas contables por departamento:
AADD(aRef,{“CTAATC”,”Activos Corrientes ” ,””})
AADD(aRef,{“CTACOS”,”Costo de Venta” ,””})
AADD(aRef,{“CTAVTA”,”Venta” ,””})
AADD(aRef,{“CTADVV”,”Devolución de Ventas” ,””})
AADD(aRef,{“CTACOM”,”Compra” ,””})
AADD(aRef,{“CTADVC”,”Devolución de Compras”,””})
AADD(aRef,{“CTAINI”,”Inventario Inicial” ,””})
AADD(aRef,{“CTAFIN”,”Inventario Final” ,””})
Genera finalmente las vistas:
VIEW_DPDPTOINV_CTA contiene resumen de las cuentas por Departamento desde la tabla DPDPTOINV_CTA y VIEW_DPDPTO_INV_CTA Vista definitiva con cada columna representando una cuenta contable. Emula la antigua estructura contable de la tabla DPGRU con sus respectivos campos por cuenta contable. El proceso de generación de asientos contables reemplazará DPGRU por VIEW_DPDPTOINV_CTA (Caso de contabilizar por departamentos) o VIEW_DPGRU_CTA para contabilizar por grupo. En cualquiera de los casos, la vistas generan la misma estructura sin necesidad de hacer cambios en programación (Solo reemplazar las vistas por DPGRU en el Query)
24/06/2017
2168 Inclusión del campo GRU_DESCRI en vistas: VIEW_DPDPTO_INV_CTA y VIEW_DPGRUCTA, utilizados en el proceso de contabilización de documentos de Compra o Venta.
24/06/2017
2169 Definición de generación de asientos contables de Inventarios. La nueva variable oDp:cInvContab, definida en configuración de la empresa, el usuario podrá seleccionar “Grupo de Productos” o “Departamentos”. Mediante la definición de las vistas el sistema realizará el vínculo con las cuentas contables:
Si la variable oDp:cInvContab está vacío el vínculo será con la tabla DPGRU (Para los release antes del 2017).
Si la variable Contiene “G” utilizará la vista VIEW_DPGRUCTA en sustitución de la tabla DPGRU.
Si la Variable Contiene “D”, utilizará la vista VIEW_DPDPTO_INV_CTA en sustitución de la tabla DPGRU.
24/06/2017
2170 Nombre del Mes en Español desde función MONTHname() de MySQL OpenOdbc(oDp:cDsnData):Execute(” SET lc_time_names = ‘es_MX’ “)
cSql:=” SELECT “+;
” LIM_HASTA,”+;
” MONTHname(LIM_HASTA) AS LIM_MES,”+;
28/06/2017
2171 Nuevo parámetro PRIMARYKEY en formularios *.LBX indica la clave primaria de la tabla necesaria para identificar el registro en proceso de eliminación y pistas de auditoría. Si su valor está vacío, asume el valor del campo indicado en el parámetro: ORDER BY
Se implementó para lograr crear browse LBX ordenados por fecha de maneras descendente.
TITLE :={oDp:DPCLIENTES}
TABLE :=DPCLIENTES
SELECT:=CLI_CODIGO,CLI_NOMBRE,CLI_RIF,CLI_EMAIL,CLI_FECHA,CLI_OBS1,CLI_NUMMEM
ORDER BY:=CLI_FECHA DESC
PRIMARYKEY:=CLI_CODIGO
29/06/2017
2172 Nueva variable oDp:cCiiu. (Código de Actividad Económica) solicitada desde el formulario DPCONFIG (Configuración de la Empresa).
29/06/2017
2173 Nueva variable oDp:dFchActInv (Fecha Inicio para la Actualización financiera del Inventario). Valor necesario para la transición VEN-NIF, proceso que requiere obtener la capas de inventario actual según método FIFO, aplicar por cada capa el factor de INPC entre la fecha de capa y la fecha de inicio de la actualización. Este valor es almacenado en la tabla DPLIBINVDETCAPAS y su valor sumarizado guardado en el campo “DLI_ACTFIN” Valor de actualización financiera en la tabla DPLIBINVDET.
30/06/2017
2174 Mediante el botón “899” videos adaptapro, está definido para todas las aplicaciones y se muestra en la barra de botones del sistema.
Programa DPPANELERP (Panel ERP), incluye nuevo botón “video” que ejecuta directamente el video desde el sitio:
https://www.youtube.com/watch?v=oopV0SRzJDM&t=277s
Programa BRCALFISDET (Detalle del Calendario Fiscal), incluye botón “video”
que ejecuta el sitio
https://www.youtube.com/watch?v=oopV0SRzJDM&t=387s
29/06/2017
2174 Nuevo campo BOT_ACTIVO (Lógico) en tabla DPBOTBAR, permite indicar los botones de acceso que podrá ser activados o inactivados de la barra principal del sistema. Nuevo campo BOT_CODADD indica el Add-On vinculado. Su valor por defecto es “STD”
Julio
01/07/2017
2175 Método append() en clase ttable, activa el modo INSERT INTO si el cursor está ::RecCount()=0 vacío y prepara el method Commit() para insertar o actualizar el registro. Caso contrario Commit() ejecutara UPDATE
oTable:=OpenTable(cSql,.t.)
oTable:Append()
oTable:Replace(“FIELD”,cValue)
oTable:Commit()
oTable:End()
// Código Anterior
oTable:=OpenTable(cSql,.t.)
IF oTable:RecCount()=0
oTable:Append()
oTable:cWhere:=””
ENDIF
oTable:Replace(“FIELD”,cValue)
oTable:Commit(oTable:cWhere)
oTable:End()
01/07/2017
2176 Nuevo Metodo SwapLineUp() y SwapLineDown() en clase TDOCGRID, set activa mediante la asignación oGrid:lSwapLine:=.t. y permite intercambiar el contenido entre dos registros del grid. Necesario para ubicar los registros en el orden de prioridad o secuencia que decida el usuario. El proceso es ejecutado por el programa DpXbase GRIDSWAPLINE
01/07/2017
2178 Formulario contentivo de plantilla de controles AdaptaPro DPXBASE, suministra la sintaxis de cada control logrando simplificar el tiempo de programación. Cada control está registrado en carpeta dp\controls\*.txt
02/07/2017
2179 Nuevo campo LNK_ACTIVO, lógico en tabla DPLINK, para indicar los enlaces entre tablas de manera Inactiva para aquellos requerimientos específicos de aplicaciones “ADD-ON” y será activados mediante el proceso de instalación.
Caso de la Tabla DPINVEDT con la Tabla DPINV y DPMOVINV. Necesario exclusivamente para el uso “Proyectos y Servicios”.
04/07/2017
2180 Nuevo campo BCO_FILSUC en tabla DPCTABANCO, Indica si la cuenta Bancaria será filtrada por sucursal, en el caso de ser .F. (Falso), la cuenta bancaria podrá ser utilizada por otras sucursales en Comprobantes de Pago.
05/07/2017
2181 Nuevo programa (TS) “text search” necesario para buscar Textos en archivos planos, en el caso de AdaptaPro para buscar textos en programas *.scr y archivos TXT. Es llamado desde la barra de botones de programas fuentes.
10/07/2017
2182 Mejora en programa XLSTODBF, genera la estructura de la tabla DBF desde excel según la estructura de la tabla del sistema, logrando generar campos con la misma estructura y corrige la incidencia de lectura de códigos de tipo carácter como numéricos cuando la primera línea de excel es numérica.
10/07/2017
2183 Nuevo botón “Tablas” desde el editor de programas DpXbase, facilita el acceso directo hacia el formularios de tablas dptablas.lbx
10/07/2017
2184 Tabla DPIMPRXLS (definición de importación desde archivos excel) IXL_ADDINT: Lógico cuando es .t. Activa la revisión de integridad referencial, si registro referencial no existe será agregado como indefinidos con su respectiva concatenación de vínculos.
IXL_MAXCOL: Cantidad máxima de columnas que será utilizada para la importación de datos. Su valor omitido (o es Cero) asume la última columna (No vacía) como columna máxima.
Nuevas funcionalidades en la definición de campos, incluye : filtrar vacío (Si el campo está vacío omite el registro). Clave, puedes conjugar varias columnas representadas por campos, si ya existe será actualizado y no insertado.
12/07/2017
2185 Nuevo campo FIL_REFRES en tabla DPFILE y DPFILEEMP; logico, se asigna desde el formulario para digitalizar archivos, utilizado por el proceso de recuperación del archivo generando un nuevo archivo de uso temporal en la carpeta TEMP\
17/07/2017
2186 Programa CLICAT_FUNC, ejecutado desde programa DPLOADCNF “Ejecutar empresa”, para revisar si existe en la BD las funciones de categorización de clientes según tabla “DPCATEGORIZACLI”. Mediante el programa ISMYSQLFUNCTION valida la existencia de la función CLICAT_ refiere al código de categorización.
17/07/2017
2187 Programa ISMYSQLFUNCTION(cDsn,cName), revisa la existencia de la función en la BD, devuelve .T. si existe.
17/07/2017
2188 Programa DPGETFUNCTION(cDsn), Devuelve lista de funciones creadas en la base de datos indicada en la variable (cDsn) en su defecto su valor será:
oDp:cDsnData
18/07/2017
2189 Nuevo método METHOD QueryAdata(cSql), en clase TMSDB de Eagle, obtiene de manera directa del Servidor Arreglo contentivo de la consulta SQL sin pasar por la función OpenTable ni MyTable, ni revisión del diccionario de datos.
LOCAL oDb,aData:={}
DEFAULT cDb:=oDp:cDsnData,;
cSql:=”SHOW TABLES “
oDb :=OpenOdbc(cDb)
aData:=oDb:QueryAdata(cSql)
19/07/2017
2190 Nuevo browse “DOCPROISLRREP”, Presenta los registros de retenciones repetidas según la Vista: VIEW_DOCPROISLR_REP. Desde Aplicación tributación, nuevo botón “Browse de consultas en tributación”, presenta lista de todos los browse vinculados. El objetivo de este formulario es detectar registros duplicados en retenciones con proveedores y permitirle al usuario removerlos (Eliminarlos). También permite renumerar los registros de las retenciones para normalizar el número de secuencia.
EJECUTAR(“DPCAMPOSADD”,”DPUNDMED” ,”UND_VARIA” ,”L”,13,5,”Peso Variable” ,NIL,.T.,.F.,”.F.”) // Peso Variable
EJECUTAR(“DPCAMPOSADD”,”DPUNDMED” ,”UND_VALPES” ,”L”,13,5,”Valor por Peso” ,NIL,.T.,.F.,”.F.”) // Valor por Peso
EJECUTAR(“DPCAMPOSADD”,”DPUNDMED” ,”UND_MARGEN” ,”N”,05,2,”Margen Tolerancia” ) // Margen Totelancia
23/07/2017
2191 Nuevo browse “BRDOCPROCENCOS”, Presenta por centro de costos los documentos de compras vinculados. Además permite, incluir documentos vinculados o inherentes al centro de costos. Para el caso de administración de obras, podrá registrar los documentos vinculados con la Obra con el objetivo de generar el estado de resultado mediante pre-contabilización y/o Contabilización. Para los casos de facturas u operaciones con clientes que requiere registro de gastos como: Transporte, comisiones a terceros, gastos de representación entre otros, el sistema permite crear centro de costo por cada documento del cliente y asignar gastos directamente.
23/07/2017
2192 DATAPRO.INI, definición para España.
NIT :=CIF
NIT_NAME :=Código de identificación fiscal
COUNTRY :=ESP
Validacion CIF
http://www.lawebdelprogramador.com/codigo/JavaScript/1992-Validar-un-CIF-NIF-y-DNI.html
Programa : ESGETCIF(cNif) Obtiene CIF de España
Origen http://www.trucomania.org/trucomania/truco.cgi?337&esp
24/07/2017
2193 DATAPRO.INI, definición para Ecuador.
NIT :=RUC
NIT_NAME :=Registro Único del Contribuyente
COUNTRY :=ECU
25/07/2017
2194 Variable oDp:lVen, definido por defecto en DATAPRO.INI, si el valor es .F. Desactiva validación del RIF desde el portal web del Seniat.
26/07/2017
2195 Nuevo parámetro lDesc en Method SETTABLE() en clase TDOCENC Su valor por defecto es .T., muestra el último registro de la tabla (cTable) según campo(s) indicados (cOrderBy) filtrado mediante cláusula cWhere y valor de ::cScope. Si el valor es .F. posiciona el primer registro.
Sintaxis:
oDoc:SetTable(cTable,cPrimary,cWhere,lAll,cInner,oDb,cOrderBy,lDesc)
Agosto
08/08/2017
2196 Conciliación Contable documentos de Cuentas por Pagar : Nuevo Browse “BRCONCDOCPROD” muestra la comparación entre el monto de documentos de compra Vs. Asientos Contables mediante Vista “VIEW_CONCILDOCCOM” contentiva de los asientos contables originados desde documentos de Compra y Cuentas por Pagar.
09/08/2017
2197 Programa “DPDOCCLIREP” incluye filtro en tabla DPMOVINV para excluir registros MOV_TIPO+GetWhere(“<>”,”E”) correspondiente a Entregables generados por plantillas de Servicios.
También incluye el contenido de la tabla DPDPTO vinculada con los productos del documento.
+SELECTFROM(“DPDPTO” ,.F.)+;
” LEFT JOIN DPDPTO ON DEP_CODIGO = INV_CODDEP “+;
10/08/2017
2198 Clase TDOCGRID, nuevo class DATA lHScroll INIT .F.
Permite agregar control HScroll en clase XBROWSE, facilita mayor visualización del browse.
10/08/2017
2199 Nuevo campo MOC_REGAUD en Tabla DPASIENTOS, su valor por defecto es 0 y permite identificar los asientos alterados por parte del Usuario. En formulario DPCBTE incluye visualización de los campos MOC_ORIGEN y MOC_ALTER para facilitar conocer el origen de los asientos y si fueron alterados por parte del Usuario.
10/08/2017
2200 Mejora en programa “BRCONCDOCPROD”, incluye Botón: Comprobante contable facilitando acceso directo hacia el comprobante de Asientos. Incluye Botón: Menú, accede a los formularios de menú del documento para la facilidad de procesar nuevamente el asiento contable. En el caso de Documento Anticipo será Presentado menú del comprobante de pago.
10/08/2017
2201 Mejora en presentación visual formulario menú del comprobante de pago:
“DPCBTEPROMNU”
10/08/2017
2202 Mejora en programa “DPDOCVIEWCON”, visualizar asiento contable de Anticipo, busca el comprobante de pago de Origen y ejecuta programa “DPPAGVIEWCON”
10/08/2017
2203 Implementación de Pista de Auditoría en Clase TDOCGRID, Mediante la asignación del nombre del campo de registro para Auditoría a través de la classdata oGrid:cFieldAud:=”MOC_REGAUD” en para el caso de DPASIENTOS. También mediante la clase ttable, método oTable:SETAUDITAR(cFieldAud).
La clase incluye automáticamente el botón de consulta para acceder las pistas de auditoría del registro mediante el programa “GRIDVIEW_AUDITOR”
19/08/2017
2204 Mejora en programa “INVINICIAL”, incluye formulario de tipo MDI, muestra todos los productos y permite acceder directamente al formulario “DPINVINICIAL” para cargar la cantidad y Unidad de medida para el inventario Inicial.
19/08/2016
2205 Nueva opción “Consultas Browse para Inventario” contiene formularios Browse específicamente diseñados para consultas y procesos para inventario.
20/08/2017
2206 Nuevo formulario “BRINDROTINV”, presenta browse contentivo del índice de rotación por producto obtenida mediante las vistas (Mensual,Bimestral, Trimestral, Semestral y Anual) aplicadas sobre el libro de ventas:
DPLIBINVINI_TRI (Obtiene el valor Inicial de Inventario) DPLIBINVFIN_TRI
(Obtiene el valor Final de Inventario) DPLIBINVDET_TRI (Costo de la Venta)
DPLIBINVIRI_TRI (Índice de Rotación)
Ecuacion: Costo de la venta/Stock Promedio
Stock Promedio=(Valor Inicial+Valor Final)/2
22/08/2017
2207 Optimización en la generación del libro de inventario, generando nuevos índices:
EJECUTAR(“DPINDEXADD”,”DPMOVINV”,”MOV_CODSUC,MOV_CODIGO,MOV_FECHA,MOV_INVACT,MOV_CONTAB” ,”Optimiza lectura del costo promedio”,”GETCOSPRO” )
EJECUTAR(“DPINDEXADD”,”DPMOVINV”,”MOV_CODSUC,MOV_CODIGO,MOV_INVACT,MOV_CONTAB”,”Optimiza Libro de Inventario”,”LIBINV” )
Además replanteamiento de la Cláusula WHERE en programa : INVCOSPROHIS según los indices “GETCOSPRO” y “LIBINV”.
Septiembre
04/09/2017
2208 Nuevo Browse “PROVINV” proveedores del producto, desde la vista VIEW_DPPROVEEDORDPINV generada desde movimiento de productos según histórico de operaciones de compras. Presenta por cada proveedor, código, descripción, fecha del primer registro, fecha del último registro y cantidad de productos vinculados. Incluye opción de consulta del proveedor y opción de lista de consulta de productos vinculados.
05/09/2017
2209 Nuevo Campo DIA_CUATRI, en tabla DPDIARIO, mediante programa DPDIARIO genera el valor en DIA_CUATRI según el valor de DIA_FECHA.
1={01,02,03,04}
2={05,06,07,08}
3={09,10,11,12}
07/09/2017
2210 Nueva tabla DPDIARIDIV (Diario del Valor de la Divisa) según variable oDp:cMonedaExt “Código de Divisa en configuración de la empresa”. DPDIARIODIV vincula con la tabla DPDIARIO y almacena el valor de la divisa diariamente según los registros de la tabla DPTABMON (Tabla de monedas). Mediante el programa CALDIVISA(dFecha) obtiene el valor de la divisa según la fecha indicada. En el caso que la fecha sea inferior a la primera Fecha de registro asumirá el valor de la divisa del primer día, en el caso de ser superior al último registro el valor de la divisa será el último valor.
Su aplicación permite conocer el valor de la divisa de una operación en tiempo pasado y conocer su valor revalorizado en tiempo actual.
12/09/2017
2211 Nuevo Browse “DPINVPROD”, visualiza solos los productos con componentes para la fabricación, el browse incluye botón: Consultar, Menús y acceso al formulario de componentes para producción.
13/09/2017
2212 Mejora en Unidad de Medida para precio de venta en Formulario de Producto, la etiqueta “Precio de Venta” está compuesta por la lista de precios por defecto “oDp:cPrecio” más la Unidad de medida por defecto “oInv:cUndMed”.
Ahora permite asignar la unidad de medida del precio diferente a “UND”.
La variable oInv:cUndMed obtiene su valor desde la variable oDp:cUndMed “Valor por defecto”.
Cuando el producto está vinculado con precio y Unidad de medida indentificación “IME_MEDPRE” , el valor de la variable oInv:cUndMed obtiene el valor del catálogo de precios y refrescar la etiqueta “Precio de Venta” logrando visualizar la unidad de medida correspondiente o diferente “UND”. Mediante click sobre la etiqueta precio se presenta browse contentivo de las unidades de medida para su selección y presentar como precio de venta.
Vista VIEW_INVMEDPRESENTACION SELECT IME_CODIGO,
IME_UNDMED,
IME_CANTID
FROM DPINVMED
INNER JOIN DPINV ON IME_CODIGO=INV_CODIGO AND INV_ESTADO=”A”
WHERE IME_MEDPRE=1
GROUP BY IME_CODIGO,IME_UNDMED
14/09/2017
2213 Nuevo Browse “INVPRECIO”, Muestra los productos vinculados con precios de venta, incluye botón: Consulta, Menú y Precios. Permite Conoce los productos que poseen precios con su valor mínimo y Máximo.
14/09/2017
2214 Seleccionar Unidad de medida para precio de venta desde formulario del producto. Desde la etiqueta “Precio de venta”, presionar Click, se muestra browse de las unidades de medida válidas para el precio de venta. Esta funcionalidad evita crear precios de venta según unidad de medida por defecto “UND”.
15/09/2017
2215 Nueva vista VIEW_DPINVPRECIOS contiene los precios de venta por producto vinculado con la unidad de medida mediante la vista VIEW_INVMEDPRESENTACION condicionada WHERE IME_MEDPRE=1.
IME_MEDPRE=1 se refiere a la unidad de medida utilizada para presentar al productos en los browse que requiere precio. Un producto podrá tener diversas unidades de medida con precios, uno de ellos será presentado en el browse. Por defecto será la unidad de medida referente al precio de venta indicado en la ficha del producto.
15/09/2017
2216 Nuevo parámetro LFULLSIZE:=.T. en formulario LBX, Presenta en formulario
MDI en modo Maximizado.
LHSCROLL :=.T.
15/09/2017
2216 formulario DPINV.LBX producto, incluye nuevos campos:
Lista de Precio, Unidad de Medida, Precio. Además Parámetros:
LFULLSIZE:=.T. Presenta maximizado
LHSCROLL :=.T.
16/09/2017
2217 Nuevo parámetro INNER2,INNER3,INNER4,INNER5 en formulario LBX, facilitando agregar más enlaces INNER para la secuencia SQL. Ejemplo: En formulario DPINVTRAN.LBX
TITLE :={oDp:DPINVTRAN}
TABLE :=DPINVTRAN
SELECT :=TAB_CODIGO,TAB_DESCRI,CIC_CUENTA,CTA_DESCRI
INNER :=”LEFT JOIN DPINVTRAN_CTA ON TAB_CODIGO=CIC_CODIGO AND CIC_CTAMOD”+GetWhere(“=”,oDp:cCtaMod)
INNER2 :=LEFT JOIN DPCTA ON CIC_CUENTA=CTA_CODIGO AND CIC_CTAMOD=CTA_CODMOD
WHERE :=
ORDER BY :=TAB_CODIGO
16/09/2017
2218 Nueva tabla DPINVTRAN_CTA, contiene el registro de la cuenta contable de la tabla DPINVTRAN. El programa DPTABTOMOD, realiza la migración de cuenta desde la tabla DPINVTRAN hacia DPINVTRAN_CTA. El programa SQLDB_POSTUPDAT, ejecuta DPTABTOMOD para crear la nueva tabla asociada a las cuentas y migra su contenido. Nuevo campo TAB_ACTIVO para activar/Inactivar códigos para los Movimientos de Inventario. Nuevo campo TAB_UPDATE, lógico, activa el proceso de actualización de Asientos Contables vinculados con los movimiento de productos identificados con el código de la transacción.
16/09/2017
2219 Nuevo campo MOV_NUMPAR “Número de partida Contable” en tabla DPMOVINV.
Desde el proceso de contabilización de movimiento de Inventarios, obtiene número de la partida incremental del asiento mediante el programa “DPMOCNUMPAR” para su actualización en el registro en tabla DPMOVINV.
17/09/2017
2220 Mejora en proceso de Contabilización de movimientos de inventarios.
- Incluye identificación de Número de Partida.
- Asiento de Inventario referente a Activo se identifica mediante tipo “INV”
- Asiento Contrario correspondiente a la transacción se identifica mediante código de transacción, ejemplo: “E00”
- Adaptado a las nuevas tabla de integración contable por Grupo o Departamento DPGRU_CTA y DPDPTO_INV_CTA.
- El asiento incluye el código del producto en campo MOC_AUXILIAR. Con el objetivo de conocer los asientos contables vinculados directamente con el producto.
17/09/2017
2221 Mejora en Comprobante de Asientos Contables, el Grid incluye dos nuevos botones:
- Consultar Origen. Accede directamente hacia el documento Origen o a las opciones de consulta del documento. En caso de documento de Inventario, accede hacia el formulario del documento.
- Acceder al Menú del documento de Origen para ejecutar Procesos vinculados con el documento.
17/09/2017
2222 Nuevo Browse “ASIENTOSINV”, Presenta los asientos Contables con Cuentas “indefinidas” vinculadas con movimiento de inventarios y con la tabla “código de transacciones de inventario”. El browse incluye la opción “Modificar”, presentando el formulario del código de la transacción vinculada, con el objetivo que el usuario introduzca el código de la cuenta contable y el sistema asigna la nueva cuenta en todos los asientos indefinidos vinculados con los movimientos de inventario y código de transacción. Acceso desde Contabilidad, Otros, Opción: Consultas Browse para Contabilidad.
19/09/2017
2223 Nuevo campo SDC_CODVEN En tabla DPCLIENTESSUC, Código del vendedor en la sucursal del Cliente. El programa “DPCLIENTESSUCVEN” actualiza el código del vendedor en cada código de sucursal según el código del vendedor de la ficha del cliente. El formulario “DPCLIENTESSUC”, incluye código del vendedor.
Requiere replanteamiento de los reportes de comisiones.
20/09/2017
2224 Nuevo Browse “BRDPCLISUC”, ejecutado desde “comercialización”,”Otros”, browse de cliente. Muestra los clientes que poseen sucursales registradas. La barra de botones incluye opción sucursales y muestra las diferentes sucursales del cliente mediante formulario LBX.
20/09/2017
2225 Nueva opción menú “browse de clientes” en aplicación comercialización, otros, facilitando acceder directamente las consultas browse específicamente vinculadas con clientes.
20/09/2017
2226 Nueva vista VIEW_DOCCLIDOC contiene los documentos de Clientes con sus valores de Origen para ser utilizado en el cálculo de comisiones cuando el cliente realiza abonos o pagos parciales.
20/09/2017
2227 Mejora en programa “DPDOCCLISUC”, presenta browse de sucursales del cliente con su código de vendedor, desde programa “DPFACTURAV”. Cuando el usuario selecciona la sucursal, Asigna el código del vendedor de la sucursal en el documento de Venta.
20/09/2017
2228 Mejora en función CTOO(cValue,”D”), convierte en formato Fecha el valor de fecha en formato “mm-dd-aaaa” obtenido desde procesos de importación de datos de excel. La definición del formato de fecha se define en programa DPINI mediante variables
// Formato de Fecha mm-dd-aaaa
oDp:bFecha_:={|cFecha,cDia,cMes,cAno| cDia:=SUBS(cFecha,4,2),;
cMes:=LEFT(cFecha,3 ),;
cAno:=RIGHT(cFecha,4 ),;
CTOD(cDia+”/”+cMes+”/”+cAno)}
oDp:bFecha :={|bParam| IIF(ValType(bParam)=”C”,IF(“-“$bParam,EVAL(oDp:bFecha_,bParam),CTOD(bParam)),bParam)} // Bloque de c¢digo que certifica las Fechas
? EVAL(oDp:dFecha,”12-25-2017″) // Muestra 25/12/2017
? CTOO(“12-25-2017″,”D”) // Muestra 25/12/2017
22/09/2017
2229 Nuevo programa SETIVAPE, Contiene las variable de la Fecha de Pago electrónico. Ejecutado desde programa DPFACTURAV, DPDOCPRO y DPDOCCXP.
DEFAULT oDp:dDesdePE:=CTOD(“19/09/2017”),;
oDp:dHastaPE:=CTOD(“31/12/2017”)
23/09/2017
2230 Nuevo programa DPDOCPRO_10IVA Ejecutado DPDOCPRO y DPDOCCXP. Activa e Inactiva la asignación de Pago electrónico. Los programas DPDOCPRO “Facturas de compra” y DPDOCCXP “Cuentas por Pagar”, incluye nuevo boton “IVA con pago electrónico” para la asignación de IVA de tipo “PE” o “GN” según el monto de la compra y forma de Pago.
23/09/2017
2231 Mejora en programa DPFACTURAV “factura de venta”, incluir o modificar factura permite activar o inactivar pago electrónico restaurando tipo de IVA “GN” o “PE” Según el límite de la base imponible.
25/09/2017
2232 Mejora BrwMaker, formularios MDI serán creados para utilizar la capacidad gráfica del video de manera dinámica.
:Windows(0,0,aCoors[3]-160,aCoors[4]-10,.T.) // Maximizado
25/09/2017
2233 Nuevo browse “BRDPCTARES” para explorar cuentas vinculadas con asients. Presenta por cada cuenta contable el resumen de asientos Actualizados y por Actualizar.
Incluye botón “browse” que muestra los asientos contables vinculado con la cuenta focalizada. Se ejecuta desde contabilidad, Otros, Consultas Browse.
28/09/2017
2234 Nuevos Campos en DPDOCPRO,DPDOCCLI, para guardar el % de reducción del IVA, el monto del IVA sin rebaja, con el objetivo de facilitar la impresión del formato crystal report, cumpliendo con la providencia SNAT/2017/0048.
Gaceta 41.244
DPDOCPRO” ,”DOC_IVAREB”,”N”,2 ,0,”%Rebaja del IVA”)
DPDOCPRO” ,”DOC_IVABAS”,”N”,14,2,”Base del IVA”)
DPDOCCLI” ,”DOC_IVAREB”,”N”,2 ,0,”%Rebaja del IVA”)
DPDOCCLI” ,”DOC_IVABAS”,”N”,14,2,”Base del IVA”)
Octubre
01/10/2017
2234 Mejora en browse “”BRCONCDOCPROD” para determinar la inconsistencias entre los documentos de la tabla DPDOCPRO con asientos Contables. incluye boton “FORM” formulario facilita acceder directamente hacia el documento de compra, documentos de CxP y retención.
01/10/2017
2235 Nuevo programa “IVAREBTODPMOVINV”, asigna la rebaja del IVA a los items del cuerpo de factura quedando en 9 o 7% según sea el caso de la venta.
Ejecuta desde programa “DPDOCCLIPOSGRA” Condicionado cuando la factura se realiza con impresora Fiscal. El tipo de documento está vinculado con Serie Fiscal y la serie fiscal “SFI_MODELO” mediante campo “SFI_SERIMP” debe ser diferente a “Ninguna”
// Si la Impresora es Fiscal, Pasa la Reducción del IVA Hacia el Cuerpo de la Factura
IF oDocCli:DOC_IVARED>0 .AND. “NINGUNA”$UPPER(SQLGET(“DPSERIEFISCAL”,”SFI_SERIMP”,”SFI_MODELO”+GetWhere(“=”,cSerie)))
EJECUTAR(“IVAREBTODPMOVINV”,oDocCli:DOC_CODSUC,oDocCli:DOC_TIPDOC,oDocCli:DOC_NUMERO)
ENDIF
03/10/2017
2234 Mejora en programa “DPDOCCONTAB” para generar el asiento contable con IVA con Rebaja. El programa “DPDOCCLIIMP” genera el arreglo con nueva columna (13) Contentiva del IVA con Rebaja.
03/10/2017
2235 Nueva variable o campo Virtual oDoc:DOC_MTOBRU Creado en DOCTOTAL para Validar el monto del Límite para aplicar la Rebaja del IVA. Sustituyendo a la variable oDoc:DOC_BASNET “Contentiva de base Imponible” para realizar la comparación con el límite (2millones) para aplicar rebaja del 3% y 5%
09/10/2017
2236 Nuevas Variables en Programa SETIVAPE quien es llamado desde DPPOS01
oDp:cIvaRd :=”RD”,;
oDp:cIvaS1 :=”S1″,;
oDp:nIvaRd :=9,;
oDp:nIvaS1 :=7
Tiene como objetivo asignar las alícuota en el programa de DPPOS01 cuando el IVA tiene Rebaja de IVA y lograr cumplir con la exigencia de algunas impresoras fiscales que requiere el parámetro de Alicuota y % de IVA.
La variable lImpFis:
lImpFis:=!((“:”$oDp:cImpFiscal) .OR. “NINGUNA”$UPPER(oDp:cImpFiscal))
Determina si el programa DPPOS01 utiliza impresora fiscal y la misma no debe estar identificada con “:” ni con “Ninguna”
19/10/2017
2237 Nuevos programas DPDOCCLIGETIVA y DPDOCPROGETIVA, Ejecutado desde formulario de CxP y CxP, cuando solicita el número de factura Afectada, obtiene el Tipo de IVA y Alícuota del documento Origen, limitando la asignación de Alícuotas y % según documento Origen. Ejemplo: Si la factura solo tiene IVA GN 12%, el tipo de IVA será solo 12% y GN, no permitiendo Seleccionar otro tipo de IVA. Seleccionar Factura Asociada asigna % de descuento y % de Rebaja del IVA hacia documento de Débito/Crédito.
24/10/2017
2238 Nuevo parámetro LFULLHIGHT:=.T. en formulario LBX, Presenta su visualización según lo alto de la resolución del Video. Requiere parámetro oGet=NIL o llamada sin vínculo de control GET / BMPGET
24/10/2017
2238 Nuevos campos lógicos TDC_DELETE y TDC_DEPURA en Tabla DPTIPDOCPRO.
Permite definir si los registros de la Tabla DPDOCPRO vinculados con el tipo de documentos podrá ser eliminados y depurados. Desde el tipo de documento, formulario menú, incluye la opción “Eliminar Registros”, presenta browse Contentivo con lista de documentos vinculados con el tipo de documento. El proceso de Eliminación requiere documento debe estar en estado “Anulado”.
Previo proceso de eliminación el sistema realiza copia del registro en la tabla.
Noviembre
07/11/2017
2239 Nuevo browse “DOCPROISLR”, muestra los documentos de Compras/CxP vinculados con retenciones de ISLR, Incluye número de retención.
Accede desde tributación, otros, consultas Browse
Diciembre
01/12/2017
2240 Mejora en reintegro de Compras, desde el formulario en modo consulta o visualización accede al formulario del registro del documento de compra.
07/12/2017
2241 Editar Precio con IVA y calcular Precio Base: Desde menu del catálogo de precios, nueva opción “Editar Precios con IVA”, ejecuta el programa “BRPRECIOSIVA”, editar la 7ma Columna con el precio final, el sistema calcula el precio Base menos el IVA y almacena en la tabla DPPRECIOS el precio de venta sin IVA.
12/12/2017
2242 Nueva tabla: DPDIASCOMXCOB contiene los dias y % de cobranza para calcular las comisiones según el browse del programa BRDETCOMCOBPAG.
13/12/2017
2243 Nueva vista: DOCCLIFAVVTA contiene los documentos pagados total o parcialmente. Mediante Programa Browse BRDETCOMXPAGPAR presenta las comisiones por cobranza segun los dias entre la fecha de vencimiento vs la fecha del pago y calculando % según la tabla “DPDIASCOMXCOB”
19/12/2017
2244 Nuevo programa “FUNCTION_PORCENXCOB”, Desde el contenido de la tabla
“DPDIASCOMXCOB”Crea la función PORCENXCOB(nDias) necesaria para obtener el % de comisión por cobranza según el intervalo medido en días entre dos fechas.
ejemplo:
SELECT
DOC_FECHA,
DOC_FCHVEN,
DATEDIFF(DOC_FCHVEN,DOC_FECHA),
PORCENXCOB(DATEDIFF(DOC_FCHVEN,DOC_FECHA))
FROM DPDOCCLI
WHERE DOC_FECHA<>DOC_FCHVEN
LIMIT 1