Commit inicial: fuentes MBS ERP (Genero 6) + .gitignore + docs/SETUP_PC_MBS.md

This commit is contained in:
2026-08-18 20:59:52 -04:00
commit 454973e269
5978 changed files with 2664094 additions and 0 deletions
+277
View File
@@ -0,0 +1,277 @@
{
-------------------------------------------------------------------------------
PROGRAMA : CCPRRP037
OBJETIVO : Liquidacion Comision Por Cobros Plan Ranchero
PROGRAMADOR : Juan Fco. Soto
FECHA REALIZACION : Abril 06, 1995
-------------------------------------------------------------------------------
}
GLOBALS
"ccprgb000.4gl"
DEFINE fact_ant INTEGER
DEFINE cod_cia SMALLINT
DEFINE p_datos RECORD
fecha_in DATE,
fecha_fin DATE
END RECORD
DEFINE porc_rep,porciento,p_itbi DECIMAL(8,2)
DEFINE p_neto,valor_desc DECIMAL(12,2)
FUNCTION ccprrp037()
DEFINE imprime CHAR(1)
DEFINE vendedor RECORD
sec_vend SMALLINT,
fecha_factura DATE,
factura INTEGER,
cod_n SMALLINT,
cod_grupo SMALLINT,
cod_tipo SMALLINT,
cod_sec SMALLINT,
cantidad INTEGER ,
precio DECIMAL(10,2),
recibo INTEGER,
fecha DATE,
valor_c DECIMAL(12,2),
porc_venta DECIMAL(10,4),
descrip_esp CHAR(30),
nombre_vend CHAR(30),
apellido_vend CHAR(30) ,
vende CHAR(6),
codigo CHAR(7)
END RECORD
#WHENEVER ERROR CONTINUE
OPTIONS
FORM LINE 8,
ERROR LINE 23,
COMMENT LINE 21
OPEN FORM ccfmrp037 FROM "ccfmrp037"
DISPLAY FORM ccfmrp037
CALL pantalla()
DISPLAY "ccprrp037" AT 4,3
DISPLAY "Liquidacion Comision Por Cobro Plan Ranchero" AT 6,17
LET tipo_papel = 2
CALL msgrp000(tipo_papel)
INPUT BY NAME cod_cia,p_datos.*
IF int_flag THEN
LET numero_msg = 2
CALL msg(numero_msg)
LET int_flag = false
RETURN
END IF
START REPORT reporte_37 TO "C:\\archivo"
DISPLAY " "
AT 19,14
DISPLAY "<< Buscando Las Informaciones... Espere Por Favor >>"
AT 19,14
DECLARE c_vende CURSOR FOR
SELECT UNIQUE d.cod_emp_sec,a.fecha_factura,a.factura,
b.cod_n,b.cod_grupo,b.cod_tipo,b.cod_sec,b.cantidad,
b.cantidad * b.precio ,d.num_doc,d.fecha_orig,d.valor,
a.porc_desc,' ',' ',' ',' ',' ',a.porc_desc,a.porc_itbi,a.neto
FROM vetb00002 a,vetb00003 b ,cctb00005 c,cctb00001 d
WHERE d.fecha_orig between p_datos.fecha_in and p_datos.fecha_fin
and (a.fecha_factura > "010194") and (a.factura = b.factura) and
(a.cod_cia = cod_cia) and a.status_t is null and
(b.cod_n = c.cod_n and b.cod_grupo = c.cod_grupo and
b.cod_tipo = c.cod_tipo and b.cod_sec = c.cod_sec) and
d.cod_emp_sec in (367,338) and d.tipo_doc = "PG" and
d.aplica_a = a.factura and d.status_t is null
FOREACH c_vende INTO vendedor.*,porciento,p_itbi,p_neto
DISPLAY " "
AT 19,14
DISPLAY "<< Reporte Generandose... Espere Por Favor >>"
AT 19,14
SELECT descrip_esp INTO vendedor.descrip_esp FROM intb00001
WHERE cod_n = vendedor.cod_n and cod_grupo = vendedor.cod_grupo and
cod_tipo = vendedor.cod_tipo and cod_sec = vendedor.cod_sec
SELECT nom1_emp,apell1_emp INTO vendedor.nombre_vend,vendedor.apellido_vend
FROM adtb00003 WHERE num_emp = vendedor.sec_vend
LET vendedor.vende = vendedor.sec_vend using "&&&&"
LET vendedor.codigo = vendedor.cod_n using "&",
vendedor.cod_grupo using "&",
vendedor.cod_tipo using "&&",
vendedor.cod_sec using "&&&"
LET valor_desc = vendedor.precio * (porciento/100)
LET vendedor.precio = vendedor.precio - valor_desc
LET vendedor.precio = vendedor.precio + vendedor.precio * (p_itbi / 100)
LET porc_rep = (vendedor.precio / p_neto) * 100
OUTPUT TO REPORT reporte_37 (vendedor.*,porc_rep,p_neto)
END FOREACH
FINISH REPORT reporte_37
CLEAR SCREEN
RUN "type C:\\archivo > %USPRINT%" END FUNCTION
REPORT reporte_37(x,porc,p_neto1)
DEFINE x RECORD
sec_vend SMALLINT,
fecha_factura DATE,
factura INTEGER,
cod_n SMALLINT,
cod_grupo SMALLINT,
cod_tipo SMALLINT,
cod_sec SMALLINT,
cantidad INTEGER ,
precio DECIMAL(10,2),
recibo INTEGER,
fecha DATE,
valor_c DECIMAL(12,2),
porc_venta DECIMAL(10,4),
descrip_esp CHAR(30),
nombre_vend CHAR(30),
apellido_vend CHAR(30) ,
vendedor CHAR(6) ,
codigo CHAR(7)
END RECORD
DEFINE nombre_mes CHAR(10)
DEFINE ii,total_clientes INTEGER
DEFINE doble_on CHAR(2)
DEFINE doble_off CHAR(2)
DEFINE negrillas_on CHAR(2)
DEFINE negrillas_off CHAR(2)
DEFINE comp_on CHAR(2)
DEFINE comp_off CHAR(2)
DEFINE doce CHAR(2)
DEFINE normal CHAR(2)
DEFINE hora CHAR(5)
DEFINE i SMALLINT
DEFINE porc DECIMAL(10,4)
DEFINE t_valor1,p_neto1,t_valor,valor DECIMAL(12,2)
OUTPUT
TOP MARGIN 0
LEFT MARGIN 0
BOTTOM MARGIN 4
ORDER BY x.vendedor,x.factura,x.codigo,x.recibo
FORMAT
PAGE HEADER
LET doble_on = ASCII 14
LET doble_off = ASCII 20
LET negrillas_on = ASCII 027, ASCII 98
LET negrillas_off = ASCII 027, ASCII 99
LET comp_on = ASCII 031
LET comp_off = ASCII 18
LET doce = ASCII 27, ASCII 77
LET normal = ASCII 27, ASCII 80
LET hora = time
LET lj = (160 - LENGTH(p_companias.nombre CLIPPED))/2
PRINT COLUMN 1, doce, negrillas_on
PRINT COLUMN 1, "ccprrp037",
COLUMN lj, p_companias.nombre CLIPPED,
COLUMN 153, "Pag. ",pageno using "###"
PRINT COLUMN 57, " Sistema de Cuentas Por Cobrar",
COLUMN 153, today using "dd/mm/yy"
PRINT COLUMN 57, " Liquidacion Comision Por Cobro Plan Ranchero",
COLUMN 156, hora
PRINT COLUMN 1, negrillas_off
PRINT COLUMN 1, "Del ",p_datos.fecha_in using "dd/mm/yy"," Al ",
p_datos.fecha_fin using "dd/mm/yy"
PRINT COLUMN 1, "-----------------------------------------------------",
"-----------------------------------------------------",
"------------------------------------------------------"
PRINT COLUMN 20, "VALOR",
COLUMN 80, "PORC.",
COLUMN 92, "VALOR",
COLUMN 101, "NUMERO",
COLUMN 126, "VALOR",
COLUMN 136, " VALOR"
PRINT COLUMN 1, "FECHA",
COLUMN 10, "FACTURA",
COLUMN 20, "FACTURA",
COLUMN 38, "PRODUCTO",
COLUMN 80, "REPRES",
COLUMN 92, "REPRES",
COLUMN 101, "RECIBO",
COLUMN 110, "FECHA",
COLUMN 126, "COBRADO" ,
COLUMN 136, "REPRESENTA",
COLUMN 152, "COMISION"
PRINT COLUMN 1, "-----------------------------------------------------",
"-----------------------------------------------------",
"------------------------------------------------------"
SKIP 1 LINE
BEFORE GROUP OF x.vendedor
LET t_valor = 0
LET t_valor1 = 0
PRINT COLUMN 1,doble_on,"VENDEDOR : ",
x.nombre_vend clipped," ",
x.apellido_vend clipped, doble_off
SKIP 1 LINE
BEFORE GROUP OF x.factura
PRINT COLUMN 1, x.fecha_factura using "dd/mm/yy",
COLUMN 10, x.factura using "&&&&&&",
COLUMN 20, p_neto1 using "###,###.##";
ON EVERY ROW
PRINT COLUMN 38, x.cod_n using "&","-",x.cod_grupo using "&","-",
x.cod_tipo using "&&","-",x.cod_sec using "&&&",
" ", x.descrip_esp CLIPPED,
COLUMN 80, porc USING "###.##",
COLUMN 91, x.precio USING "###,###.##";
IF x.recibo is not null THEN
IF x.valor_c < 0 THEN
LET x.valor_c = x.valor_c * -1
END IF
IF x.precio < x.valor_c THEN
LET valor = x.valor_c * (porc / 100)
ELSE
LET valor = x.valor_c
END IF
PRINT COLUMN 102, x.recibo using "&&&&&&",
COLUMN 110, x.fecha using "dd/mm/yy",
COLUMN 120, x.valor_c using "##,###,###.##",
COLUMN 134, valor USING "##,###,###.##",
COLUMN 148, valor * .01275 USING "##,###,###.##"
LET t_valor = (valor * .01275) + t_valor
LET t_valor1 = valor + t_valor1
ELSE
PRINT " "
END IF
AFTER GROUP OF x.vendedor
SKIP 1 LINE
PRINT COLUMN 1,negrillas_on
PRINT COLUMN 10, "TOTAL VENDEDOR --> ",
COLUMN 87, GROUP SUM(x.precio) USING "###,###,###.##",
COLUMN 134, t_valor1 USING "##,###,###.##",
COLUMN 148, t_valor USING "##,###,###.##"
PRINT COLUMN 1,negrillas_off
END REPORT