modificacion factura lsoto

This commit is contained in:
Luis
2026-10-19 18:21:13 -04:00
parent 1d3906bcc3
commit 4c9a841473
33 changed files with 18480 additions and 252 deletions
+20 -5
View File
@@ -97,7 +97,9 @@ DEFINE hora CHAR(5),
muestraQR,ncffechaVencimiento BOOLEAN,
pubicacion LIKE prtb00012.ubicacion,
cemail VARCHAR(200),
chbruto,chdescuento,chsubtotal,chitbis,chneto VARCHAR(100)
chbruto,chdescuento,chsubtotal,chitbis,chneto VARCHAR(100),
vcod_comp VARCHAR(5),
qrpath STRING
DEFINE buf base.StringBuffer
@@ -120,7 +122,11 @@ FORMAT
SELECT a.telefono,a.telex,a.num_rnc INTO cliente_bas.telefono,cliente_bas.telex,rnc FROM vetb00004 a
WHERE a.tipo_cliente = x.tipo_cliente AND a.sec_cliente = x.sec_cliente
SELECT a.* INTO p_companias.* FROM companias a WHERE a.cod_comp = x.cod_cia
# Solo nombre y rnc (telefono/fax/direccion1 se llenan abajo desde sucursales).
# a.* fallaba con -1213 en SQL Server; cod_comp es CHAR, se compara como texto.
LET vcod_comp = x.cod_cia USING "<<<<<"
SELECT a.nombre, a.rnc INTO p_companias.nombre, p_companias.rnc
FROM companias a WHERE RTRIM(LTRIM(a.cod_comp)) = vcod_comp
SELECT a.sucid,b.sucnombre,b.direccion,c.nombre_provincia,b.telefono,b.fax,b.rnc,a.bodega
INTO localidad,sucnombre,direccion_sucursal,p_companias.direccion1,
@@ -158,8 +164,17 @@ DISPLAY "en impresion: ",x.factura, " localidad: ",localidad
# DISPLAY "fecha ",chfechafirmadigital
CALL sus_caracter(xhash CLIPPED) RETURNING rhash
# Ruta del QR segun el ambiente DGII de la empresa (companias.ambientedgii)
CASE ambiente()
WHEN "produccion"
LET qrpath = "ecf"
WHEN "certificacion"
LET qrpath = "certecf"
OTHERWISE
LET qrpath = "testecf"
END CASE
IF pcodigodgii <> '32' THEN
LET dataqrcode ='https://ecf.dgii.gov.do/ecf/consultatimbre?rncemisor=',p_companias.rnc CLIPPED,
LET dataqrcode ='https://ecf.dgii.gov.do/',qrpath,'/consultatimbre?rncemisor=',p_companias.rnc CLIPPED,
"&rnccomprador=",rnc CLIPPED,"&encf=E",pcodigodgii CLIPPED,pncf USING "&&&&&&&&&&",
"&fechaemision=",x.fecha_factura USING 'dd-mm-yyyy',
"&montototal=",ineto USING "<<<<<<<<#.##",
@@ -167,7 +182,7 @@ DISPLAY "en impresion: ",x.factura, " localidad: ",localidad
"&codigoseguridad=",rhash CLIPPED
END IF
IF pcodigodgii = '32' AND ineto > 250000 THEN
LET dataqrcode ='https://ecf.dgii.gov.do/ecf/consultatimbre?rncemisor=',p_companias.rnc CLIPPED,
LET dataqrcode ='https://ecf.dgii.gov.do/',qrpath,'/consultatimbre?rncemisor=',p_companias.rnc CLIPPED,
"&rnccomprador=",rnc CLIPPED,"&encf=E",pcodigodgii CLIPPED,pncf USING "&&&&&&&&&&",
"&fechaemision=",x.fecha_factura USING 'dd-mm-yyyy',
"&montototal=",ineto USING "<<<<<<<<#.##",
@@ -175,7 +190,7 @@ DISPLAY "en impresion: ",x.factura, " localidad: ",localidad
"&codigoseguridad=",rhash CLIPPED
END IF
IF pcodigodgii = '32' AND ineto < 250000 THEN
LET dataqrcode ='https://fc.dgii.gov.do/ecf/consultatimbrefc?rncemisor=',p_companias.rnc CLIPPED,
LET dataqrcode ='https://fc.dgii.gov.do/',qrpath,'/consultatimbrefc?rncemisor=',p_companias.rnc CLIPPED,
"&encf=E",pcodigodgii CLIPPED,pncf USING "&&&&&&&&&&",
"&montototal=",ineto USING "<<<<<<<<#.##",
"&codigoseguridad=",rhash CLIPPED
+2 -2
View File
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ManagedForm fileVersion="31400" gstVersion="3140a" name="managedform" uid="{1165b012-0dbd-4b0e-af31-def51a20b294}">
<ManagedForm databaseName="smarmotech" fileVersion="40100" gstVersion="60003" name="managedform" uid="{1165b012-0dbd-4b0e-af31-def51a20b294}">
<AGSettings>
<DynamicProperties version="2"/>
<DynamicProperties version="4"/>
</AGSettings>
<Record name="sconduces" uid="{33f26e10-e419-455c-9bf5-bc433adb3906}">
<RecordField fieldIdRef="4" name="fecha" uid="{53913608-fe4a-4a07-94e6-ef27cab00c51}"/>
+2 -2
View File
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ManagedForm databaseName="marmotech" fileVersion="31400" gstVersion="3140a" name="ManagedForm" uid="{030a7c0e-4f6a-4691-a67e-eb1685960e00}">
<ManagedForm databaseName="smarmotech" fileVersion="40100" gstVersion="60003" name="ManagedForm" uid="{030a7c0e-4f6a-4691-a67e-eb1685960e00}">
<AGSettings>
<DynamicProperties version="2"/>
<DynamicProperties version="4"/>
</AGSettings>
<Record name="record1" uid="{1d7238ec-db46-42d9-a38b-52a2afe98597}">
<RecordField colName="cod_cia" defaultValue="1" fieldIdRef="0" name="cod_cia" sqlTabName="formonly" uid="{28bd7c4f-338c-468d-8cc3-50c9f87b346b}"/>
+23 -21
View File
@@ -1,22 +1,24 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ManagedForm databaseName="smarmotech" gstVersion="22800" name="ManagedForm" uid="{91648dc0-990a-470a-9196-0c07da7ff0b4}">
<AGSettings/>
<Record additionalTables="" joinLeft="" joinOperator="" joinRight="" name="s_tipo" order="" uid="{aab12914-0957-4e58-b8a6-3930e72ac9d9}" where="">
<RecordField colName="" fieldIdRef="2" name="codigodgii" sqlTabName="" table_alias_name="" uid="{3686ce20-5c8a-45ce-83c0-b5f2fecfaa6d}"/>
<RecordField colName="" fieldIdRef="3" name="descripcion" sqlTabName="" table_alias_name="" uid="{82bbe993-d07d-4037-a445-2eb6f8ebd121}"/>
<RecordField colName="" fieldIdRef="4" name="fecha_vencimiento" sqlTabName="" table_alias_name="" uid="{d08bb425-6e6c-474b-99f9-e0e1602cdd9f}"/>
</Record>
<Form gridHeight="13" gridWidth="63" name="vefmwd020" text="NCF">
<Grid gridHeight="11" gridWidth="61" name="Grid1" posX="0" posY="0">
<Label gridHeight="1" gridWidth="12" name="Label1" posX="19" posY="1" text="TIPO FACTURA"/>
<Table gridHeight="6" gridWidth="44" name="Table1" posX="7" posY="3" totalRows="5">
<Edit aggregateColName="" aggregateName="" aggregateTableAliasName="" aggregateTableName="" colName="" columnCount="" fieldId="2" gridHeight="1" gridWidth="8" name="codigodgii" posX="0" posY="0" rowCount="" sqlTabName="" stepX="" stepY="" tabIndex="1" table_alias_name="" title="Codigo Dgii" widget="Edit"/>
<Edit aggregateColName="" aggregateName="" aggregateTableAliasName="" aggregateTableName="" colName="" columnCount="" fieldId="3" gridHeight="1" gridWidth="20" name="descripcion" posX="8" posY="0" rowCount="" sqlTabName="" stepX="" stepY="" tabIndex="2" table_alias_name="" title="Descripcion" widget="Edit"/>
<Edit aggregateColName="" aggregateName="" aggregateTableAliasName="" aggregateTableName="" colName="" columnCount="" fieldId="4" gridHeight="1" gridWidth="12" name="fecha_vencimiento" posX="28" posY="0" rowCount="" sqlTabName="" stepX="" stepY="" tabIndex="3" table_alias_name="" title="Fecha Vencimiento" widget="Edit"/>
</Table>
</Grid>
</Form>
<DiagramLayout>
<![CDATA[AAAAAgAAAEwAewBhAGEAYgAxADIAOQAxADQALQAwADkANQA3AC0ANABlADUAOAAtAGIAOABhADYALQAzADkAMwAwAGUANwAyAGEAYwA5AGQAOQB9QCAAAAgAAAFAIAAACAAAAT9QYk3S8an8AQAAAEwAewA4ADIAYgBiAGUAOQA5ADMALQBkADAANwBkAC0ANAAwADMANwAtAGEANAA0ADUALQAyAGUAYgA2AGYAOABlAGIAZAAxADIAMQB9QCAAAAgAAAFAR5mZpWZmaAAAAAAAAAAAAQAAAEwAewBkADAAOABiAGIANAAyADUALQA2AGUANgBjAC0ANAA3ADQAYgAtADkAOQBmADkALQBlADAAZQAxADYAMAAyAGMAZABkADkAZgB9QCAAAAgAAAFAUDMzO0zMzgAAAAAAAAAAAQAAAEwAewAzADYAOAA2AGMAZQAyADAALQA1AGMAOABhAC0ANAA1AGMAZQAtADgAMwBjADAALQBiADUAZgAyAGYAZQBjAGYAYQBhADYAZAB9QCAAAAgAAAFAPZmZqGZmaAAAAAAAAAAAAQ==]]>
</DiagramLayout>
<?xml version="1.0" encoding="UTF-8" ?>
<ManagedForm databaseName="smarmotech" fileVersion="40100" gstVersion="60003" name="ManagedForm" uid="{91648dc0-990a-470a-9196-0c07da7ff0b4}">
<AGSettings>
<DynamicProperties version="4"/>
</AGSettings>
<Record additionalTables="" joinLeft="" joinOperator="" joinRight="" name="s_tipo" order="" uid="{aab12914-0957-4e58-b8a6-3930e72ac9d9}" where="">
<RecordField colName="" fieldIdRef="2" name="codigodgii" sqlTabName="" table_alias_name="" uid="{3686ce20-5c8a-45ce-83c0-b5f2fecfaa6d}"/>
<RecordField colName="" fieldIdRef="3" name="descripcion" sqlTabName="" table_alias_name="" uid="{82bbe993-d07d-4037-a445-2eb6f8ebd121}"/>
<RecordField colName="" fieldIdRef="4" name="fecha_vencimiento" sqlTabName="" table_alias_name="" uid="{d08bb425-6e6c-474b-99f9-e0e1602cdd9f}"/>
</Record>
<Form gridHeight="13" gridWidth="63" name="vefmwd020" text="NCF">
<Grid gridHeight="11" gridWidth="61" name="Grid1" posX="0" posY="0">
<Label gridHeight="1" gridWidth="12" name="Label1" posX="19" posY="1" text="TIPO FACTURA"/>
<Table gridHeight="6" gridWidth="44" name="Table1" posX="7" posY="3" totalRows="5">
<Edit aggregateColName="" aggregateName="" aggregateTableAliasName="" aggregateTableName="" colName="" fieldId="2" gridHeight="1" gridWidth="8" name="codigodgii" posX="0" posY="0" sqlTabName="" tabIndex="1" table_alias_name="" title="Codigo Dgii" widget="Edit"/>
<Edit aggregateColName="" aggregateName="" aggregateTableAliasName="" aggregateTableName="" colName="" fieldId="3" gridHeight="1" gridWidth="20" name="descripcion" posX="8" posY="0" sqlTabName="" tabIndex="2" table_alias_name="" title="Descripcion" widget="Edit"/>
<Edit aggregateColName="" aggregateName="" aggregateTableAliasName="" aggregateTableName="" colName="" fieldId="4" gridHeight="1" gridWidth="12" name="fecha_vencimiento" posX="28" posY="0" sqlTabName="" tabIndex="3" table_alias_name="" title="Fecha Vencimiento" widget="Edit"/>
</Table>
</Grid>
</Form>
<DiagramLayout>
<![CDATA[AAAAAgAAAEwAewBhAGEAYgAxADIAOQAxADQALQAwADkANQA3AC0ANABlADUAOAAtAGIAOABhADYALQAzADkAMwAwAGUANwAyAGEAYwA5AGQAOQB9QCAAAAgAAAFAIAAACAAAAT9QYk3S8an8AQ==]]>
</DiagramLayout>
</ManagedForm>
+44
View File
@@ -0,0 +1,44 @@
{
----------------------------------------------------------------------------
PROGRAMA : VEINFORMACION
OBJETIVO : Funcion informacion() de la factura (veprmt001): trae el
transportista del conduce y la direccion/ciudad de la
cotizacion a fact_gral.
Copiada de vefumt001_1.4gl (no se puede enlazar ese archivo
completo porque repite funciones de FUNCIONES_VE/vefumt001).
----------------------------------------------------------------------------
}
GLOBALS
"veprgb000.4gl"
FUNCTION informacion(pconduce,pventas,pbodega,xcotizacion)
DEFINE pconduce INT,
pventas SMALLINT,
pbodega SMALLINT,
codigo_provincia INT,
xcotizacion INT
# TRANSPORTISTA
SELECT DISTINCT a.cod_transp,a.sec_transp,a.cod_tarifa,b.nombre,a.placa
INTO fact_gral.cod_transp,fact_gral.sec_transp,fact_gral.cod_tarifa,fact_gral.nombre_tran,
fact_gral.placa_transp
FROM iptb00006 a,vetb00015 b,vetb00060 c,prtb00012 d
WHERE (a.num_doc = pconduce) AND
(a.cod_mov = c.cod_mov) AND
c.ventas = pventas AND
(a.cod_transp = b.cod_transp AND
a.sec_transp = b.sec_transp) AND
(a.bodega = pbodega) AND
(a.num_oc = d.num_oc) AND
d.cotizacion_no = xcotizacion
SELECT a.direccion_cliente,a.cod_provincia INTO fact_gral.direccion,codigo_provincia
FROM vetb00050 a
WHERE a.cotizacion_no = xcotizacion
SELECT d.nombre_provincia INTO fact_gral.ciudad
FROM vetb00020 d
WHERE d.cod_provincia = codigo_provincia
END FUNCTION
+4 -4
View File
@@ -3681,10 +3681,10 @@ FUNCTION veprmt001()
.IdentificadorExtranjero =
num_rnc CLIPPED
END IF
CALL sus_caracter(
fact_Gral.nombre)
RETURNING documento_encabezado
.razonSocialComprador
# El nombre va normal en el XML (el writer ya escapa & < >);
# sus_caracter() es para URL y dejaba FID%20%3BINM...
LET documento_encabezado.razonSocialComprador =
fact_Gral.nombre
LET documento_encabezado.razonSocialComprador =
documento_encabezado
.razonSocialComprador CLIPPED