Commit inicial: fuentes MBS ERP (Genero 6) + .gitignore + docs/SETUP_PC_MBS.md
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
fgl2p temnrp000.4gl
|
||||
fgl2p teprrp001.4gl
|
||||
fgl2p teprrp002.4gl
|
||||
fgl2p teprrp003.4gl
|
||||
fgl2p teprrp004.4gl
|
||||
fgl2p teprrp005.4gl
|
||||
fgl2p teprrp006.4gl
|
||||
fgl2p teprrp007.4gl
|
||||
fgl2p teprrp008.4gl
|
||||
fgl2p teprrp009.4gl
|
||||
fgl2p teprrp010.4gl
|
||||
fgl2p teprrp011.4gl
|
||||
fgl2p teprrp012.4gl
|
||||
fgl2p teprrp013.4gl
|
||||
fgl2p teprrp014.4gl
|
||||
|
||||
fgl2p -o temnrp000.42r temnrp000.42m seg000.42m msg.42m msgrp000.42m teprrp001.42m teprrp002.42m teprrp003.42m teprrp004.42m teprrp005.42m teprrp006.42m teprrp007.42m teprrp008.42m teprrp009.42m teprrp010.42m teprrp011.42m teprrp012.42m teprrp013.42m teprrp014.42m
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,59 @@
|
||||
database rayovac@demo_se
|
||||
screen size 24 by 80
|
||||
{
|
||||
cuenta_no [f000 ]
|
||||
cod_cia [f001 ]
|
||||
tipo_doc [a0]
|
||||
num_doc [f002 ]
|
||||
tipo_cliente [f003 ]
|
||||
sec_cliente [f004 ]
|
||||
cod_emp [f005 ]
|
||||
cod_emp_sec [f006 ]
|
||||
fecha_orig [f007 ]
|
||||
fecha_ven [f008 ]
|
||||
aplica_a [f009 ]
|
||||
banco [f010 ]
|
||||
num_cheque [f011 ]
|
||||
valor [f012 ]
|
||||
valor_efectivo [f013 ]
|
||||
valor_cheque [f014 ]
|
||||
costo [f015 ]
|
||||
monto_desc [f016 ]
|
||||
status_t [a]
|
||||
us_crea [f017 ]
|
||||
}
|
||||
screen
|
||||
{
|
||||
fech_crea [f018 ]
|
||||
us_mod [f019 ]
|
||||
fech_mod [f020 ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
cctb00001
|
||||
attributes
|
||||
f000 = cctb00001.cuenta_no;
|
||||
f001 = cctb00001.cod_cia;
|
||||
a0 = cctb00001.tipo_doc;
|
||||
f002 = cctb00001.num_doc;
|
||||
f003 = cctb00001.tipo_cliente;
|
||||
f004 = cctb00001.sec_cliente;
|
||||
f005 = cctb00001.cod_emp;
|
||||
f006 = cctb00001.cod_emp_sec;
|
||||
f007 = cctb00001.fecha_orig;
|
||||
f008 = cctb00001.fecha_ven;
|
||||
f009 = cctb00001.aplica_a;
|
||||
f010 = cctb00001.banco;
|
||||
f011 = cctb00001.num_cheque;
|
||||
f012 = cctb00001.valor;
|
||||
f013 = cctb00001.valor_efectivo;
|
||||
f014 = cctb00001.valor_cheque;
|
||||
f015 = cctb00001.costo;
|
||||
f016 = cctb00001.monto_desc;
|
||||
a = cctb00001.status_t;
|
||||
f017 = cctb00001.us_crea;
|
||||
|
||||
f018 = cctb00001.fech_crea;
|
||||
f019 = cctb00001.us_mod;
|
||||
f020 = cctb00001.fech_mod;
|
||||
end
|
||||
@@ -0,0 +1,4 @@
|
||||
select count(*), cheque_no, banco, codigo
|
||||
from tetb00006
|
||||
group by 2,3,4
|
||||
order by 1 desc
|
||||
@@ -0,0 +1,60 @@
|
||||
database rayovac@demo_se end
|
||||
DEFINE VARIABLE negrillas_on CHAR(2)
|
||||
VARIABLE negrillas_off CHAR(2)
|
||||
END
|
||||
OUTPUT REPORT TO "jh" END
|
||||
SELECT
|
||||
a.sec_vend,
|
||||
a.cod_n,
|
||||
a.cod_grupo,
|
||||
a.cod_tipo,
|
||||
a.cod_sec,
|
||||
a.porc_ventas,
|
||||
a.porc_cobros,
|
||||
b.nom1_emp,
|
||||
b.apell1_emp,
|
||||
c.descrip_esp
|
||||
FROM cctb00008 a,adtb00003 b,intb00001 c
|
||||
WHERE a.sec_vend = b.num_emp AND (b.status_t IS NULL OR b.status_t = "I") AND
|
||||
a.cod_n = c.cod_n AND
|
||||
a.cod_grupo = c.cod_grupo AND
|
||||
a.cod_tipo = c.cod_tipo AND
|
||||
a.cod_sec = c.cod_sec
|
||||
ORDER BY 1,2,3,4,5
|
||||
END
|
||||
FORMAT
|
||||
PAGE HEADER
|
||||
LET negrillas_on = ASCII 27, ASCII 69
|
||||
LET negrillas_off = ASCII 27, ASCII 70
|
||||
PRINT COLUMN 1, "comision.ace",
|
||||
COLUMN 19, "R A Y .O. V A C D O M I N I C A N A, S. A.",
|
||||
COLUMN 70, "Pag. ",pageno USING "<<<"
|
||||
PRINT COLUMN 19, " VALIDACION COMISIONES",
|
||||
COLUMN 70, TODAY USING "DD/MM/YY"
|
||||
PRINT COLUMN 70, TIME
|
||||
SKIP 1 LINE
|
||||
PRINT "----------------------------------------------------------------",
|
||||
"------------------------------"
|
||||
PRINT COLUMN 40, "PORCENTAJE",
|
||||
COLUMN 60, "PORCENTAJE"
|
||||
|
||||
PRINT COLUMN 1, "ARTICULOS",
|
||||
COLUMN 40, "VENTAS",
|
||||
COLUMN 60, "COBROS"
|
||||
PRINT "----------------------------------------------------------------",
|
||||
"------------------------------"
|
||||
|
||||
BEFORE GROUP OF 1
|
||||
PRINT negrillas_on
|
||||
PRINT "VENDEDOR:",sec_vend using "<<<"," ",nom1_emp CLIPPED," ",apell1_emp
|
||||
PRINT negrillas_off
|
||||
|
||||
ON EVERY ROW
|
||||
PRINT COLUMN 1,cod_n USING "&","-",cod_grupo USING "&","-",cod_tipo USING "&&",
|
||||
"-",cod_sec USING "&&&"," ",descrip_esp,
|
||||
COLUMN 40,porc_ventas USING "###.####",
|
||||
COLUMN 60,porc_cobros USING "###.####"
|
||||
AFTER GROUP OF 2
|
||||
PRINT "----------------------------------------------------------------",
|
||||
"------------------------------"
|
||||
END
|
||||
@@ -0,0 +1,7 @@
|
||||
cat /dev/null > tablaste
|
||||
for i in `cat listatb`
|
||||
do
|
||||
echo $i
|
||||
dbschema -d rayovac -t $i >> tablaste
|
||||
done
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
tetb00001
|
||||
tetb00002
|
||||
tetb00003
|
||||
tetb00004
|
||||
tetb00005
|
||||
tetb00006
|
||||
tetb00007
|
||||
tetb00008
|
||||
@@ -0,0 +1,66 @@
|
||||
b
|
||||
teprrp011 R A Y . O . V A C D O M I N I C A N A, S. A. Pag. 1
|
||||
Sistema de Tesoreria 21/05/2001
|
||||
Panoramico de Cash Flow Real 11:43
|
||||
Expresados Em Miles (1000)
|
||||
|
||||
FECHA : Desde OCTUBRE Del 2000 Hasta MAYO Del 2001
|
||||
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
Partida OCTUBRE NOVIEMBRE DICIEMBRE ENERO FEBRERO MARZO ABRIL MAYO JUNIO JULIO AGOSTO SEPTIEMBRE TOTALES
|
||||
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
c
|
||||
b INGRESOSc
|
||||
b ========c
|
||||
|
||||
1 COBROS LOCALES 17,566| 16,389| 18,522| 14,510| 18,892| 19,762| 8,055| 9,912| | | | | 123,606|
|
||||
2 COBROS EXPORTACION 2,079| 1,007| 2,530| 3,550| 3,557| 2,561| 3,020| 3| | | | | 18,308|
|
||||
3 PRESTAMOS BANCARIOS | | | | | | | | | | | | |
|
||||
4 OTROS INGRESOS 441| 192| 240| 29| 166| 1,350| 113| 120| | | | | 2,650|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
TOTAL INGRESOS 20,086| 17,588| 21,291| 18,089| 22,615| 23,674| 11,187| 10,035| | | | | 144,565|
|
||||
b DESEMBOLSOSc
|
||||
b ===========c
|
||||
b DESEMBOLSOS INTERNACIONALES (TASA UTILIZADA RD$16.50)c
|
||||
|
||||
5 RAYOVAC CORPORATION | | | | | | | | | | | | |
|
||||
6 PALMERA CORP. | | | | | | | | | | | | |
|
||||
7 MARBLE CO. OF JAPAN | | | | | | | | | | | | |
|
||||
8 MITSUI & CO. LTD. | | | | | | | | | | | | |
|
||||
9 RAYOVAC DE MEXICO,S. A.DE C.V. | | 72| | 761| | | | | | | | 833|
|
||||
10 RAYOVAC DE GUATEMALA, S. A. | | | | 261| | | | | | | | 261|
|
||||
11 CIA. MINERA AUTLAN, S. A. | | | | | | | | | | | | |
|
||||
13 OTROS PROVEED. INTERNACIONALES 328| 563| 886| 817| 596| 79| | | | | | | 3,269|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
TOTAL DESEMBOLSOS INTERN. 328| 563| 958| 817| 1,618| 79| | | | | | | 4,363|
|
||||
b DESEMBOLSOS LOCALESc
|
||||
|
||||
14 ENVASES ANTILLANOS | 147| | | 456| | | | | | | | 603|
|
||||
15 ENVASES TROPICALES | | 2,668| 198| | | | | | | | | 2,867|
|
||||
16 PROVEEDORES LOCALES 1,233| 546| 1,683| 525| 860| 360| | | | | | | 5,206|
|
||||
17 IMPUESTOS ADUANA 2,894| 2,491| 1,854| 3,143| 1,673| 61| | | | | | | 12,116|
|
||||
18 ITBIS 1,200| 260| 1,453| 1,633| | | | | | | | | 4,545|
|
||||
19 COOPERATIVA Y CASA CLUB 309| 341| 145| 261| 139| 2| | | | | | | 1,197|
|
||||
20 DESEMBOL.GENERALES OPERATIVOS 1,018| 1,231| 3,519| 890| 932| 321| | | | | | | 7,910|
|
||||
21 FLETES 154| 127| 237| 134| 122| 45| | | | | | | 818|
|
||||
22 INTERES. BCOS. Y COMIS.IMPORT. | | | | | | | | | | | | |
|
||||
23 PUBLICIDAD Y PROMOCION 637| 740| 1,663| 1,134| 928| 501| | | | | | | 5,604|
|
||||
24 OTROS LOCALES, INCL.ANTIC.ISR 1,347| | | 8,492| 1,639| | | | | | | | 11,478|
|
||||
25 NOMINAS 1,228| 4,403| 2,982| 1,206| 974| 662| | | | | | | 11,454|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
TOTAL DESEMBOLSOS LOCALES 10,018| 10,286| 16,203| 17,617| 7,724| 1,950| | | | | | | 63,798|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
TOTAL DESEMBOLSOS 10,346| 10,849| 17,161| 18,434| 9,341| 2,030| | | | | | | 68,161|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
FLUJO OPERATIVO 9,740| 6,739| 4,130| -345| 13,274| 21,644| 11,187| 10,035| | | | | 76,404|
|
||||
BALANCE INICIAL | 9,740| 16,479| 20,609| 20,265| 33,538| 55,182| 66,369| 76,404| 76,404| 76,404| 76,404| |
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
BALANCE FINAL 9,740| 16,479| 20,609| 20,265| 33,538| 55,182| 66,369| 76,404| 76,404| 76,404| 76,404| 76,404| 76,404|
|
||||
c
|
||||
c
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,66 @@
|
||||
b
|
||||
teprrp011 R A Y . O . V A C D O M I N I C A N A, S. A. Pag. 1
|
||||
Sistema de Tesoreria 16/05/2001
|
||||
Panoramico de Cash Flow Real 08:28
|
||||
Expresados Em Miles (1000)
|
||||
|
||||
FECHA: De OCTUBRE A SEPTIEMBRE Del 2001
|
||||
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
Partida OCTUBRE NOVIEMBRE DICIEMBRE ENERO FEBRERO MARZO ABRIL MAYO JUNIO JULIO AGOSTO SEPTIEMBRE TOTALES
|
||||
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
c
|
||||
b INGRESOSc
|
||||
b ========c
|
||||
|
||||
1 COBROS LOCALES 17,566| 16,389| 18,522| 14,510| 18,892| 19,762| 8,055| 9,792| | | | | 123,486|
|
||||
2 COBROS EXPORTACION 2,079| 1,007| 2,530| 3,550| 3,557| 2,561| 3,020| 3| | | | | 18,308|
|
||||
3 PRESTAMOS BANCARIOS | | | | | | | | | | | | |
|
||||
4 OTROS INGRESOS 441| 192| 240| 29| 166| 1,350| 113| 106| | | | | 2,636|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
TOTAL INGRESOS 20,086| 17,588| 21,291| 18,089| 22,615| 23,674| 11,187| 9,900| | | | | 144,431|
|
||||
b DESEMBOLSOSc
|
||||
b ===========c
|
||||
b DESEMBOLSOS INTERNACIONALES (TASA UTILIZADA RD$11.00)c
|
||||
|
||||
5 RAYOVAC CORPORATION | | | | | | | | | | | | |
|
||||
6 PALMERA CORP. | | | | | | | | | | | | |
|
||||
7 MARBLE CO. OF JAPAN | | | | | | | | | | | | |
|
||||
8 MITSUI & CO. LTD. | | | | | | | | | | | | |
|
||||
9 RAYOVAC DE MEXICO,S. A.DE C.V. | | 48| | 507| | | | | | | | 555|
|
||||
10 RAYOVAC DE GUATEMALA, S. A. | | | | 174| | | | | | | | 174|
|
||||
11 CIA. MINERA AUTLAN, S. A. | | | | | | | | | | | | |
|
||||
13 OTROS PROVEED. INTERNACIONALES 218| 375| 591| 544| 397| 53| | | | | | | 2,179|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
TOTAL DESEMBOLSOS INTERN. 218| 375| 639| 544| 1,079| 53| | | | | | | 2,908|
|
||||
b DESEMBOLSOS LOCALESc
|
||||
|
||||
14 ENVASES ANTILLANOS | 147| | | 456| | | | | | | | 603|
|
||||
15 ENVASES TROPICALES | | 2,668| 198| | | | | | | | | 2,867|
|
||||
16 PROVEEDORES LOCALES 1,233| 546| 1,683| 525| 860| 360| | | | | | | 5,206|
|
||||
17 IMPUESTOS ADUANA 2,894| 2,491| 1,854| 3,143| 1,673| 61| | | | | | | 12,116|
|
||||
18 ITBIS 1,200| 260| 1,453| 1,633| | | | | | | | | 4,545|
|
||||
19 COOPERATIVA Y CASA CLUB 309| 341| 145| 261| 139| 2| | | | | | | 1,197|
|
||||
20 DESEMBOL.GENERALES OPERATIVOS 1,018| 1,231| 3,519| 890| 932| 321| | | | | | | 7,910|
|
||||
21 FLETES 154| 127| 237| 134| 122| 45| | | | | | | 818|
|
||||
22 INTERES. BCOS. Y COMIS.IMPORT. | | | | | | | | | | | | |
|
||||
23 PUBLICIDAD Y PROMOCION 637| 740| 1,663| 1,134| 928| 501| | | | | | | 5,604|
|
||||
24 OTROS LOCALES, INCL.ANTIC.ISR 1,347| | | 8,492| 1,639| | | | | | | | 11,478|
|
||||
25 NOMINAS 1,228| 4,403| 2,982| 1,206| 974| 662| | | | | | | 11,454|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
TOTAL DESEMBOLSOS LOCALES 10,018| 10,286| 16,203| 17,617| 7,724| 1,950| | | | | | | 63,798|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
TOTAL DESEMBOLSOS 10,237| 10,661| 16,842| 18,161| 8,802| 2,003| | | | | | | 66,707|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
FLUJO OPERATIVO 9,849| 6,927| 4,450| -73| 13,813| 21,671| 11,187| 9,900| | | | | 77,724|
|
||||
BALANCE INICIAL | 9,849| 16,776| 21,226| 21,153| 34,966| 56,636| 67,824| 77,724| 77,724| 77,724| 77,724| |
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
BALANCE FINAL 9,849| 16,776| 21,226| 21,153| 34,966| 56,636| 67,824| 77,724| 77,724| 77,724| 77,724| 77,724| 21,226|
|
||||
c
|
||||
c
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,138 @@
|
||||
DBSCHEMA Schema Utility INFORMIX-SQL Version 7.11.UC1
|
||||
Copyright (C) Informix Software, Inc., 1984-1995
|
||||
Software Serial Number AAB#J427560
|
||||
{ TABLE "sysinfo".tetb00001 row size = 71 number of columns = 11 index size = 12
|
||||
}
|
||||
create table "sysinfo".tetb00001
|
||||
(
|
||||
num_doc serial not null constraint "usainf01".n351_88,
|
||||
cuenta_no char(8),
|
||||
cta_banco char(13),
|
||||
procedencia smallint,
|
||||
fecha date,
|
||||
monto decimal(12,2),
|
||||
status_t char(1),
|
||||
us_crea char(9),
|
||||
fech_crea datetime year to minute,
|
||||
us_mod char(9),
|
||||
fech_mod datetime year to minute
|
||||
);
|
||||
revoke all on "sysinfo".tetb00001 from "public";
|
||||
|
||||
create unique index "sysinfo".ix1278_1 on "sysinfo".tetb00001 (num_doc);
|
||||
|
||||
|
||||
{ TABLE "sysinfo".tetb00002 row size = 65 number of columns = 7 index size = 9 }
|
||||
create table "sysinfo".tetb00002
|
||||
(
|
||||
procedencia smallint not null constraint "usainf01".n352_89,
|
||||
descripcion char(30),
|
||||
status_t char(1),
|
||||
us_crea char(9),
|
||||
fech_crea datetime year to minute,
|
||||
us_mod char(9),
|
||||
fech_mod datetime year to minute
|
||||
);
|
||||
revoke all on "sysinfo".tetb00002 from "public";
|
||||
|
||||
create unique index "sysinfo".ix367_1 on "sysinfo".tetb00002 (procedencia);
|
||||
|
||||
|
||||
{ TABLE "sysinfo".tetb00003 row size = 67 number of columns = 8 index size = 0 }
|
||||
create table "sysinfo".tetb00003
|
||||
(
|
||||
codigo smallint,
|
||||
descripcion char(30),
|
||||
tipo char(2),
|
||||
status_t char(1),
|
||||
us_crea char(9),
|
||||
fech_crea datetime year to minute,
|
||||
us_mod char(9),
|
||||
fech_mod datetime year to minute
|
||||
);
|
||||
revoke all on "sysinfo".tetb00003 from "public";
|
||||
|
||||
|
||||
{ TABLE "sysinfo".tetb00004 row size = 51 number of columns = 9 index size = 0 }
|
||||
create table "sysinfo".tetb00004
|
||||
(
|
||||
codigo integer,
|
||||
ano integer,
|
||||
mes smallint,
|
||||
valor decimal(14,2),
|
||||
status_t char(1),
|
||||
us_crea char(9),
|
||||
fech_crea datetime year to minute,
|
||||
us_mod char(9),
|
||||
fech_mod datetime year to minute
|
||||
);
|
||||
revoke all on "sysinfo".tetb00004 from "public";
|
||||
|
||||
|
||||
{ TABLE "sysinfo".tetb00005 row size = 51 number of columns = 9 index size = 0 }
|
||||
create table "sysinfo".tetb00005
|
||||
(
|
||||
codigo integer,
|
||||
ano integer,
|
||||
mes smallint,
|
||||
valor_real decimal(14,2),
|
||||
status_t char(1),
|
||||
us_crea char(9),
|
||||
fech_crea datetime year to minute,
|
||||
us_mod char(9),
|
||||
fech_mod datetime year to minute
|
||||
);
|
||||
revoke all on "sysinfo".tetb00005 from "public";
|
||||
|
||||
|
||||
{ TABLE "sysinfo".tetb00006 row size = 49 number of columns = 8 index size = 12 }
|
||||
create table "sysinfo".tetb00006
|
||||
(
|
||||
cheque_no integer,
|
||||
banco char(8),
|
||||
codigo integer,
|
||||
status_t char(1),
|
||||
us_crea char(9),
|
||||
fech_crea datetime year to minute,
|
||||
us_mod char(9),
|
||||
fech_mod datetime year to minute
|
||||
);
|
||||
revoke all on "sysinfo".tetb00006 from "public";
|
||||
|
||||
create index "sysinfo".ix495_1 on "sysinfo".tetb00006 (cheque_no);
|
||||
|
||||
|
||||
{ TABLE "sysinfo".tetb00007 row size = 51 number of columns = 8 index size = 0 }
|
||||
create table "sysinfo".tetb00007
|
||||
(
|
||||
ano integer,
|
||||
valor decimal(12,2),
|
||||
valor1 decimal(12,2),
|
||||
status_t char(1),
|
||||
us_crea char(9),
|
||||
fech_crea datetime year to minute,
|
||||
us_mod char(9),
|
||||
fech_mod datetime year to minute
|
||||
);
|
||||
revoke all on "sysinfo".tetb00007 from "public";
|
||||
|
||||
|
||||
{ TABLE "sysinfo".tetb00008 row size = 50 number of columns = 9 index size = 0 }
|
||||
create table "sysinfo".tetb00008
|
||||
(
|
||||
sec_vend smallint,
|
||||
fecha date,
|
||||
cod_n smallint,
|
||||
porc_cobros1 decimal(8,2),
|
||||
porc_cobros2 decimal(8,2),
|
||||
us_crea char(9),
|
||||
fecha_crea datetime year to minute,
|
||||
us_mod char(9),
|
||||
fecha_mod datetime year to minute
|
||||
);
|
||||
revoke all on "sysinfo".tetb00008 from "public";
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
fgl2p temncs000.4gl
|
||||
fgl2p teprcs001.4gl
|
||||
fgl2p teprcs002.4gl
|
||||
|
||||
fgl2p -o temncs000.42r temncs000.42m teprcs001.42m teprcs002.42m seg000.42m msg.42m msgrp000.42m
|
||||
@@ -0,0 +1,17 @@
|
||||
fgl2p temnrp000.4gl
|
||||
fgl2p teprrp001.4gl
|
||||
fgl2p teprrp002.4gl
|
||||
fgl2p teprrp003.4gl
|
||||
fgl2p teprrp004.4gl
|
||||
fgl2p teprrp005.4gl
|
||||
fgl2p teprrp006.4gl
|
||||
fgl2p teprrp007.4gl
|
||||
fgl2p teprrp008.4gl
|
||||
fgl2p teprrp009.4gl
|
||||
fgl2p teprrp010.4gl
|
||||
fgl2p teprrp011.4gl
|
||||
fgl2p teprrp012.4gl
|
||||
fgl2p teprrp013.4gl
|
||||
fgl2p teprrp014.4gl
|
||||
|
||||
fgl2p -o temnrp000.42r temnrp000.42m seg000.42m msg.42m msgrp000.42m teprrp001.42m teprrp002.42m teprrp003.42m teprrp004.42m teprrp005.42m teprrp006.42m teprrp007.42m teprrp008.42m teprrp009.42m teprrp010.42m teprrp011.42m teprrp012.42m teprrp013.42m teprrp014.42m
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,59 @@
|
||||
database rayovac@demo_se
|
||||
screen size 24 by 80
|
||||
{
|
||||
cuenta_no [f000 ]
|
||||
cod_cia [f001 ]
|
||||
tipo_doc [a0]
|
||||
num_doc [f002 ]
|
||||
tipo_cliente [f003 ]
|
||||
sec_cliente [f004 ]
|
||||
cod_emp [f005 ]
|
||||
cod_emp_sec [f006 ]
|
||||
fecha_orig [f007 ]
|
||||
fecha_ven [f008 ]
|
||||
aplica_a [f009 ]
|
||||
banco [f010 ]
|
||||
num_cheque [f011 ]
|
||||
valor [f012 ]
|
||||
valor_efectivo [f013 ]
|
||||
valor_cheque [f014 ]
|
||||
costo [f015 ]
|
||||
monto_desc [f016 ]
|
||||
status_t [a]
|
||||
us_crea [f017 ]
|
||||
}
|
||||
screen
|
||||
{
|
||||
fech_crea [f018 ]
|
||||
us_mod [f019 ]
|
||||
fech_mod [f020 ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
cctb00001
|
||||
attributes
|
||||
f000 = cctb00001.cuenta_no;
|
||||
f001 = cctb00001.cod_cia;
|
||||
a0 = cctb00001.tipo_doc;
|
||||
f002 = cctb00001.num_doc;
|
||||
f003 = cctb00001.tipo_cliente;
|
||||
f004 = cctb00001.sec_cliente;
|
||||
f005 = cctb00001.cod_emp;
|
||||
f006 = cctb00001.cod_emp_sec;
|
||||
f007 = cctb00001.fecha_orig;
|
||||
f008 = cctb00001.fecha_ven;
|
||||
f009 = cctb00001.aplica_a;
|
||||
f010 = cctb00001.banco;
|
||||
f011 = cctb00001.num_cheque;
|
||||
f012 = cctb00001.valor;
|
||||
f013 = cctb00001.valor_efectivo;
|
||||
f014 = cctb00001.valor_cheque;
|
||||
f015 = cctb00001.costo;
|
||||
f016 = cctb00001.monto_desc;
|
||||
a = cctb00001.status_t;
|
||||
f017 = cctb00001.us_crea;
|
||||
|
||||
f018 = cctb00001.fech_crea;
|
||||
f019 = cctb00001.us_mod;
|
||||
f020 = cctb00001.fech_mod;
|
||||
end
|
||||
@@ -0,0 +1,4 @@
|
||||
select count(*), cheque_no, banco, codigo
|
||||
from tetb00006
|
||||
group by 2,3,4
|
||||
order by 1 desc
|
||||
@@ -0,0 +1,60 @@
|
||||
database rayovac@demo_se end
|
||||
DEFINE VARIABLE negrillas_on CHAR(2)
|
||||
VARIABLE negrillas_off CHAR(2)
|
||||
END
|
||||
OUTPUT REPORT TO "jh" END
|
||||
SELECT
|
||||
a.sec_vend,
|
||||
a.cod_n,
|
||||
a.cod_grupo,
|
||||
a.cod_tipo,
|
||||
a.cod_sec,
|
||||
a.porc_ventas,
|
||||
a.porc_cobros,
|
||||
b.nom1_emp,
|
||||
b.apell1_emp,
|
||||
c.descrip_esp
|
||||
FROM cctb00008 a,adtb00003 b,intb00001 c
|
||||
WHERE a.sec_vend = b.num_emp AND (b.status_t IS NULL OR b.status_t = "I") AND
|
||||
a.cod_n = c.cod_n AND
|
||||
a.cod_grupo = c.cod_grupo AND
|
||||
a.cod_tipo = c.cod_tipo AND
|
||||
a.cod_sec = c.cod_sec
|
||||
ORDER BY 1,2,3,4,5
|
||||
END
|
||||
FORMAT
|
||||
PAGE HEADER
|
||||
LET negrillas_on = ASCII 27, ASCII 69
|
||||
LET negrillas_off = ASCII 27, ASCII 70
|
||||
PRINT COLUMN 1, "comision.ace",
|
||||
COLUMN 19, "R A Y .O. V A C D O M I N I C A N A, S. A.",
|
||||
COLUMN 70, "Pag. ",pageno USING "<<<"
|
||||
PRINT COLUMN 19, " VALIDACION COMISIONES",
|
||||
COLUMN 70, TODAY USING "DD/MM/YY"
|
||||
PRINT COLUMN 70, TIME
|
||||
SKIP 1 LINE
|
||||
PRINT "----------------------------------------------------------------",
|
||||
"------------------------------"
|
||||
PRINT COLUMN 40, "PORCENTAJE",
|
||||
COLUMN 60, "PORCENTAJE"
|
||||
|
||||
PRINT COLUMN 1, "ARTICULOS",
|
||||
COLUMN 40, "VENTAS",
|
||||
COLUMN 60, "COBROS"
|
||||
PRINT "----------------------------------------------------------------",
|
||||
"------------------------------"
|
||||
|
||||
BEFORE GROUP OF 1
|
||||
PRINT negrillas_on
|
||||
PRINT "VENDEDOR:",sec_vend using "<<<"," ",nom1_emp CLIPPED," ",apell1_emp
|
||||
PRINT negrillas_off
|
||||
|
||||
ON EVERY ROW
|
||||
PRINT COLUMN 1,cod_n USING "&","-",cod_grupo USING "&","-",cod_tipo USING "&&",
|
||||
"-",cod_sec USING "&&&"," ",descrip_esp,
|
||||
COLUMN 40,porc_ventas USING "###.####",
|
||||
COLUMN 60,porc_cobros USING "###.####"
|
||||
AFTER GROUP OF 2
|
||||
PRINT "----------------------------------------------------------------",
|
||||
"------------------------------"
|
||||
END
|
||||
@@ -0,0 +1,7 @@
|
||||
cat /dev/null > tablaste
|
||||
for i in `cat listatb`
|
||||
do
|
||||
echo $i
|
||||
dbschema -d rayovac -t $i >> tablaste
|
||||
done
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
tetb00001
|
||||
tetb00002
|
||||
tetb00003
|
||||
tetb00004
|
||||
tetb00005
|
||||
tetb00006
|
||||
tetb00007
|
||||
tetb00008
|
||||
@@ -0,0 +1,66 @@
|
||||
b
|
||||
teprrp011 R A Y . O . V A C D O M I N I C A N A, S. A. Pag. 1
|
||||
Sistema de Tesoreria 21/05/2001
|
||||
Panoramico de Cash Flow Real 11:43
|
||||
Expresados Em Miles (1000)
|
||||
|
||||
FECHA : Desde OCTUBRE Del 2000 Hasta MAYO Del 2001
|
||||
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
Partida OCTUBRE NOVIEMBRE DICIEMBRE ENERO FEBRERO MARZO ABRIL MAYO JUNIO JULIO AGOSTO SEPTIEMBRE TOTALES
|
||||
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
c
|
||||
b INGRESOSc
|
||||
b ========c
|
||||
|
||||
1 COBROS LOCALES 17,566| 16,389| 18,522| 14,510| 18,892| 19,762| 8,055| 9,912| | | | | 123,606|
|
||||
2 COBROS EXPORTACION 2,079| 1,007| 2,530| 3,550| 3,557| 2,561| 3,020| 3| | | | | 18,308|
|
||||
3 PRESTAMOS BANCARIOS | | | | | | | | | | | | |
|
||||
4 OTROS INGRESOS 441| 192| 240| 29| 166| 1,350| 113| 120| | | | | 2,650|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
TOTAL INGRESOS 20,086| 17,588| 21,291| 18,089| 22,615| 23,674| 11,187| 10,035| | | | | 144,565|
|
||||
b DESEMBOLSOSc
|
||||
b ===========c
|
||||
b DESEMBOLSOS INTERNACIONALES (TASA UTILIZADA RD$16.50)c
|
||||
|
||||
5 RAYOVAC CORPORATION | | | | | | | | | | | | |
|
||||
6 PALMERA CORP. | | | | | | | | | | | | |
|
||||
7 MARBLE CO. OF JAPAN | | | | | | | | | | | | |
|
||||
8 MITSUI & CO. LTD. | | | | | | | | | | | | |
|
||||
9 RAYOVAC DE MEXICO,S. A.DE C.V. | | 72| | 761| | | | | | | | 833|
|
||||
10 RAYOVAC DE GUATEMALA, S. A. | | | | 261| | | | | | | | 261|
|
||||
11 CIA. MINERA AUTLAN, S. A. | | | | | | | | | | | | |
|
||||
13 OTROS PROVEED. INTERNACIONALES 328| 563| 886| 817| 596| 79| | | | | | | 3,269|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
TOTAL DESEMBOLSOS INTERN. 328| 563| 958| 817| 1,618| 79| | | | | | | 4,363|
|
||||
b DESEMBOLSOS LOCALESc
|
||||
|
||||
14 ENVASES ANTILLANOS | 147| | | 456| | | | | | | | 603|
|
||||
15 ENVASES TROPICALES | | 2,668| 198| | | | | | | | | 2,867|
|
||||
16 PROVEEDORES LOCALES 1,233| 546| 1,683| 525| 860| 360| | | | | | | 5,206|
|
||||
17 IMPUESTOS ADUANA 2,894| 2,491| 1,854| 3,143| 1,673| 61| | | | | | | 12,116|
|
||||
18 ITBIS 1,200| 260| 1,453| 1,633| | | | | | | | | 4,545|
|
||||
19 COOPERATIVA Y CASA CLUB 309| 341| 145| 261| 139| 2| | | | | | | 1,197|
|
||||
20 DESEMBOL.GENERALES OPERATIVOS 1,018| 1,231| 3,519| 890| 932| 321| | | | | | | 7,910|
|
||||
21 FLETES 154| 127| 237| 134| 122| 45| | | | | | | 818|
|
||||
22 INTERES. BCOS. Y COMIS.IMPORT. | | | | | | | | | | | | |
|
||||
23 PUBLICIDAD Y PROMOCION 637| 740| 1,663| 1,134| 928| 501| | | | | | | 5,604|
|
||||
24 OTROS LOCALES, INCL.ANTIC.ISR 1,347| | | 8,492| 1,639| | | | | | | | 11,478|
|
||||
25 NOMINAS 1,228| 4,403| 2,982| 1,206| 974| 662| | | | | | | 11,454|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
TOTAL DESEMBOLSOS LOCALES 10,018| 10,286| 16,203| 17,617| 7,724| 1,950| | | | | | | 63,798|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
TOTAL DESEMBOLSOS 10,346| 10,849| 17,161| 18,434| 9,341| 2,030| | | | | | | 68,161|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
FLUJO OPERATIVO 9,740| 6,739| 4,130| -345| 13,274| 21,644| 11,187| 10,035| | | | | 76,404|
|
||||
BALANCE INICIAL | 9,740| 16,479| 20,609| 20,265| 33,538| 55,182| 66,369| 76,404| 76,404| 76,404| 76,404| |
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
BALANCE FINAL 9,740| 16,479| 20,609| 20,265| 33,538| 55,182| 66,369| 76,404| 76,404| 76,404| 76,404| 76,404| 76,404|
|
||||
c
|
||||
c
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,66 @@
|
||||
b
|
||||
teprrp011 R A Y . O . V A C D O M I N I C A N A, S. A. Pag. 1
|
||||
Sistema de Tesoreria 16/05/2001
|
||||
Panoramico de Cash Flow Real 08:28
|
||||
Expresados Em Miles (1000)
|
||||
|
||||
FECHA: De OCTUBRE A SEPTIEMBRE Del 2001
|
||||
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
Partida OCTUBRE NOVIEMBRE DICIEMBRE ENERO FEBRERO MARZO ABRIL MAYO JUNIO JULIO AGOSTO SEPTIEMBRE TOTALES
|
||||
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
c
|
||||
b INGRESOSc
|
||||
b ========c
|
||||
|
||||
1 COBROS LOCALES 17,566| 16,389| 18,522| 14,510| 18,892| 19,762| 8,055| 9,792| | | | | 123,486|
|
||||
2 COBROS EXPORTACION 2,079| 1,007| 2,530| 3,550| 3,557| 2,561| 3,020| 3| | | | | 18,308|
|
||||
3 PRESTAMOS BANCARIOS | | | | | | | | | | | | |
|
||||
4 OTROS INGRESOS 441| 192| 240| 29| 166| 1,350| 113| 106| | | | | 2,636|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
TOTAL INGRESOS 20,086| 17,588| 21,291| 18,089| 22,615| 23,674| 11,187| 9,900| | | | | 144,431|
|
||||
b DESEMBOLSOSc
|
||||
b ===========c
|
||||
b DESEMBOLSOS INTERNACIONALES (TASA UTILIZADA RD$11.00)c
|
||||
|
||||
5 RAYOVAC CORPORATION | | | | | | | | | | | | |
|
||||
6 PALMERA CORP. | | | | | | | | | | | | |
|
||||
7 MARBLE CO. OF JAPAN | | | | | | | | | | | | |
|
||||
8 MITSUI & CO. LTD. | | | | | | | | | | | | |
|
||||
9 RAYOVAC DE MEXICO,S. A.DE C.V. | | 48| | 507| | | | | | | | 555|
|
||||
10 RAYOVAC DE GUATEMALA, S. A. | | | | 174| | | | | | | | 174|
|
||||
11 CIA. MINERA AUTLAN, S. A. | | | | | | | | | | | | |
|
||||
13 OTROS PROVEED. INTERNACIONALES 218| 375| 591| 544| 397| 53| | | | | | | 2,179|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
TOTAL DESEMBOLSOS INTERN. 218| 375| 639| 544| 1,079| 53| | | | | | | 2,908|
|
||||
b DESEMBOLSOS LOCALESc
|
||||
|
||||
14 ENVASES ANTILLANOS | 147| | | 456| | | | | | | | 603|
|
||||
15 ENVASES TROPICALES | | 2,668| 198| | | | | | | | | 2,867|
|
||||
16 PROVEEDORES LOCALES 1,233| 546| 1,683| 525| 860| 360| | | | | | | 5,206|
|
||||
17 IMPUESTOS ADUANA 2,894| 2,491| 1,854| 3,143| 1,673| 61| | | | | | | 12,116|
|
||||
18 ITBIS 1,200| 260| 1,453| 1,633| | | | | | | | | 4,545|
|
||||
19 COOPERATIVA Y CASA CLUB 309| 341| 145| 261| 139| 2| | | | | | | 1,197|
|
||||
20 DESEMBOL.GENERALES OPERATIVOS 1,018| 1,231| 3,519| 890| 932| 321| | | | | | | 7,910|
|
||||
21 FLETES 154| 127| 237| 134| 122| 45| | | | | | | 818|
|
||||
22 INTERES. BCOS. Y COMIS.IMPORT. | | | | | | | | | | | | |
|
||||
23 PUBLICIDAD Y PROMOCION 637| 740| 1,663| 1,134| 928| 501| | | | | | | 5,604|
|
||||
24 OTROS LOCALES, INCL.ANTIC.ISR 1,347| | | 8,492| 1,639| | | | | | | | 11,478|
|
||||
25 NOMINAS 1,228| 4,403| 2,982| 1,206| 974| 662| | | | | | | 11,454|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
TOTAL DESEMBOLSOS LOCALES 10,018| 10,286| 16,203| 17,617| 7,724| 1,950| | | | | | | 63,798|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
TOTAL DESEMBOLSOS 10,237| 10,661| 16,842| 18,161| 8,802| 2,003| | | | | | | 66,707|
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
FLUJO OPERATIVO 9,849| 6,927| 4,450| -73| 13,813| 21,671| 11,187| 9,900| | | | | 77,724|
|
||||
BALANCE INICIAL | 9,849| 16,776| 21,226| 21,153| 34,966| 56,636| 67,824| 77,724| 77,724| 77,724| 77,724| |
|
||||
---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|---------|
|
||||
BALANCE FINAL 9,849| 16,776| 21,226| 21,153| 34,966| 56,636| 67,824| 77,724| 77,724| 77,724| 77,724| 77,724| 21,226|
|
||||
c
|
||||
c
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,138 @@
|
||||
DBSCHEMA Schema Utility INFORMIX-SQL Version 7.11.UC1
|
||||
Copyright (C) Informix Software, Inc., 1984-1995
|
||||
Software Serial Number AAB#J427560
|
||||
{ TABLE "sysinfo".tetb00001 row size = 71 number of columns = 11 index size = 12
|
||||
}
|
||||
create table "sysinfo".tetb00001
|
||||
(
|
||||
num_doc serial not null constraint "usainf01".n351_88,
|
||||
cuenta_no char(8),
|
||||
cta_banco char(13),
|
||||
procedencia smallint,
|
||||
fecha date,
|
||||
monto decimal(12,2),
|
||||
status_t char(1),
|
||||
us_crea char(9),
|
||||
fech_crea datetime year to minute,
|
||||
us_mod char(9),
|
||||
fech_mod datetime year to minute
|
||||
);
|
||||
revoke all on "sysinfo".tetb00001 from "public";
|
||||
|
||||
create unique index "sysinfo".ix1278_1 on "sysinfo".tetb00001 (num_doc);
|
||||
|
||||
|
||||
{ TABLE "sysinfo".tetb00002 row size = 65 number of columns = 7 index size = 9 }
|
||||
create table "sysinfo".tetb00002
|
||||
(
|
||||
procedencia smallint not null constraint "usainf01".n352_89,
|
||||
descripcion char(30),
|
||||
status_t char(1),
|
||||
us_crea char(9),
|
||||
fech_crea datetime year to minute,
|
||||
us_mod char(9),
|
||||
fech_mod datetime year to minute
|
||||
);
|
||||
revoke all on "sysinfo".tetb00002 from "public";
|
||||
|
||||
create unique index "sysinfo".ix367_1 on "sysinfo".tetb00002 (procedencia);
|
||||
|
||||
|
||||
{ TABLE "sysinfo".tetb00003 row size = 67 number of columns = 8 index size = 0 }
|
||||
create table "sysinfo".tetb00003
|
||||
(
|
||||
codigo smallint,
|
||||
descripcion char(30),
|
||||
tipo char(2),
|
||||
status_t char(1),
|
||||
us_crea char(9),
|
||||
fech_crea datetime year to minute,
|
||||
us_mod char(9),
|
||||
fech_mod datetime year to minute
|
||||
);
|
||||
revoke all on "sysinfo".tetb00003 from "public";
|
||||
|
||||
|
||||
{ TABLE "sysinfo".tetb00004 row size = 51 number of columns = 9 index size = 0 }
|
||||
create table "sysinfo".tetb00004
|
||||
(
|
||||
codigo integer,
|
||||
ano integer,
|
||||
mes smallint,
|
||||
valor decimal(14,2),
|
||||
status_t char(1),
|
||||
us_crea char(9),
|
||||
fech_crea datetime year to minute,
|
||||
us_mod char(9),
|
||||
fech_mod datetime year to minute
|
||||
);
|
||||
revoke all on "sysinfo".tetb00004 from "public";
|
||||
|
||||
|
||||
{ TABLE "sysinfo".tetb00005 row size = 51 number of columns = 9 index size = 0 }
|
||||
create table "sysinfo".tetb00005
|
||||
(
|
||||
codigo integer,
|
||||
ano integer,
|
||||
mes smallint,
|
||||
valor_real decimal(14,2),
|
||||
status_t char(1),
|
||||
us_crea char(9),
|
||||
fech_crea datetime year to minute,
|
||||
us_mod char(9),
|
||||
fech_mod datetime year to minute
|
||||
);
|
||||
revoke all on "sysinfo".tetb00005 from "public";
|
||||
|
||||
|
||||
{ TABLE "sysinfo".tetb00006 row size = 49 number of columns = 8 index size = 12 }
|
||||
create table "sysinfo".tetb00006
|
||||
(
|
||||
cheque_no integer,
|
||||
banco char(8),
|
||||
codigo integer,
|
||||
status_t char(1),
|
||||
us_crea char(9),
|
||||
fech_crea datetime year to minute,
|
||||
us_mod char(9),
|
||||
fech_mod datetime year to minute
|
||||
);
|
||||
revoke all on "sysinfo".tetb00006 from "public";
|
||||
|
||||
create index "sysinfo".ix495_1 on "sysinfo".tetb00006 (cheque_no);
|
||||
|
||||
|
||||
{ TABLE "sysinfo".tetb00007 row size = 51 number of columns = 8 index size = 0 }
|
||||
create table "sysinfo".tetb00007
|
||||
(
|
||||
ano integer,
|
||||
valor decimal(12,2),
|
||||
valor1 decimal(12,2),
|
||||
status_t char(1),
|
||||
us_crea char(9),
|
||||
fech_crea datetime year to minute,
|
||||
us_mod char(9),
|
||||
fech_mod datetime year to minute
|
||||
);
|
||||
revoke all on "sysinfo".tetb00007 from "public";
|
||||
|
||||
|
||||
{ TABLE "sysinfo".tetb00008 row size = 50 number of columns = 9 index size = 0 }
|
||||
create table "sysinfo".tetb00008
|
||||
(
|
||||
sec_vend smallint,
|
||||
fecha date,
|
||||
cod_n smallint,
|
||||
porc_cobros1 decimal(8,2),
|
||||
porc_cobros2 decimal(8,2),
|
||||
us_crea char(9),
|
||||
fecha_crea datetime year to minute,
|
||||
us_mod char(9),
|
||||
fecha_mod datetime year to minute
|
||||
);
|
||||
revoke all on "sysinfo".tetb00008 from "public";
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
fgl2p temncs000.4gl
|
||||
fgl2p teprcs001.4gl
|
||||
fgl2p teprcs002.4gl
|
||||
|
||||
fgl2p -o temncs000.42r temncs000.42m teprcs001.42m teprcs002.42m seg000.42m msg.42m msgrp000.42m
|
||||
@@ -0,0 +1,28 @@
|
||||
fglform tefmcs001.per
|
||||
fglform tefmcs002.per
|
||||
fglform tefmmt001.per
|
||||
fglform tefmmt002.per
|
||||
fglform tefmmt003.per
|
||||
fglform tefmmt004.per
|
||||
fglform tefmmt005.per
|
||||
fglform tefmmt006.per
|
||||
fglform tefmmt007.per
|
||||
fglform tefmmt008.per
|
||||
fglform tefmmt010.per
|
||||
fglform tefmmt011.per
|
||||
fglform tefmmt022.per
|
||||
fglform tefmrp001.per
|
||||
fglform tefmrp002.per
|
||||
fglform tefmrp003.per
|
||||
fglform tefmrp004.per
|
||||
fglform tefmrp005.per
|
||||
fglform tefmrp006.per
|
||||
fglform tefmrp007.per
|
||||
fglform tefmrp008.per
|
||||
fglform tefmrp009.per
|
||||
fglform tefmrp010.per
|
||||
fglform tefmrp011.per
|
||||
fglform tefmrp013.per
|
||||
fglform tefmrp014.per
|
||||
fglform tefmwd001.per
|
||||
fglform tefmwd002.per
|
||||
@@ -0,0 +1,50 @@
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
Fecha Inicial [a ] Fecha Final [b ]
|
||||
Cliente : [c1]-[c2 ] [n1 ]
|
||||
[d1 ]
|
||||
[d2 ]
|
||||
Limite Credito [lc ] Prima [pr ] Balance Inicial [ba ]
|
||||
\g------------------------------------------------------------------------------\g
|
||||
D O C U M E N T O A F E C T A
|
||||
Numero Tipo Fecha Numero Debito Credito Balance
|
||||
\g------------------------------------------------------------------------------\g
|
||||
[nm ][tp] [f1 ] [nm1 ] [db ][cr ][bf ]
|
||||
[nm ][tp] [f1 ] [nm1 ] [db ][cr ][bf ]
|
||||
[nm ][tp] [f1 ] [nm1 ] [db ][cr ][bf ]
|
||||
[nm ][tp] [f1 ] [nm1 ] [db ][cr ][bf ]
|
||||
[nm ][tp] [f1 ] [nm1 ] [db ][cr ][bf ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
cctb00001
|
||||
vetb00002
|
||||
vetb00004
|
||||
attributes
|
||||
a = formonly.fecha_inicial type date,color=blue,format = "dd/mm/yyyy",autonext,
|
||||
comments = "Fecha inicial del recibo de pago";
|
||||
b = formonly.fecha_final type date,color=blue,format = "dd/mm/yyyy",autonext,
|
||||
comments = "Fecha final del recibo de pago";
|
||||
c1 = cctb00001.tipo_cliente,autonext,color=blue;
|
||||
c2 = cctb00001.sec_cliente,color=blue;
|
||||
n1 = vetb00004.nombre,noentry,color=blue;
|
||||
d1 = formonly.direccion,noentry,color=blue;
|
||||
d2 = formonly.ciudad,noentry,color=blue;
|
||||
lc = formonly.limite,noentry,color=blue;
|
||||
ba = formonly.balance type decimal(12,2),noentry,color=blue;
|
||||
pr = formonly.prima,color=blue,
|
||||
comments= "Introduzca Prima Para Valorizar Estados";
|
||||
|
||||
nm = cctb00001.num_doc,color=blue;
|
||||
tp = cctb00001.tipo_doc,noentry,color=blue;
|
||||
f1 = cctb00001.fecha_orig,noentry,format = "dd/mm/yyyy",color=blue;
|
||||
nm1 = cctb00001.aplica_a,noentry,color=blue;
|
||||
db = formonly.debito type decimal(12,2),noentry,color=blue;
|
||||
cr = formonly.credito type decimal(12,2),noentry,color=blue;
|
||||
bf = formonly.balance1 type decimal(12,2),noentry,color=blue;
|
||||
INSTRUCTIONS DELIMITERS " "
|
||||
screen record cuenta[5] (num_doc,tipo_doc,fecha_orig,aplica_a, debito,
|
||||
credito,balance1)
|
||||
end
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
{
|
||||
==============================================================================
|
||||
FORMULARIO : CPFMCS002
|
||||
OBJETIVO : Desplegar el estado de cuenta de un suplidor en un
|
||||
rango de fecha
|
||||
PROGRAMA Q. LO USA: TEPRCS002
|
||||
AUTOR : Tadeo A. Ferreras
|
||||
FECHA : Septimebre 16, 1993
|
||||
==============================================================================
|
||||
}
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
Fecha Inicial [a ] Fecha Final [b ]
|
||||
Suplidor :[c1]-[c2 ] [n1 ]
|
||||
[d1 ]
|
||||
[d2 ]
|
||||
Prima [pr ] Balance Inicial [ba ]
|
||||
\g------------------------------------------------------------------------------\g
|
||||
D O C U M E N T O
|
||||
Numero Tipo Fecha Aplicado A Debito Credito Balance
|
||||
\g------------------------------------------------------------------------------\g
|
||||
[nm ][tp][f1 ][nm1 ][db ][cr ][bf ]
|
||||
[nm ][tp][f1 ][nm1 ][db ][cr ][bf ]
|
||||
[nm ][tp][f1 ][nm1 ][db ][cr ][bf ]
|
||||
[nm ][tp][f1 ][nm1 ][db ][cr ][bf ]
|
||||
[nm ][tp][f1 ][nm1 ][db ][cr ][bf ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
cptb00001
|
||||
cotb00001
|
||||
attributes
|
||||
a = formonly.fecha_inicial type date,color=blue,format = "dd/mm/yyyy",autonext,
|
||||
comments = "Fecha inicial del recibo de pago";
|
||||
b = formonly.fecha_final type date,color=blue,format = "dd/mm/yyyy",autonext,
|
||||
comments = "Fecha final del recibo de pago";
|
||||
c1 = cptb00001.cod_sp,autonext,color=blue;
|
||||
c2 = cptb00001.cod_sp_sec,color=blue;
|
||||
n1 = cotb00001.nom_sp,noentry,color=blue;
|
||||
d1 = formonly.direccion,noentry,color=blue;
|
||||
d2 = formonly.ciu_sp,noentry,color=blue;
|
||||
ba = formonly.balance type decimal(12,2),noentry,color=blue;
|
||||
pr = formonly.prima,color=blue,
|
||||
comments= "Introduzca Prima Para Valorizar Estados";
|
||||
|
||||
nm = cptb00001.num_doc,color=blue;
|
||||
tp = cptb00001.tipo_doc,noentry,color=blue;
|
||||
f1 = cptb00001.fecha_orig,noentry,format = "dd/mm/yyyy",color=blue;
|
||||
nm1 = formonly.aplica_a type char,noentry,color=blue;
|
||||
db = formonly.debito type decimal(12,2),noentry,color=blue;
|
||||
cr = formonly.credito type decimal(12,2),noentry,color=blue;
|
||||
bf = formonly.balance1 type decimal(12,2),noentry,color=blue;
|
||||
INSTRUCTIONS DELIMITERS " "
|
||||
screen record cuenta[5] (num_doc,tipo_doc,fecha_orig,aplica_a, debito,
|
||||
credito,balance1)
|
||||
end
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
database formonly
|
||||
screen size 12 by 50
|
||||
{
|
||||
|
||||
|
||||
|
||||
|
||||
[bmp1 ]
|
||||
[bmp2 ] [pic ]
|
||||
[bmp3 ]
|
||||
|
||||
[bmp4 ]
|
||||
[bmp5 ]
|
||||
|
||||
[bmp12 ]
|
||||
|
||||
[d1 ][d2 ]
|
||||
|
||||
|
||||
}
|
||||
attributes
|
||||
d1=formonly.f1, widget="LABEL",reverse,noentry;
|
||||
bmp1=formonly.menu1, widget="BMP",config="catalogoc.gif F1";
|
||||
bmp2=formonly.menu2, widget="BMP",config="entradasd.gif F2";
|
||||
bmp3=formonly.menu3, widget="BMP",config="maestraentradas.gif F3";
|
||||
bmp4=formonly.menu4, widget="BMP",config="cuentasBneto.gif F4";
|
||||
bmp5=formonly.menu5, widget="BMP",config="relacionGD..gif F5";
|
||||
bmp12=formonly.salir, widget="BMP",config="masalir.gif F12";
|
||||
pic = formonly.fotos, widget="BMP";
|
||||
d2 = formonly.f2, widget="label",reverse;
|
||||
|
||||
instructions
|
||||
delimiters ""
|
||||
@@ -0,0 +1,68 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<ManagedForm databaseName="smarmotech" fileVersion="31400" gstVersion="31408" name="ManagedForm" uid="{e1810ec5-612a-44cd-b613-6b9deb1f19c3}">
|
||||
<AGSettings>
|
||||
<DynamicProperties version="2"/>
|
||||
</AGSettings>
|
||||
<Record name="record1" uid="{f7d8a390-a540-4359-b66c-b9021f3b5f70}">
|
||||
<RecordField colName="sucursal" fieldIdRef="0" name="sucursal" sqlTabName="formonly" uid="{ccd6b96a-d2b1-4fdd-8890-c0e2e407fe6f}"/>
|
||||
<RecordField colName="descrip_s" fieldIdRef="1" name="descrip_s" sqlTabName="formonly" uid="{8f73edc0-3791-4691-abc3-cb2d79cf7230}"/>
|
||||
<RecordField colName="num_doc" fieldIdRef="2" name="num_doc" sqlTabName="formonly" uid="{064f22c3-3696-4500-8616-562939586a7f}"/>
|
||||
<RecordField colName="cuenta_no" fieldIdRef="3" name="cuenta_no" sqlTabName="formonly" uid="{31a4cb77-fc52-4c6e-b695-6f84a25cf1db}"/>
|
||||
<RecordField colName="cta_banco" fieldIdRef="4" name="cta_banco" sqlTabName="formonly" uid="{cfc0de78-9383-40e5-9984-08aeb9d7d1d7}"/>
|
||||
<RecordField colName="procedencia" fieldIdRef="5" name="procedencia" sqlTabName="formonly" uid="{a4c4f583-1ce1-4d20-8d34-311f6828139d}"/>
|
||||
<RecordField colName="fecha" fieldIdRef="6" name="fecha" sqlTabName="formonly" uid="{e5a89a49-1944-4da4-8fb8-9914e448adbb}"/>
|
||||
<RecordField colName="monto" fieldIdRef="7" name="monto" sqlTabName="formonly" uid="{0a00f0e6-95ac-48ef-9002-92467d7a950c}"/>
|
||||
<RecordField colName="status_t" fieldIdRef="10" name="status_t" sqlTabName="formonly" uid="{894bba2e-8131-4eeb-a181-6f4900fb1885}"/>
|
||||
<RecordField colName="us_crea" fieldIdRef="11" name="us_crea" sqlTabName="formonly" uid="{c04c6116-d1fe-43ee-861b-f80c883ac7c2}"/>
|
||||
<RecordField colName="us_mod" fieldIdRef="13" name="us_mod" sqlTabName="formonly" uid="{bd0ad93c-47b1-4048-b89e-d2148680a695}"/>
|
||||
<RecordField colName="fech_crea" fieldIdRef="12" name="fech_crea" sqlTabName="formonly" uid="{1ea32fe7-8be7-4e1d-b974-722a9e6f7058}"/>
|
||||
<RecordField colName="fech_mod" fieldIdRef="14" name="fech_mod" sqlTabName="formonly" uid="{2de68835-872c-4c2d-b769-5de1767b47ec}"/>
|
||||
</Record>
|
||||
<Record name="record2" uid="{1a5787c2-d93c-4712-ad88-7bf80ef7c084}">
|
||||
<RecordField fieldIdRef="8" name="fechaDoc" uid="{0c5055e7-ebf5-4482-a683-fc3394408bda}"/>
|
||||
<RecordField fieldIdRef="9" name="documento" uid="{fb817bde-5596-469f-a6e6-c74861bc7794}"/>
|
||||
<RecordField fieldIdRef="15" name="tipoDocumento" uid="{9e2c6644-6e39-4054-891f-29aeaa246bab}"/>
|
||||
<RecordField fieldIdRef="16" name="cliente" uid="{233e1bbd-a705-4b5c-8a9c-86dc175e4f78}"/>
|
||||
<RecordField fieldIdRef="17" name="valor" uid="{a8e35222-41b4-433e-bb94-c12d3a13d760}"/>
|
||||
</Record>
|
||||
<Form gridHeight="27" gridWidth="84" name="tefmmt001">
|
||||
<Grid gridHeight="25" gridWidth="81" name="grid1" posX="2" posY="1">
|
||||
<Label gridHeight="1" gridWidth="8" name="label1" posX="2" posY="1" text="Sucursal"/>
|
||||
<Edit colName="sucursal" fieldId="0" gridHeight="1" gridWidth="4" name="sucursal" posX="19" posY="1" sqlTabName="formonly" tabIndex="1" widget="Edit"/>
|
||||
<Edit colName="descrip_s" fieldId="1" gridHeight="1" gridWidth="36" name="descrip_s" noEntry="true" posX="25" posY="1" scroll="true" sqlTabName="formonly" style="encabezado name" tabIndex="2" widget="Edit"/>
|
||||
<Label gridHeight="1" gridWidth="16" name="label2" posX="2" posY="5" text="Numero Deposito"/>
|
||||
<Edit colName="num_doc" fieldId="2" gridHeight="1" gridWidth="9" name="num_doc" posX="19" posY="5" sqlTabName="formonly" tabIndex="3" widget="Edit"/>
|
||||
<Label gridHeight="1" gridWidth="5" name="label3" posX="2" posY="6" text="Banco"/>
|
||||
<ComboBox colName="cuenta_no" comment="Digite el Codigo O Cuenta del banco" fieldId="3" gridHeight="1" gridWidth="27" items="" name="cuenta_no" posX="19" posY="6" sqlTabName="formonly" tabIndex="4" widget="ComboBox"/>
|
||||
<Label gridHeight="1" gridWidth="13" name="label4" posX="2" posY="7" text="Cta. Bancaria"/>
|
||||
<Edit colName="cta_banco" comment="Digite la Cuenta del Banco" fieldId="4" gridHeight="1" gridWidth="13" name="cta_banco" posX="19" posY="7" sqlTabName="formonly" tabIndex="5" widget="Edit"/>
|
||||
<Label gridHeight="1" gridWidth="12" name="label5" posX="2" posY="8" text="Procendencia"/>
|
||||
<ComboBox colName="procedencia" comment="Presione CTRL-W Para Consultar Maestra de Procedencia de Depositos" fieldId="5" gridHeight="1" gridWidth="27" items="" name="procedencia" posX="19" posY="8" sqlTabName="formonly" tabIndex="6" widget="ComboBox"/>
|
||||
<Label gridHeight="1" gridWidth="5" name="label6" posX="2" posY="9" text="Fecha"/>
|
||||
<DateEdit colName="fecha" fieldId="6" format="dd/mm/yyyy" gridHeight="1" gridWidth="10" name="fecha" posX="19" posY="9" sqlTabName="formonly" tabIndex="7" widget="DateEdit"/>
|
||||
<Label gridHeight="1" gridWidth="15" name="label7" posX="32" posY="9" text="Monto Deposito"/>
|
||||
<Edit colName="monto" fieldId="7" gridHeight="1" gridWidth="13" name="monto" posX="48" posY="9" sqlTabName="formonly" tabIndex="8" widget="Edit"/>
|
||||
<Group gridHeight="9" gridWidth="64" name="group1" posX="4" posY="11" text="Recibos Ingresos">
|
||||
<Table gridHeight="6" gridWidth="54" name="table1" posX="5" posY="2" totalRows="5">
|
||||
<Edit fieldId="8" gridHeight="1" gridWidth="8" name="fechaDoc" posX="0" posY="0" tabIndex="-1" title="Fecha" widget="Edit"/>
|
||||
<Edit fieldId="9" gridHeight="1" gridWidth="8" name="documento" posX="8" posY="0" tabIndex="-1" title="Documento" widget="Edit"/>
|
||||
<Edit fieldId="15" gridHeight="1" gridWidth="8" name="tipoDocumento" posX="16" posY="0" tabIndex="-1" title="Tipo Documento" widget="Edit"/>
|
||||
<Edit fieldId="16" gridHeight="1" gridWidth="8" name="cliente" posX="24" posY="0" tabIndex="-1" title="Cliente" widget="Edit"/>
|
||||
<Edit fieldId="17" gridHeight="1" gridWidth="8" name="valor" posX="32" posY="0" tabIndex="-1" title="Valor" widget="Edit"/>
|
||||
</Table>
|
||||
</Group>
|
||||
<Edit colName="status_t" fieldId="10" gridHeight="1" gridWidth="1" name="status_t" noEntry="true" posX="2" posY="20" sqlTabName="formonly" tabIndex="9" widget="Edit"/>
|
||||
<Label gridHeight="1" gridWidth="16" name="label8" posX="2" posY="21" text="Usuario Creador"/>
|
||||
<Edit colName="us_crea" fieldId="11" gridHeight="1" gridWidth="9" name="us_crea" noEntry="true" posX="19" posY="21" sqlTabName="formonly" tabIndex="10" widget="Edit"/>
|
||||
<Label gridHeight="1" gridWidth="20" name="label9" posX="37" posY="21" text="Usuario Modificador"/>
|
||||
<Edit colName="us_mod" fieldId="13" gridHeight="1" gridWidth="9" name="us_mod" noEntry="true" posX="58" posY="21" sqlTabName="formonly" tabIndex="11" widget="Edit"/>
|
||||
<Label gridHeight="1" gridWidth="14" name="label10" posX="2" posY="22" text="Fecha Creacion"/>
|
||||
<Edit colName="fech_crea" fieldId="12" gridHeight="1" gridWidth="16" name="fech_crea" noEntry="true" posX="19" posY="22" sqlTabName="formonly" tabIndex="12" widget="Edit"/>
|
||||
<Label gridHeight="1" gridWidth="18" name="label11" posX="37" posY="22" text="Fecha Modificacion"/>
|
||||
<Edit colName="fech_mod" fieldId="14" gridHeight="1" gridWidth="16" name="fech_mod" noEntry="true" posX="58" posY="22" sqlTabName="formonly" tabIndex="13" widget="Edit"/>
|
||||
</Grid>
|
||||
</Form>
|
||||
<DiagramLayout>
|
||||
<![CDATA[AAAAAgAAAEwAewBmADcAZAA4AGEAMwA5ADAALQBhADUANAAwAC0ANAAzADUAOQAtAGIANgA2AGMALQBiADkAMAAyADEAZgAzAGIANQBmADcAMAB9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAEwAewAxAGEANQA3ADgANwBjADIALQBkADkAMwBjAC0ANAA3ADEAMgAtAGEAZAA4ADgALQA3AGIAZgA4ADAAZQBmADcAYwAwADgANAB9QCAAAAQAAABAIAAABAAAAAAAAAAAAAAAAQ==]]>
|
||||
</DiagramLayout>
|
||||
</ManagedForm>
|
||||
@@ -0,0 +1,37 @@
|
||||
database smarmotech
|
||||
screen size 24 by 80
|
||||
{
|
||||
Sucursal [s1 ][des1 ]
|
||||
Numero Deposito [a ]
|
||||
Banco [c ] [f1 ]
|
||||
Cta. Bancaria [cb ]
|
||||
Procendencia [p] [f2 ]
|
||||
Fecha [g ] Monto Deposito [md ]
|
||||
[i]
|
||||
Usuario Creador [j ] Usuario Modificador [l ]
|
||||
Fecha Creacion [k ] Fecha Modificacion [m ]
|
||||
}
|
||||
end
|
||||
|
||||
attributes
|
||||
s1 = formonly.sucursal;
|
||||
des1 = formonly.descrip_s;
|
||||
a = formonly.num_doc;
|
||||
c = formonly.cuenta_no,
|
||||
comments="Digite el Codigo O Cuenta del banco";
|
||||
cb = formonly.cta_banco,comments = "Digite la Cuenta del Banco";
|
||||
p = formonly.procedencia,comments =
|
||||
"Presione CTRL-W Para Consultar Maestra de Procedencia de Depositos";
|
||||
g = formonly.fecha,format = "dd/mm/yyyy";
|
||||
md = formonly.monto;
|
||||
f1 = formonly.descrip1,noentry;
|
||||
f2 = formonly.descrip2,noentry;
|
||||
i = formonly.status_t,noentry;
|
||||
j = formonly.us_crea,noentry;
|
||||
k = formonly.fech_crea,noentry;
|
||||
l = formonly.us_mod,noentry;
|
||||
m = formonly.fech_mod,noentry;
|
||||
end
|
||||
|
||||
instructions
|
||||
delimiters " "
|
||||
@@ -0,0 +1,27 @@
|
||||
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
Procedencia [p ]
|
||||
Descripcion [f2 ]
|
||||
[i]
|
||||
Usuario Creador [j ] Usuario Modificador [l ]
|
||||
Fecha Creacion [k ] Fecha Modificacion [m ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
tetb00002
|
||||
attributes
|
||||
p = tetb00002.procedencia,comments =
|
||||
"Digite la Codigo de Procedencia";
|
||||
f2 = tetb00002.descripcion,upshift,comments =
|
||||
"Digite descripcion de Procedencia";
|
||||
i = tetb00002.status_t,noentry;
|
||||
j = tetb00002.us_crea,noentry;
|
||||
k = tetb00002.fech_crea,noentry;
|
||||
l = tetb00002.us_mod,noentry;
|
||||
m = tetb00002.fech_mod,noentry;
|
||||
end
|
||||
|
||||
instructions
|
||||
delimiters " "
|
||||
@@ -0,0 +1,43 @@
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
Codigo del Vendedor [a ]-[b ] [b1 ]
|
||||
Producto Terminado [c]-[d]-[e ]-[f ] [f1 ]
|
||||
Porcentaje x Ventas [g ]%
|
||||
Porcentaje x Cobros [h ]%
|
||||
[i]
|
||||
Usuario Creador [j ] Usuario Modificador [l ]
|
||||
Fecha Creacion [k ] Fecha Modificacion [m ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
vetb00011,
|
||||
intb00001
|
||||
attributes
|
||||
a = vetb00011.cod_vend,autonext,
|
||||
comments="Digite el Codigo de Vendedor o Ctrl-W para busqueda";
|
||||
b = vetb00011.sec_vend,autonext,
|
||||
comments="Digite el Codigo de Vendedor o Ctrl-W para busqueda";
|
||||
b1 = formonly.descrip6,noentry;
|
||||
c = vetb00011.cod_n,autonext,include = (3,6,9),
|
||||
comments="Digite el Codigo del Producto Terminado o Ctrl-W para busqueda";
|
||||
d = vetb00011.cod_grupo,autonext,
|
||||
comments="Digite el Codigo del Producto Terminado o Ctrl-W para busqueda";
|
||||
e = vetb00011.cod_tipo,autonext,
|
||||
comments="Digite el Codigo del Producto Terminado o Ctrl-W para busqueda";
|
||||
f = vetb00011.cod_sec,autonext,
|
||||
comments="Digite el Codigo del Producto Terminado o Ctrl-W para busqueda";
|
||||
f1 = intb00001.descrip_esp,noentry;
|
||||
g = vetb00011.porc_ventas,autonext,
|
||||
comments="Digite el porcentaje a pagar sobre las ventas";
|
||||
h = vetb00011.porc_cobros,autonext,
|
||||
comments="Digite el porcentaje a pagar sobre los cobros";
|
||||
i = vetb00011.status_t,noentry;
|
||||
j = vetb00011.us_crea,noentry;
|
||||
k = vetb00011.fech_crea,noentry;
|
||||
l = vetb00011.us_mod,noentry;
|
||||
m = vetb00011.fech_mod,noentry;
|
||||
end
|
||||
|
||||
instructions
|
||||
delimiters " "
|
||||
@@ -0,0 +1,28 @@
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
|
||||
Codigo [p ]
|
||||
Descripcion [f2 ]
|
||||
Tipo [f3]
|
||||
[i]
|
||||
Usuario Creador [j ] Usuario Modificador [l ]
|
||||
Fecha Creacion [k ] Fecha Modificacion [m ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
tetb00003
|
||||
attributes
|
||||
p = tetb00003.codigo,comments = "Digite la Codigo de Partida";
|
||||
f2 = tetb00003.descripcion,upshift,comments = "Digite descripcion de Partida";
|
||||
f3 = tetb00003.tipo,include = ("IG","DI","DL"),upshift,comments =
|
||||
"Tipo: IG = Ingresos, DL = Desembolso Local, DI = Desembolso Internacional";
|
||||
i = tetb00003.status_t,noentry;
|
||||
j = tetb00003.us_crea,noentry;
|
||||
k = tetb00003.fech_crea,noentry;
|
||||
l = tetb00003.us_mod,noentry;
|
||||
m = tetb00003.fech_mod,noentry;
|
||||
end
|
||||
|
||||
instructions
|
||||
delimiters " "
|
||||
@@ -0,0 +1,31 @@
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
Codigo [p ] Descripcion [f2 ]
|
||||
Ano [f3 ]
|
||||
----------------------------------------------------------
|
||||
Mes Valor
|
||||
----------------------------------------------------------
|
||||
[m ] [dm ] [va ]
|
||||
[m ] [dm ] [va ]
|
||||
[m ] [dm ] [va ]
|
||||
[m ] [dm ] [va ]
|
||||
[m ] [dm ] [va ]
|
||||
[m ] [dm ] [va ]
|
||||
[m ] [dm ] [va ]
|
||||
[m ] [dm ] [va ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
tetb00004
|
||||
attributes
|
||||
p = tetb00004.codigo,comments = "Digite la Codigo de Partida";
|
||||
f2 = formonly.descripcion,noentry;
|
||||
f3 = tetb00004.ano,comments = "Digite Ano del Presupuesto";
|
||||
m = tetb00004.mes,comments="Digite Mes del Presupuesto";
|
||||
dm = formonly.descrip,noentry;
|
||||
va = tetb00004.valor,comments="Digite Valor del Presupuesto";
|
||||
instructions delimiters " "
|
||||
SCREEN RECORD scr_tetb04[8] (mes,descrip,valor)
|
||||
end
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
Codigo [p ] Descripcion [f2 ]
|
||||
Ano [f3 ]
|
||||
----------------------------------------------------------
|
||||
Mes Valor
|
||||
----------------------------------------------------------
|
||||
[m ] [dm ] [va ]
|
||||
[m ] [dm ] [va ]
|
||||
[m ] [dm ] [va ]
|
||||
[m ] [dm ] [va ]
|
||||
[m ] [dm ] [va ]
|
||||
[m ] [dm ] [va ]
|
||||
[m ] [dm ] [va ]
|
||||
[m ] [dm ] [va ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
tetb00005
|
||||
attributes
|
||||
p = tetb00005.codigo,comments = "Digite la Codigo de Partida";
|
||||
f2 = formonly.descripcion,noentry;
|
||||
f3 = tetb00005.ano,comments = "Digite Ano del Presupuesto";
|
||||
m = tetb00005.mes,comments="Digite Mes del Presupuesto";
|
||||
dm = formonly.descrip,noentry;
|
||||
va = formonly.valor,comments="Digite Valor Real de la Partida";
|
||||
instructions delimiters " "
|
||||
SCREEN RECORD scr_tetb05[8] (mes,descrip,valor)
|
||||
end
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
Ano Balance Final de Cash-Flow [p ]
|
||||
Balances Finales Cash-Flow: Real [f2 ]
|
||||
Presupuesto[f3 ]
|
||||
[i]
|
||||
Usuario Creador [j ] Usuario Modificador [l ]
|
||||
Fecha Creacion [k ] Fecha Modificacion [m ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
tetb00007
|
||||
attributes
|
||||
p = tetb00007.ano,comments = "Digite El Ano Del Valance Final";
|
||||
f2 = tetb00007.valor,upshift,comments =
|
||||
"Digite Balance Final Real de Movimientos del Cash-Flow";
|
||||
f3 = tetb00007.valor1,upshift,comments =
|
||||
"Digite Balance Final Presupuesto de Movimientos del Cash-Flow";
|
||||
i = tetb00007.status_t,noentry;
|
||||
j = tetb00007.us_crea,noentry;
|
||||
k = tetb00007.fech_crea,noentry;
|
||||
l = tetb00007.us_mod,noentry;
|
||||
m = tetb00007.fech_mod,noentry;
|
||||
end
|
||||
|
||||
instructions
|
||||
delimiters " "
|
||||
@@ -0,0 +1,26 @@
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
Numero de Cheque [f000 ]
|
||||
Codigo de Banco [f001]
|
||||
Codigo Partida C.F.[f2] [dp ]
|
||||
|
||||
[a]
|
||||
Usuario Creador [f003 ] Usuario Modificador[f005 ]
|
||||
Fecha Creacion [f004 ] Fecha Modificacion [f006 ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
tetb00006
|
||||
attributes
|
||||
f000 = tetb00006.cheque_no,comments = "Digite el Numero de Cheque";
|
||||
f001 = tetb00006.banco,comments = "Digite Codigo de Banco";
|
||||
f2 = tetb00006.codigo,comments = "Digite Codigo de Partida";
|
||||
dp = formonly.descripcion type char,noentry;
|
||||
a = tetb00006.status_t,noentry;
|
||||
f003 = tetb00006.us_crea,noentry;
|
||||
f004 = tetb00006.fech_crea,noentry;
|
||||
f005 = tetb00006.us_mod,noentry;
|
||||
f006 = tetb00006.fech_mod,noentry;
|
||||
instructions delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,41 @@
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
Codigo del Vendedor [b ] [b1 ]
|
||||
Producto Terminado [c]-[d]-[e ]-[f ] [f1 ]
|
||||
Porciento Ventas [g ]%
|
||||
Porcentaje x Cobros [h ]%
|
||||
[i]
|
||||
Usuario Creador [j ] Usuario Modificador [l ]
|
||||
Fecha Creacion [k ] Fecha Modificacion [m ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
cctb00008,
|
||||
intb00001
|
||||
attributes
|
||||
b = cctb00008.sec_vend,autonext,
|
||||
comments="Digite el Codigo de Vendedor o Ctrl-W para busqueda";
|
||||
b1 = formonly.descrip6,noentry;
|
||||
c = cctb00008.cod_n,autonext,include = (3,6,9),
|
||||
comments="Digite el Codigo del Producto Terminado o Ctrl-W para busqueda";
|
||||
d = cctb00008.cod_grupo,autonext,
|
||||
comments="Digite el Codigo del Producto Terminado o Ctrl-W para busqueda";
|
||||
e = cctb00008.cod_tipo,autonext,
|
||||
comments="Digite el Codigo del Producto Terminado o Ctrl-W para busqueda";
|
||||
f = cctb00008.cod_sec,autonext,
|
||||
comments="Digite el Codigo del Producto Terminado o Ctrl-W para busqueda";
|
||||
f1 = intb00001.descrip_esp,noentry;
|
||||
h = cctb00008.porc_cobros,required,
|
||||
comments = "Porcente Cobros A Pagar";
|
||||
g = cctb00008.porc_ventas,required,
|
||||
comments = "Porcentaje Sobre Ventas A Pagar";
|
||||
i = cctb00008.status_t,noentry;
|
||||
j = cctb00008.us_crea,noentry;
|
||||
k = cctb00008.fech_crea,noentry;
|
||||
l = cctb00008.us_mod,noentry;
|
||||
m = cctb00008.fech_mod,noentry;
|
||||
end
|
||||
|
||||
instructions
|
||||
delimiters " "
|
||||
@@ -0,0 +1,26 @@
|
||||
database rayovac@demo_se
|
||||
screen size 24 by 80
|
||||
{
|
||||
Codigo Vendedor [f00][a ]
|
||||
Asignado A [f01][c ]
|
||||
status_t [k]
|
||||
|
||||
Usuario Creador [f002 ] Usuario Modificador[f004 ]
|
||||
fecha Creacion [f003 ] Fecha Modificacion [f005 ]
|
||||
|
||||
|
||||
}
|
||||
end
|
||||
tables
|
||||
tetb00009
|
||||
attributes
|
||||
f00 = tetb00009.sec_vend,comments="Introduzca la ficha del vendedor";
|
||||
f01 = tetb00009.sec_vend_a, comments= "Digite el vendedor asignado";
|
||||
a = formonly.nombre_v;
|
||||
c = formonly.nombre_a;
|
||||
k = tetb00009.status_t,noentry;
|
||||
f002 = tetb00009.us_crea,noentry;
|
||||
f003 = tetb00009.fech_crea,noentry;
|
||||
f004 = tetb00009.us_mod,noentry;
|
||||
f005 = tetb00009.fech_mod,noentry;
|
||||
end
|
||||
@@ -0,0 +1,24 @@
|
||||
{
|
||||
---------------------------------------------------------------------------
|
||||
FORMULARIO : TEFMMT022
|
||||
DISENO : JUAN F. SOTO
|
||||
FECHA : JUNIO 6, 1997.
|
||||
---------------------------------------------------------------------------
|
||||
}
|
||||
DATABASE rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
|
||||
Vendedor Anterior : [v1 ] [a ]
|
||||
Vendedor Actual : [v2 ] [b ]
|
||||
|
||||
}
|
||||
tables
|
||||
vetb00028
|
||||
attributes
|
||||
v1 = formonly.vende_de,comments =
|
||||
"Digite El Vendedor a quien pertenece el o los clientes";
|
||||
v2 = formonly.vende_a,comments =
|
||||
"Digite el vendedor a quien pertenece el o los clientes";
|
||||
a = formonly.nombre1;
|
||||
b = formonly.nombre2;
|
||||
@@ -0,0 +1,31 @@
|
||||
{
|
||||
-------------------------------------------------------------------------------
|
||||
FORMULARIO : TEFMRP001
|
||||
OBJETIVO : Pantalla para listar la Validacion de los Depositos.
|
||||
Es usada por (TEPRRP001)
|
||||
PROGRAMADOR : Tadeo A. Ferreras
|
||||
FECHA REALIZACION : Sept. 28, 1993
|
||||
-------------------------------------------------------------------------------
|
||||
}
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
|
||||
Fecha Inicial [fi ]
|
||||
Fecha Final [ff ]
|
||||
Banco [ct ]
|
||||
Numero Deposito [nd ]
|
||||
Procedencia [p]
|
||||
}
|
||||
end
|
||||
tables
|
||||
tetb00001
|
||||
attributes
|
||||
fi = formonly.fecha1 type date,format = "dd/mm/yyyy";
|
||||
ff = formonly.fecha2 type date,format = "dd/mm/yyyy";
|
||||
ct = tetb00001.cuenta_no;
|
||||
nd = tetb00001.num_doc;
|
||||
p = tetb00001.procedencia,include=(1 to 5),comments =
|
||||
"1= Cobro Cliente 2=Exportacion 3=Prest. Banco 4=Otros Igresos 5=Transferencia";
|
||||
instructions delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,21 @@
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
|
||||
Cliente [c1]-[c2 ]
|
||||
Prima [pr ]
|
||||
Fecha Inicial [a ]
|
||||
Fecha Final [b ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
cctb00001
|
||||
attributes
|
||||
c1 = cctb00001.tipo_cliente,autonext;
|
||||
c2 = cctb00001.sec_cliente;
|
||||
a = formonly.fecha_inicial type date, format = "dd/mm/yyyy",autonext,
|
||||
comments = "Fecha inicial del recibo de pago";
|
||||
b = formonly.fecha_final type date, format = "dd/mm/yyyy",autonext,
|
||||
comments = "Fecha final del recibo de pago";
|
||||
pr = formonly.prima,comments= "Introduzca Prima Para Valorizar Estados";
|
||||
end
|
||||
@@ -0,0 +1,32 @@
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
Compania [c]
|
||||
Mes Comision [m1]
|
||||
Ano Comision [a2 ]
|
||||
Codigo Vendedor [b1]-[c1 ]
|
||||
Ventas [v]
|
||||
Codigo Producto [a][b][d1][a1 ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
vetb00028,
|
||||
vetb00003
|
||||
attributes
|
||||
c = vetb00003.cod_cia,include = (1,2),comments =
|
||||
"1- Rayovac 2- Distribuidora";
|
||||
m1 = formonly.mes type smallint,include = (1 to 12),comments =
|
||||
"Digite en formato MM eje. 01 (Enero)";
|
||||
a2 = formonly.ano;
|
||||
v = formonly.ventas;
|
||||
b1 = vetb00028.cod_vend,autonext,
|
||||
comments = "Digite el codigo del vendedor o el criterio de seleccion";
|
||||
c1 = vetb00028.sec_vend,
|
||||
comments = "Digite el codigo del vendedor o el criterio de seleccion";
|
||||
a = formonly.cod_n;
|
||||
b = formonly.cod_grupo;
|
||||
d1 = formonly.cod_tipo;
|
||||
a1 = formonly.cod_sec;
|
||||
instructions
|
||||
delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,26 @@
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
Compania [c]
|
||||
Mes Comision [m1]
|
||||
Ano Comision [a ]
|
||||
Codigo Vendedor [b1]-[c1 ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
vetb00028,
|
||||
vetb00003
|
||||
attributes
|
||||
c = vetb00003.cod_cia,include = (1,2),comments =
|
||||
"1- Rayovac 2- Distribuidora";
|
||||
m1 = formonly.mes type smallint,include = (1 to 12),comments =
|
||||
"Digite en formato MM eje. 01 (Enero)";
|
||||
a = formonly.ano;
|
||||
|
||||
b1 = vetb00028.cod_vend,autonext,
|
||||
comments = "Digite el codigo del vendedor o el criterio de seleccion";
|
||||
c1 = vetb00028.sec_vend,
|
||||
comments = "Digite el codigo del vendedor o el criterio de seleccion";
|
||||
instructions
|
||||
delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,27 @@
|
||||
{
|
||||
-------------------------------------------------------------------------------
|
||||
FORMULARIO : VEFMRP032
|
||||
OBJETIVO : Relacion de Ventas Por Vendedor y Cobros de Facturas
|
||||
PROGRAMADOR : Juan Fco. Soto
|
||||
FECHA REALIZACION : Abril 6, 1995
|
||||
-------------------------------------------------------------------------------
|
||||
}
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
Compania [c]
|
||||
Fecha Inicial [fn ]
|
||||
Fecha Final [fi ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
vetb00028,
|
||||
vetb00003
|
||||
attributes
|
||||
c = vetb00003.cod_cia,include = (1,2),comments =
|
||||
"1- Rayovac 2- Distribuidora";
|
||||
fn = formonly.fecha_in type date,format = "dd/mm/yyyy";
|
||||
fi = formonly.fecha_fin type date,format = "dd/mm/yyyy";
|
||||
instructions
|
||||
delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,24 @@
|
||||
{
|
||||
-------------------------------------------------------------------------------
|
||||
FORMULARIO : TEFMRP006
|
||||
OBJETIVO : Comision Cheques Devueltos
|
||||
PROGRAMADOR : Juan Fco. Soto
|
||||
FECHA REALIZACION : Junio 8, 1995
|
||||
-------------------------------------------------------------------------------
|
||||
}
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
Fecha Inicial [fn ]
|
||||
Fecha Final [fi ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
vetb00028,
|
||||
vetb00003
|
||||
attributes
|
||||
fn = formonly.fech_in type date,format = "dd/mm/yyyy";
|
||||
fi = formonly.fech_fi type date,format = "dd/mm/yyyy";
|
||||
instructions
|
||||
delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,32 @@
|
||||
{
|
||||
==========================================================================
|
||||
FORMULARIO : TEFMRP007
|
||||
OBJETIVO : Relacion de cheques emitidos
|
||||
Es usado TEPRRP007
|
||||
AUTOR : Tadeo A. Ferreras
|
||||
FECHA : Diciembre 06, 1995
|
||||
==========================================================================
|
||||
}
|
||||
database rayovac
|
||||
screen
|
||||
{
|
||||
|
||||
Fecha Inicial [f001 ]
|
||||
Fecha Final [f002 ]
|
||||
Tasa US$ [f005 ]
|
||||
Cuenta No. [f003 ]
|
||||
Cheque No. [f004 ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
cgtb00005
|
||||
attributes
|
||||
f001 = formonly.fecha_inicial type date,format = "dd/mm/yyyy",comments =
|
||||
"Digite la fecha inicial para general el reporte";
|
||||
f002 = formonly.fecha_final type date,format = "dd/mm/yyyy",comments =
|
||||
"Digite la fecha final para general el reporte";
|
||||
f003 = cgtb00005.cuenta_no,comments = "Digite el numero de cuenta";
|
||||
f004 = cgtb00005.cheque_no,comments = "Digite el numero de cheque";
|
||||
f005 = formonly.tasa,comments = "Digite Tasa de Cambio US$";
|
||||
instructions delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,29 @@
|
||||
{
|
||||
==========================================================================
|
||||
FORMULARIO : TEFMRP008
|
||||
OBJETIVO : Analisis de CXash Flow
|
||||
Es usado TEPRRP008
|
||||
AUTOR : Tadeo A. Ferreras
|
||||
FECHA : Diciembre 08, 1995
|
||||
==========================================================================
|
||||
}
|
||||
database rayovac
|
||||
screen
|
||||
{
|
||||
|
||||
Ano Reporte [f001]
|
||||
Mes Inicial [f002]
|
||||
Mes Final [f003]
|
||||
Tasa Actual [f004 ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
cgtb00005
|
||||
attributes
|
||||
f001 = formonly.ano, comments = "Digite el Ano Para Busqueda de Informacion";
|
||||
f002 = formonly.mes_1,comments = "Digite el Mes Incial del Rango";
|
||||
f003 = formonly.mes_2,comments =
|
||||
"Digite el Mes Final del Rango (Rango de Meses No Exceda a Los 9 Meses)";
|
||||
f004 = formonly.tasa,comments = "Digite la Tasa A Utilizar";
|
||||
instructions delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,25 @@
|
||||
{
|
||||
==========================================================================
|
||||
FORMULARIO : TEFMRP009
|
||||
OBJETIVO : Analisis de Cash Flow Real Diario
|
||||
Es usado TEPRRP009
|
||||
AUTOR : Tadeo A. Ferreras
|
||||
FECHA : Diciembre 12, 1995
|
||||
==========================================================================
|
||||
}
|
||||
database rayovac
|
||||
screen
|
||||
{
|
||||
|
||||
Fecha Corte [f001 ]
|
||||
Tasa Actual [f004 ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
cgtb00005
|
||||
attributes
|
||||
f001 = formonly.fecha_corte type date,format = "dd/mm/yyyy", comments =
|
||||
"Digite la Fecha de Corte ";
|
||||
f004 = formonly.tasa,comments = "Digite la Tasa A Utilizar";
|
||||
instructions delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,26 @@
|
||||
{
|
||||
==========================================================================
|
||||
FORMULARIO : TEFMRP009
|
||||
OBJETIVO : Analisis de Cash Flow Real Diario
|
||||
Es usado TEPRRP009
|
||||
AUTOR : Tadeo A. Ferreras
|
||||
FECHA : Diciembre 12, 1995
|
||||
==========================================================================
|
||||
}
|
||||
database rayovac
|
||||
screen
|
||||
{
|
||||
|
||||
Ano [f001]
|
||||
Mes [a ]
|
||||
Tasa Actual [f004 ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
cgtb00005
|
||||
attributes
|
||||
f001 = formonly.ano;
|
||||
a = formonly.mes_1;
|
||||
f004 = formonly.tasa,comments = "Digite la Tasa A Utilizar";
|
||||
instructions delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,26 @@
|
||||
{
|
||||
==========================================================================
|
||||
FORMULARIO : TEFMRP008
|
||||
OBJETIVO : Analisis de Cash Flow Comparativo
|
||||
Es usado TEPRRP010
|
||||
AUTOR : Tadeo A. Ferreras
|
||||
FECHA : Diciembre 14, 1995
|
||||
==========================================================================
|
||||
}
|
||||
database rayovac
|
||||
screen
|
||||
{
|
||||
|
||||
Ano Reporte [f001]
|
||||
Mes Reporte [f2]
|
||||
Tasa Actual [f004 ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
cgtb00005
|
||||
attributes
|
||||
f001 = formonly.ano, comments = "Digite el Ano Para Busqueda de Informacion";
|
||||
f2 = formonly.mes,comments = "Digite el Mes Para Reporte";
|
||||
f004 = formonly.tasa,comments = "Digite la Tasa A Utilizar";
|
||||
instructions delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,25 @@
|
||||
|
||||
{
|
||||
==========================================================================
|
||||
FORMULARIO : TEFMRP008
|
||||
OBJETIVO : Analisis de CXash Flow
|
||||
Es usado TEPRRP008
|
||||
AUTOR : Tadeo A. Ferreras
|
||||
FECHA : Diciembre 08, 1995
|
||||
==========================================================================
|
||||
}
|
||||
database rayovac
|
||||
screen
|
||||
{
|
||||
|
||||
Ano Reporte [f001]
|
||||
Tasa Actual [f004 ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
cgtb00005
|
||||
attributes
|
||||
f001 = formonly.ano, comments = "Digite el Ano Para Busqueda de Informacion";
|
||||
f004 = formonly.tasa,comments = "Digite la Tasa A Utilizar";
|
||||
instructions delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,27 @@
|
||||
|
||||
{
|
||||
==========================================================================
|
||||
FORMULARIO : TEFMRP008
|
||||
OBJETIVO : Analisis de CXash Flow
|
||||
Es usado TEPRRP008
|
||||
AUTOR : Tadeo A. Ferreras
|
||||
FECHA : Diciembre 08, 1995
|
||||
==========================================================================
|
||||
}
|
||||
database rayovac
|
||||
screen
|
||||
{
|
||||
|
||||
Ano Reporte [f001]
|
||||
Mes Reporte [f2]
|
||||
Tasa Actual [f004 ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
cgtb00005
|
||||
attributes
|
||||
f001 = formonly.ano, comments = "Digite el Ano Para Busqueda de Informacion";
|
||||
f2 = formonly.mes_2;
|
||||
f004 = formonly.tasa,comments = "Digite la Tasa A Utilizar";
|
||||
instructions delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,27 @@
|
||||
|
||||
{
|
||||
==========================================================================
|
||||
FORMULARIO : TEFMRP008
|
||||
OBJETIVO : Analisis de CXash Flow
|
||||
Es usado TEPRRP008
|
||||
AUTOR : Tadeo A. Ferreras
|
||||
FECHA : Diciembre 08, 1995
|
||||
==========================================================================
|
||||
}
|
||||
database rayovac
|
||||
screen
|
||||
{
|
||||
|
||||
Ano Reporte [f001]
|
||||
Mes Reporte [f2]
|
||||
Tasa Actual [f004 ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
cgtb00005
|
||||
attributes
|
||||
f001 = formonly.ano, comments = "Digite el Ano Para Busqueda de Informacion";
|
||||
f2 = formonly.mes_2;
|
||||
f004 = formonly.tasa,comments = "Digite la Tasa A Utilizar";
|
||||
instructions delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,13 @@
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
|
||||
Codigo Partida [f ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
tetb00003
|
||||
attributes
|
||||
f = tetb00003.codigo,comments = "Digite Codigo de Partida o Nulo Para Todos";
|
||||
instructions delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,30 @@
|
||||
{
|
||||
==========================================================================
|
||||
FORMULARIO : TEFMRP007
|
||||
OBJETIVO : Relacion de cheques emitidos
|
||||
Es usado TEPRRP007
|
||||
AUTOR : Tadeo A. Ferreras
|
||||
FECHA : Diciembre 06, 1995
|
||||
==========================================================================
|
||||
}
|
||||
database rayovac
|
||||
screen
|
||||
{
|
||||
|
||||
Fecha Inicial [f001 ]
|
||||
Fecha Final [f002 ]
|
||||
Cuenta No. [f003 ]
|
||||
Cheque No. [f004 ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
cgtb00005
|
||||
attributes
|
||||
f001 = formonly.fecha_inicial type date,format = "dd/mm/yyyy",comments =
|
||||
"Digite la fecha inicial para general el reporte";
|
||||
f002 = formonly.fecha_final type date,format = "dd/mm/yyyy",comments =
|
||||
"Digite la fecha final para general el reporte";
|
||||
f003 = cgtb00005.cuenta_no,comments = "Digite el numero de cuenta";
|
||||
f004 = cgtb00005.cheque_no,comments = "Digite el numero de cheque";
|
||||
instructions delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,32 @@
|
||||
{
|
||||
==========================================================================
|
||||
FORMULARIO : TEFMRP007
|
||||
OBJETIVO : Relacion de cheques emitidos
|
||||
Es usado TEPRRP007
|
||||
AUTOR : Tadeo A. Ferreras
|
||||
FECHA : Diciembre 06, 1995
|
||||
==========================================================================
|
||||
}
|
||||
database rayovac
|
||||
screen
|
||||
| A grammatical error has been found at 'screen' expecting: $ error DATABASE DEFINE DESCRIBE FUNCTION ...
|
||||
| See error number -6609.
|
||||
{
|
||||
|
||||
Fecha Inicial [f001 ]
|
||||
Fecha Final [f002 ]
|
||||
Cuenta No. [f003 ]
|
||||
Cheque No. [f004 ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
cgtb00005
|
||||
attributes
|
||||
f001 = formonly.fecha_inicial type date,format = "dd/mm/yyyy",comments =
|
||||
"Digite la fecha inicial para general el reporte";
|
||||
f002 = formonly.fecha_final type date,format = "dd/mm/yyyy",comments =
|
||||
"Digite la fecha final para general el reporte";
|
||||
f003 = cgtb00005.cuenta_no,comments = "Digite el numero de cuenta";
|
||||
f004 = cgtb00005.cheque_no,comments = "Digite el numero de cheque";
|
||||
instructions delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,30 @@
|
||||
{
|
||||
==========================================================================
|
||||
FORMULARIO : TEFMRP014
|
||||
OBJETIVO : Relacion de cheques emitidos x partidas
|
||||
AUTOR : Abner Montalvo
|
||||
FECHA : Agosto 26, 1997
|
||||
==========================================================================
|
||||
}
|
||||
database rayovac
|
||||
screen
|
||||
{
|
||||
|
||||
Fecha Inicial [f001 ]
|
||||
Fecha Final [f002 ]
|
||||
Codigo Partida [f003 ]
|
||||
Cuenta No. [f004 ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
cgtb00005
|
||||
tetb00003
|
||||
attributes
|
||||
f001 = formonly.fecha_inicial type date,format = "dd/mm/yyyy",comments =
|
||||
"Digite la fecha inicial para general el reporte";
|
||||
f002 = formonly.fecha_final type date,format = "dd/mm/yyyy",comments =
|
||||
"Digite la fecha final para general el reporte";
|
||||
f003 = tetb00003.codigo,comments = "Digite el Codigo de Partida";
|
||||
f004 = cgtb00005.cuenta_no,comments = "Digite el numero de cuenta";
|
||||
instructions delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,29 @@
|
||||
DATABASE rayovac
|
||||
SCREEN SIZE 24 by 80
|
||||
{
|
||||
Busqueda de Empleados
|
||||
\g-----------------------------------------------------------\g
|
||||
Codigo Nombre
|
||||
\g-----------------------------------------------------------\g
|
||||
[i ][j ] [f2 ]
|
||||
[i ][j ] [f2 ]
|
||||
[i ][j ] [f2 ]
|
||||
[i ][j ] [f2 ]
|
||||
[i ][j ] [f2 ]
|
||||
[i ][j ] [f2 ]
|
||||
}
|
||||
end
|
||||
|
||||
tables
|
||||
adtb00003
|
||||
attributes
|
||||
i = formonly.cod_emp,noentry;
|
||||
j = formonly.cod_emp_sec,noentry;
|
||||
f2 = formonly.descrip6, upshift,
|
||||
comments = " <Esc> Busca todos los Empleados";
|
||||
|
||||
instructions
|
||||
screen record s_empleados[6] (cod_emp, cod_emp_sec, descrip6)
|
||||
delimiters " "
|
||||
end
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
|
||||
database rayovac
|
||||
screen size 24 by 80
|
||||
{
|
||||
Maestra de Procedencia de Depositos
|
||||
\g----------------------------------------------
|
||||
Procedencia Descripcion
|
||||
\g----------------------------------------------
|
||||
[f0 ] [f002 ]
|
||||
[f0 ] [f002 ]
|
||||
[f0 ] [f002 ]
|
||||
[f0 ] [f002 ]
|
||||
}
|
||||
end
|
||||
tables
|
||||
tetb00002
|
||||
attributes
|
||||
f0 = tetb00002.procedencia,
|
||||
comments = "<Esc> Asigna el valor encontrado al valor deseado";
|
||||
f002 = tetb00002.descripcion,noentry;
|
||||
instructions
|
||||
screen record s_procedencia[4] (procedencia,descripcion)
|
||||
delimiters " "
|
||||
end
|
||||
@@ -0,0 +1,148 @@
|
||||
{
|
||||
-----------------------------------------------------------------------
|
||||
PROGRAMA : TEMN00000
|
||||
OBJETIVO : Menu Principal del Sistema de tesoreria
|
||||
PROGRAMADOR : Ing. Juan F. Soto.
|
||||
FECHA REALIZACION : Junio 15, 1993.
|
||||
-----------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
MAIN
|
||||
# WHENEVER ERROR CONTINUE
|
||||
DEFER INTERRUPT
|
||||
CALL opciones_temn00000()
|
||||
END MAIN
|
||||
|
||||
FUNCTION opciones_temn00000()
|
||||
DEFINE p_user CHAR(9)
|
||||
|
||||
CALL opcion_pantalla()
|
||||
|
||||
MENU "Principal: "
|
||||
COMMAND "1"
|
||||
CALL seg000(1,"temn00000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
RUN "fglsql %FGLPROG%\\temnmt000"
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "2"
|
||||
CALL seg000(2,"temn00000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
RUN "fglsql %FGLPROG%\\temncs000"
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "3"
|
||||
CALL seg000(3,"temn00000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
RUN "fglsql %FGLPROG%\\temnrp000"
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "Retornar"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION pantalla()
|
||||
DEFINE fecha CHAR(10),
|
||||
hora char(5)
|
||||
LET fecha = today USING "dd/mm/yyyy"
|
||||
LET hora = time
|
||||
DISPLAY " R A Y . O . V A C D O M I N I C A N A " AT 4,19
|
||||
ATTRIBUTE (REVERSE,BLUE)
|
||||
DISPLAY fecha AT 4,68 ATTRIBUTE (RED)
|
||||
DISPLAY " Sistema de Tesoreria " AT 5,25 ATTRIBUTE(BLACK)
|
||||
DISPLAY hora AT 6,73 ATTRIBUTE(RED)
|
||||
|
||||
CALL fgl_drawbox(5,79,3,1)
|
||||
CALL fgl_drawbox(1,79,22,1)
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION integridad()
|
||||
IF sqlca.sqlcode < 0 THEN
|
||||
LET numero_msg = sqlca.sqlcode
|
||||
CALL msg(numero_msg)
|
||||
DISPLAY numero_msg AT 23,70
|
||||
LET bandera = 1
|
||||
LET status = 0
|
||||
SLEEP 2
|
||||
RETURN
|
||||
END IF
|
||||
RETURN
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION prd()
|
||||
|
||||
LET a_ano = year(p_fechas)
|
||||
LET mes_control = MONTH(today)
|
||||
LET mes_calc = mes_control
|
||||
|
||||
IF mes_calc = 01 THEN
|
||||
LET mes_calc = 13
|
||||
LET a_ano = year(today - 32)
|
||||
END IF
|
||||
|
||||
#Aqui la funcion se posicionaba en dos meses para el control del documento
|
||||
#LET mes_calc = mes_calc - 2
|
||||
|
||||
IF mes_calc <= 0 THEN
|
||||
LET mes_calc = 12
|
||||
LET a_ano = year(today) - 1
|
||||
END IF
|
||||
|
||||
LET c_ano = year(today)
|
||||
{IF a_ano != c_ano THEN
|
||||
LET numero_msg = 59
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
RETURN
|
||||
END IF}
|
||||
|
||||
SELECT MIN(fecha_corte) INTO fecha_c FROM prdtable
|
||||
WHERE fecha_corte >= p_fechas
|
||||
|
||||
SELECT MIN(dias_gracia) INTO dia FROM prdtable
|
||||
WHERE fecha_corte = fecha_c
|
||||
|
||||
IF dia IS NULL THEN
|
||||
LET dia = 0
|
||||
END IF
|
||||
SELECT a.usuario FROM seg0003
|
||||
WHERE a.usuario = USER
|
||||
|
||||
IF status != notfound THEN
|
||||
LET fecha_c = fecha_c + dia
|
||||
END IF
|
||||
IF status = notfound THEN
|
||||
LET numero_msg = 58
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
END IF
|
||||
LET comp_fech = fecha_c
|
||||
LET comp_fech1 = TODAY
|
||||
|
||||
IF comp_fech < comp_fech1 THEN
|
||||
LET numero_msg = 57
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
END IF
|
||||
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION opcion_pantalla()
|
||||
|
||||
OPTIONS
|
||||
PROMPT LINE 8,
|
||||
MESSAGE LINE 24
|
||||
CLEAR SCREEN
|
||||
CALL pantalla()
|
||||
|
||||
DISPLAY " Menu Principal " AT 6,22 ATTRIBUTE(BLACK)
|
||||
DISPLAY "temn00000" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "1- Mantenimientos temnmt000" AT 10,6
|
||||
DISPLAY "2- Consultas temncs000" AT 11,6
|
||||
DISPLAY "3- Reportes temnrp000" AT 12,6
|
||||
#DISPLAY "S- Retorna Menu Anterior " AT 14,6
|
||||
# ATTRIBUTE (BLACK)
|
||||
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,158 @@
|
||||
{
|
||||
-----------------------------------------------------------------------
|
||||
PROGRAMA : TEMN00000
|
||||
OBJETIVO : Menu Principal del Sistema de tesoreria
|
||||
PROGRAMADOR : Ing. Juan F. Soto.
|
||||
FECHA REALIZACION : Junio 15, 1993.
|
||||
-----------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
MAIN
|
||||
WHENEVER ERROR CONTINUE
|
||||
DEFER INTERRUPT
|
||||
CALL pantalla()
|
||||
CALL opciones_temn00000()
|
||||
END MAIN
|
||||
|
||||
FUNCTION opciones_temn00000()
|
||||
DEFINE p_user CHAR(9)
|
||||
OPTIONS
|
||||
PROMPT LINE 8,
|
||||
MESSAGE LINE 24
|
||||
|
||||
DISPLAY " Menu Principal " AT 6,22 ATTRIBUTE(BLACK)
|
||||
DISPLAY "temn00000" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "1- Mantenimientos temnmt000" AT 10,6
|
||||
DISPLAY "2- Consultas temncs000" AT 11,6
|
||||
DISPLAY "3- Reportes temnrp000" AT 12,6
|
||||
DISPLAY "S- Retorna Menu Anterior " AT 14,6
|
||||
ATTRIBUTE (BLACK)
|
||||
LABEL vuelve:
|
||||
LET opcion = " "
|
||||
PROMPT " OPCION: " FOR opcion HELP 1
|
||||
IF opcion != "S" THEN
|
||||
SELECT unique usuario INTO p_user FROM seg0001
|
||||
WHERE usuario = user
|
||||
CALL seg000(opcion,"temn00000") RETURNING luz
|
||||
IF luz = "roja" THEN
|
||||
ERROR "NO TIENE PERMISO PARA UTILIZAR OPCION"
|
||||
GOTO vuelve
|
||||
END IF
|
||||
END IF
|
||||
CASE
|
||||
WHEN opcion = "1"
|
||||
#RUN "fglrun %FGLPROG%\\temnmt000"
|
||||
CALL temnmt000()
|
||||
CLEAR SCREEN
|
||||
CALL pantalla()
|
||||
CALL opciones_temn00000()
|
||||
|
||||
WHEN opcion = "2"
|
||||
#RUN "fglrun %FGLPROG%\\temncs000"
|
||||
CALL temncs000()
|
||||
CLEAR SCREEN
|
||||
CALL pantalla()
|
||||
CALL opciones_temn00000()
|
||||
WHEN opcion = "3"
|
||||
#RUN "fglrun %FGLPROG%\\temnrp000"
|
||||
CALL temnrp000()
|
||||
CLEAR SCREEN
|
||||
CALL pantalla()
|
||||
CALL opciones_temn00000()
|
||||
|
||||
WHEN opcion = "S" or opcion = "s"
|
||||
RETURN
|
||||
|
||||
OTHERWISE
|
||||
CALL opciones_temn00000()
|
||||
|
||||
END CASE
|
||||
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION pantalla()
|
||||
DEFINE fecha CHAR(8),
|
||||
hora char(5)
|
||||
LET fecha = today USING "dd/mm/yy"
|
||||
LET hora = time
|
||||
DISPLAY " R A Y . O . V A C D O M I N I C A N A " AT 4,19
|
||||
ATTRIBUTE (REVERSE,BLUE)
|
||||
DISPLAY fecha AT 4,70 ATTRIBUTE (RED)
|
||||
DISPLAY " Sistema de Tesoreria " AT 5,25 ATTRIBUTE(BLACK)
|
||||
DISPLAY hora AT 6,73 ATTRIBUTE(RED)
|
||||
|
||||
CALL fgl_drawbox(5,79,3,1)
|
||||
CALL fgl_drawbox(1,79,22,1)
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION integridad()
|
||||
IF sqlca.sqlcode < 0 THEN
|
||||
LET numero_msg = sqlca.sqlcode
|
||||
CALL msg(numero_msg)
|
||||
DISPLAY numero_msg AT 23,70
|
||||
LET bandera = 1
|
||||
LET status = 0
|
||||
SLEEP 2
|
||||
RETURN
|
||||
END IF
|
||||
RETURN
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION prd()
|
||||
|
||||
LET a_ano = year(p_fechas)
|
||||
LET mes_control = MONTH(today)
|
||||
LET mes_calc = mes_control
|
||||
|
||||
IF mes_calc = 01 THEN
|
||||
LET mes_calc = 13
|
||||
LET a_ano = year(today - 32)
|
||||
END IF
|
||||
|
||||
#Aqui la funcion se posicionaba en dos meses para el control del documento
|
||||
#LET mes_calc = mes_calc - 2
|
||||
|
||||
IF mes_calc <= 0 THEN
|
||||
LET mes_calc = 12
|
||||
LET a_ano = year(today) - 1
|
||||
END IF
|
||||
|
||||
LET c_ano = year(today)
|
||||
{IF a_ano != c_ano THEN
|
||||
LET numero_msg = 59
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
RETURN
|
||||
END IF}
|
||||
|
||||
SELECT MIN(fecha_corte) INTO fecha_c FROM prdtable
|
||||
WHERE fecha_corte >= p_fechas
|
||||
|
||||
SELECT MIN(dias_gracia) INTO dia FROM prdtable
|
||||
WHERE fecha_corte = fecha_c
|
||||
|
||||
IF dia IS NULL THEN
|
||||
LET dia = 0
|
||||
END IF
|
||||
SELECT a.usuario FROM seg0003
|
||||
WHERE a.usuario = USER
|
||||
|
||||
IF status != notfound THEN
|
||||
LET fecha_c = fecha_c + dia
|
||||
END IF
|
||||
IF status = notfound THEN
|
||||
LET numero_msg = 58
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
END IF
|
||||
LET comp_fech = fecha_c
|
||||
LET comp_fech1 = TODAY
|
||||
|
||||
IF comp_fech < comp_fech1 THEN
|
||||
LET numero_msg = 57
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
END IF
|
||||
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,139 @@
|
||||
{
|
||||
----------------------------------------------------------------
|
||||
PROGRAMA : TEMNCS000
|
||||
OBJETIVO : Menu de Consulta del Sistema de tesoreria
|
||||
PROGRAMADOR : Ing. Juan F. Soto.
|
||||
FECHA REALIZACION : Junio 15, 1993.
|
||||
----------------------------------------------------------------
|
||||
}
|
||||
|
||||
GLOBALS "teprgb000.4gl"
|
||||
MAIN
|
||||
DEFER INTERRUPT
|
||||
CALL temncs000()
|
||||
END MAIN
|
||||
|
||||
FUNCTION temncs000()
|
||||
|
||||
CALL opcion_pantalla()
|
||||
|
||||
MENU "Consultas: "
|
||||
COMMAND "1"
|
||||
CALL seg000(1,"temncs000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprcs001()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "2"
|
||||
CALL seg000(2,"temncs000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprcs002()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "Retornar"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION pantalla()
|
||||
DEFINE fecha CHAR(10),
|
||||
hora char(5)
|
||||
LET fecha = today USING "dd/mm/yyyy"
|
||||
LET hora = time
|
||||
DISPLAY " R A Y . O . V A C D O M I N I C A N A " AT 4,19
|
||||
ATTRIBUTE (REVERSE,BLUE)
|
||||
DISPLAY fecha AT 4,68 ATTRIBUTE (RED)
|
||||
DISPLAY " Sistema de Tesoreria " AT 5,25 ATTRIBUTE(BLACK)
|
||||
DISPLAY hora AT 6,73 ATTRIBUTE(RED)
|
||||
|
||||
CALL fgl_drawbox(5,79,3,1)
|
||||
CALL fgl_drawbox(1,79,22,1)
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION integridad()
|
||||
IF sqlca.sqlcode < 0 THEN
|
||||
LET numero_msg = sqlca.sqlcode
|
||||
CALL msg(numero_msg)
|
||||
DISPLAY numero_msg AT 23,70
|
||||
LET bandera = 1
|
||||
LET status = 0
|
||||
SLEEP 2
|
||||
RETURN
|
||||
END IF
|
||||
RETURN
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION prd()
|
||||
|
||||
LET a_ano = year(p_fechas)
|
||||
LET mes_control = MONTH(today)
|
||||
LET mes_calc = mes_control
|
||||
|
||||
IF mes_calc = 01 THEN
|
||||
LET mes_calc = 13
|
||||
LET a_ano = year(today - 32)
|
||||
END IF
|
||||
|
||||
#Aqui la funcion se posicionaba en dos meses para el control del documento
|
||||
#LET mes_calc = mes_calc - 2
|
||||
|
||||
IF mes_calc <= 0 THEN
|
||||
LET mes_calc = 12
|
||||
LET a_ano = year(today) - 1
|
||||
END IF
|
||||
|
||||
LET c_ano = year(today)
|
||||
{IF a_ano != c_ano THEN
|
||||
LET numero_msg = 59
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
RETURN
|
||||
END IF}
|
||||
|
||||
SELECT MIN(fecha_corte) INTO fecha_c FROM prdtable
|
||||
WHERE fecha_corte >= p_fechas
|
||||
|
||||
SELECT MIN(dias_gracia) INTO dia FROM prdtable
|
||||
WHERE fecha_corte = fecha_c
|
||||
|
||||
IF dia IS NULL THEN
|
||||
LET dia = 0
|
||||
END IF
|
||||
SELECT a.usuario FROM seg0003
|
||||
WHERE a.usuario = USER
|
||||
|
||||
IF status != notfound THEN
|
||||
LET fecha_c = fecha_c + dia
|
||||
END IF
|
||||
IF status = notfound THEN
|
||||
LET numero_msg = 58
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
END IF
|
||||
LET comp_fech = fecha_c
|
||||
LET comp_fech1 = TODAY
|
||||
|
||||
IF comp_fech < comp_fech1 THEN
|
||||
LET numero_msg = 57
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
END IF
|
||||
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION opcion_pantalla()
|
||||
|
||||
OPTIONS
|
||||
PROMPT LINE 8,
|
||||
MESSAGE LINE 24
|
||||
CLEAR SCREEN
|
||||
CALL pantalla()
|
||||
|
||||
DISPLAY " Consultas " AT 6,24 ATTRIBUTE(BLACK)
|
||||
DISPLAY "temncs000" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "1- Estado de Cuenta del Cliente teprcs001" AT 10,2
|
||||
DISPLAY "2- Estado de Cuenta del Suplidor teprcs002" AT 11,2
|
||||
#DISPLAY "S- Retorna Menu Anterior " AT 18,28
|
||||
# ATTRIBUTE (BLACK)
|
||||
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,146 @@
|
||||
{
|
||||
----------------------------------------------------------------
|
||||
PROGRAMA : TEMNCS000
|
||||
OBJETIVO : Menu de Consulta del Sistema de tesoreria
|
||||
PROGRAMADOR : Ing. Juan F. Soto.
|
||||
FECHA REALIZACION : Junio 15, 1993.
|
||||
----------------------------------------------------------------
|
||||
}
|
||||
|
||||
GLOBALS "teprgb000.4gl"
|
||||
MAIN
|
||||
DEFER INTERRUPT
|
||||
CALL pantalla()
|
||||
CALL temncs000()
|
||||
END MAIN
|
||||
|
||||
FUNCTION temncs000()
|
||||
OPTIONS
|
||||
PROMPT LINE 8,
|
||||
MESSAGE LINE 24
|
||||
CLEAR SCREEN
|
||||
CALL pantalla()
|
||||
|
||||
DISPLAY " Consultas " AT 6,24 ATTRIBUTE(BLACK)
|
||||
DISPLAY "temncs000" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "1- Estado de Cuenta del Cliente teprcs001" AT 10,2
|
||||
DISPLAY "2- Estado de Cuenta del Suplidor teprcs002" AT 11,2
|
||||
DISPLAY "S- Retorna Menu Anterior " AT 18,28
|
||||
ATTRIBUTE (BLACK)
|
||||
|
||||
LABEL vuelve:
|
||||
LET opcion = NULL
|
||||
PROMPT " OPCION: " FOR opcion
|
||||
LET opcion = opcion clipped
|
||||
LET opcion = UPSHIFT(opcion)
|
||||
|
||||
IF opcion != "S" THEN
|
||||
SELECT unique usuario INTO p_user FROM seg0001
|
||||
WHERE usuario = user
|
||||
CALL seg000(opcion,"temncs000") RETURNING luz
|
||||
IF luz = "roja" THEN
|
||||
ERROR "NO TIENE PERMISO PARA UTILIZAR OPCION"
|
||||
GOTO vuelve
|
||||
END IF
|
||||
END IF
|
||||
|
||||
CASE
|
||||
WHEN opcion = "1"
|
||||
CALL teprcs001()
|
||||
CALL temncs000()
|
||||
WHEN opcion = "2"
|
||||
CALL teprcs002()
|
||||
CALL temncs000()
|
||||
WHEN opcion = "S" or opcion = "s"
|
||||
RETURN
|
||||
OTHERWISE
|
||||
CALL temncs000()
|
||||
END CASE
|
||||
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION pantalla()
|
||||
DEFINE fecha CHAR(8),
|
||||
hora char(5)
|
||||
LET fecha = today USING "dd/mm/yy"
|
||||
LET hora = time
|
||||
DISPLAY " R A Y . O . V A C D O M I N I C A N A " AT 4,19
|
||||
ATTRIBUTE (REVERSE,BLUE)
|
||||
DISPLAY fecha AT 4,70 ATTRIBUTE (RED)
|
||||
DISPLAY " Sistema de Tesoreria " AT 5,25 ATTRIBUTE(BLACK)
|
||||
DISPLAY hora AT 6,73 ATTRIBUTE(RED)
|
||||
|
||||
CALL fgl_drawbox(5,79,3,1)
|
||||
CALL fgl_drawbox(1,79,22,1)
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION integridad()
|
||||
IF sqlca.sqlcode < 0 THEN
|
||||
LET numero_msg = sqlca.sqlcode
|
||||
CALL msg(numero_msg)
|
||||
DISPLAY numero_msg AT 23,70
|
||||
LET bandera = 1
|
||||
LET status = 0
|
||||
SLEEP 2
|
||||
RETURN
|
||||
END IF
|
||||
RETURN
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION prd()
|
||||
|
||||
LET a_ano = year(p_fechas)
|
||||
LET mes_control = MONTH(today)
|
||||
LET mes_calc = mes_control
|
||||
|
||||
IF mes_calc = 01 THEN
|
||||
LET mes_calc = 13
|
||||
LET a_ano = year(today - 32)
|
||||
END IF
|
||||
|
||||
#Aqui la funcion se posicionaba en dos meses para el control del documento
|
||||
#LET mes_calc = mes_calc - 2
|
||||
|
||||
IF mes_calc <= 0 THEN
|
||||
LET mes_calc = 12
|
||||
LET a_ano = year(today) - 1
|
||||
END IF
|
||||
|
||||
LET c_ano = year(today)
|
||||
{IF a_ano != c_ano THEN
|
||||
LET numero_msg = 59
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
RETURN
|
||||
END IF}
|
||||
|
||||
SELECT MIN(fecha_corte) INTO fecha_c FROM prdtable
|
||||
WHERE fecha_corte >= p_fechas
|
||||
|
||||
SELECT MIN(dias_gracia) INTO dia FROM prdtable
|
||||
WHERE fecha_corte = fecha_c
|
||||
|
||||
IF dia IS NULL THEN
|
||||
LET dia = 0
|
||||
END IF
|
||||
SELECT a.usuario FROM seg0003
|
||||
WHERE a.usuario = USER
|
||||
|
||||
IF status != notfound THEN
|
||||
LET fecha_c = fecha_c + dia
|
||||
END IF
|
||||
IF status = notfound THEN
|
||||
LET numero_msg = 58
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
END IF
|
||||
LET comp_fech = fecha_c
|
||||
LET comp_fech1 = TODAY
|
||||
|
||||
IF comp_fech < comp_fech1 THEN
|
||||
LET numero_msg = 57
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
END IF
|
||||
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,203 @@
|
||||
{
|
||||
----------------------------------------------------------------
|
||||
PROGRAMA : TEMNMT000
|
||||
OBJETIVO : Menu de Mantenimiento del Sistema de tesoreria
|
||||
PROGRAMADOR : Ing. Juan F. Soto.
|
||||
FECHA REALIZACION : Junio 15, 1993.
|
||||
----------------------------------------------------------------
|
||||
}
|
||||
|
||||
GLOBALS "teprgb000.4gl"
|
||||
MAIN
|
||||
DEFER INTERRUPT
|
||||
CALL pantalla()
|
||||
CALL temnmt000()
|
||||
END MAIN
|
||||
|
||||
FUNCTION temnmt000()
|
||||
CALL opcion_pantalla()
|
||||
|
||||
MENU "Mantenimientos: "
|
||||
COMMAND "1"
|
||||
CALL seg000(1,"temnmt000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprmt001()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "2"
|
||||
CALL seg000(2,"temnmt000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprmt002()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "3"
|
||||
CALL seg000(1,"temnmt000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprmt003()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "4"
|
||||
CALL seg000(4,"temnmt000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprmt004()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "5"
|
||||
CALL seg000(5,"temnmt000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprmt005()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "6"
|
||||
CALL seg000(6,"temnmt000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprmt006()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "7"
|
||||
CALL seg000(7,"temnmt000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprmt007()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "8"
|
||||
CALL seg000(8,"temnmt000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprmt008()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "9"
|
||||
CALL seg000(9,"temnmt000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprmt022()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "10"
|
||||
CALL seg000(10,"temnmt000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprmt010()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "11"
|
||||
CALL seg000(11,"temnmt000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprmt011()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "Retornar"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION pantalla()
|
||||
DEFINE fecha CHAR(10),
|
||||
hora char(5)
|
||||
LET fecha = today USING "dd/mm/yyyy"
|
||||
LET hora = time
|
||||
DISPLAY " R A Y . O . V A C D O M I N I C A N A " AT 4,19
|
||||
ATTRIBUTE (REVERSE,BLUE)
|
||||
DISPLAY fecha AT 4,68 ATTRIBUTE (RED)
|
||||
DISPLAY " Sistema de Tesoreria " AT 5,25 ATTRIBUTE(RED)
|
||||
DISPLAY hora AT 6,73 ATTRIBUTE(RED)
|
||||
|
||||
CALL fgl_drawbox(5,79,3,1)
|
||||
CALL fgl_drawbox(1,79,22,1)
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION integridad()
|
||||
IF sqlca.sqlcode < 0 THEN
|
||||
LET numero_msg = sqlca.sqlcode
|
||||
CALL msg(numero_msg)
|
||||
DISPLAY numero_msg AT 23,70
|
||||
LET bandera = 1
|
||||
LET status = 0
|
||||
SLEEP 2
|
||||
RETURN
|
||||
END IF
|
||||
RETURN
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION prd()
|
||||
|
||||
LET a_ano = year(p_fechas)
|
||||
LET mes_control = MONTH(today)
|
||||
LET mes_calc = mes_control
|
||||
|
||||
IF mes_calc = 01 THEN
|
||||
LET mes_calc = 13
|
||||
LET a_ano = year(today - 32)
|
||||
END IF
|
||||
|
||||
#Aqui la funcion se posicionaba en dos meses para el control del documento
|
||||
#LET mes_calc = mes_calc - 2
|
||||
|
||||
IF mes_calc <= 0 THEN
|
||||
LET mes_calc = 12
|
||||
LET a_ano = year(today) - 1
|
||||
END IF
|
||||
|
||||
LET c_ano = year(today)
|
||||
{IF a_ano != c_ano THEN
|
||||
LET numero_msg = 59
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
RETURN
|
||||
END IF}
|
||||
|
||||
SELECT MIN(fecha_corte) INTO fecha_c FROM prdtable
|
||||
WHERE fecha_corte >= p_fechas
|
||||
|
||||
SELECT MIN(dias_gracia) INTO dia FROM prdtable
|
||||
WHERE fecha_corte = fecha_c
|
||||
|
||||
IF status = notfound THEN
|
||||
LET numero_msg = 58
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
END IF
|
||||
|
||||
IF dia IS NULL THEN
|
||||
LET dia = 0
|
||||
END IF
|
||||
SELECT a.usuario FROM seg0003 a
|
||||
WHERE a.usuario = USER
|
||||
|
||||
IF status != notfound THEN
|
||||
LET fecha_c = fecha_c + dia
|
||||
END IF
|
||||
LET comp_fech = fecha_c
|
||||
LET comp_fech1 = TODAY
|
||||
|
||||
IF comp_fech < comp_fech1 THEN
|
||||
LET numero_msg = 57
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
END IF
|
||||
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION opcion_pantalla()
|
||||
|
||||
OPTIONS
|
||||
PROMPT LINE 8,
|
||||
MESSAGE LINE 24
|
||||
CLEAR SCREEN
|
||||
CALL pantalla()
|
||||
|
||||
DISPLAY " Mantenimientos " AT 6,24 ATTRIBUTE(BLACK)
|
||||
DISPLAY "temnmt000" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "1-Registro de Depositos teprmt001" AT 10,2
|
||||
DISPLAY "2-Maestra de Procedencias teprmt002" AT 11,2
|
||||
DISPLAY "3-Comisiones Vendedores Anterior teprmt003" AT 12,2
|
||||
DISPLAY "4-Maestra Partidas Cash-Flow teprmt004" AT 13,2
|
||||
DISPLAY "5-Estimado de Partidas Cash-Flow teprmt005" AT 14,2
|
||||
DISPLAY "6-Histor. Real Partidas Cash-Flow teprmt006" AT 15,2
|
||||
DISPLAY "7-Bace. Final Partidas Cash Flow teprmt007" AT 16,2
|
||||
DISPLAY "8-Actual. Relacion Cash Flow/CK. teprmt008" AT 17,2
|
||||
DISPLAY "9-Asigna Comisiones A Vededores teprmt022" AT 18,2
|
||||
DISPLAY "10-Comisiones Vigentes teprmt010" AT 19,2
|
||||
DISPLAY "11-Asignacion Vend. teprmt011" AT 10,46
|
||||
#DISPLAY "S- Retorna Menu Anterior " AT 20,28
|
||||
# ATTRIBUTE (BLACK)
|
||||
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,180 @@
|
||||
{
|
||||
----------------------------------------------------------------
|
||||
PROGRAMA : TEMNMT000
|
||||
OBJETIVO : Menu de Mantenimiento del Sistema de tesoreria
|
||||
PROGRAMADOR : Ing. Juan F. Soto.
|
||||
FECHA REALIZACION : Junio 15, 1993.
|
||||
----------------------------------------------------------------
|
||||
}
|
||||
|
||||
GLOBALS "teprgb000.4gl"
|
||||
MAIN
|
||||
DEFER INTERRUPT
|
||||
CALL pantalla()
|
||||
CALL temnmt000()
|
||||
END MAIN
|
||||
|
||||
FUNCTION temnmt000()
|
||||
OPTIONS
|
||||
PROMPT LINE 8,
|
||||
MESSAGE LINE 24
|
||||
CLEAR SCREEN
|
||||
CALL pantalla()
|
||||
|
||||
DISPLAY " Mantenimientos " AT 6,24 ATTRIBUTE(BLACK)
|
||||
DISPLAY "temnmt000" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "1-Registro de Depositos teprmt001" AT 10,2
|
||||
DISPLAY "2-Maestra de Procedencias teprmt002" AT 11,2
|
||||
DISPLAY "3-Comisiones Vendedores Anterior teprmt003" AT 12,2
|
||||
DISPLAY "4-Maestra Partidas Cash-Flow teprmt004" AT 13,2
|
||||
DISPLAY "5-Estimado de Partidas Cash-Flow teprmt005" AT 14,2
|
||||
DISPLAY "6-Histor. Real Partidas Cash-Flow teprmt006" AT 15,2
|
||||
DISPLAY "7-Bace. Final Partidas Cash Flow teprmt007" AT 16,2
|
||||
DISPLAY "8-Actual. Relacion Cash Flow/CK. teprmt008" AT 17,2
|
||||
DISPLAY "9-Asigna Comisiones A Vededores teprmt022" AT 18,2
|
||||
DISPLAY "10-Comisiones Vigentes teprmt010" AT 19,2
|
||||
DISPLAY "11-Asignacion Vend. teprmt011" AT 10,46
|
||||
DISPLAY "S- Retorna Menu Anterior " AT 20,28
|
||||
ATTRIBUTE (BLACK)
|
||||
|
||||
LABEL vuelve:
|
||||
LET opcion = NULL
|
||||
PROMPT " OPCION: " FOR opcion
|
||||
LET opcion = opcion clipped
|
||||
LET opcion = UPSHIFT(opcion)
|
||||
|
||||
IF opcion != "S" THEN
|
||||
CALL seg000(opcion,"temnmt000") RETURNING luz
|
||||
IF luz = "roja" THEN
|
||||
ERROR "NO TIENE PERMISO PARA UTILIZAR OPCION"
|
||||
GOTO vuelve
|
||||
END IF
|
||||
END IF
|
||||
CASE
|
||||
WHEN opcion = "1"
|
||||
CALL teprmt001()
|
||||
CALL temnmt000()
|
||||
WHEN opcion = "2"
|
||||
CALL teprmt002()
|
||||
CALL temnmt000()
|
||||
WHEN opcion = "3"
|
||||
CALL teprmt003()
|
||||
CALL temnmt000()
|
||||
WHEN opcion = "4"
|
||||
CALL teprmt004()
|
||||
CALL temnmt000()
|
||||
WHEN opcion = "5"
|
||||
CALL teprmt005()
|
||||
CALL temnmt000()
|
||||
WHEN opcion = "6"
|
||||
CALL teprmt006()
|
||||
CALL temnmt000()
|
||||
WHEN opcion = "7"
|
||||
CALL teprmt007()
|
||||
CALL temnmt000()
|
||||
WHEN opcion = "8"
|
||||
CALL teprmt008()
|
||||
CALL temnmt000()
|
||||
WHEN opcion = "9"
|
||||
CALL teprmt022()
|
||||
CALL temnmt000()
|
||||
WHEN opcion = "10"
|
||||
CALL teprmt010()
|
||||
CALL temnmt000()
|
||||
WHEN opcion = "11"
|
||||
CALL teprmt011()
|
||||
CALL temnmt000()
|
||||
WHEN opcion = "S" or opcion = "s"
|
||||
RETURN
|
||||
OTHERWISE
|
||||
CALL temnmt000()
|
||||
END CASE
|
||||
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION pantalla()
|
||||
DEFINE fecha CHAR(8),
|
||||
hora char(5)
|
||||
LET fecha = today USING "dd/mm/yy"
|
||||
LET hora = time
|
||||
DISPLAY " R A Y . O . V A C D O M I N I C A N A " AT 4,19
|
||||
ATTRIBUTE (REVERSE,BLUE)
|
||||
DISPLAY fecha AT 4,70 ATTRIBUTE (RED)
|
||||
DISPLAY " Sistema de Tesoreria " AT 5,25 ATTRIBUTE(RED)
|
||||
DISPLAY hora AT 6,73 ATTRIBUTE(RED)
|
||||
|
||||
CALL fgl_drawbox(5,79,3,1)
|
||||
CALL fgl_drawbox(1,79,22,1)
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION integridad()
|
||||
IF sqlca.sqlcode < 0 THEN
|
||||
LET numero_msg = sqlca.sqlcode
|
||||
CALL msg(numero_msg)
|
||||
DISPLAY numero_msg AT 23,70
|
||||
LET bandera = 1
|
||||
LET status = 0
|
||||
SLEEP 2
|
||||
RETURN
|
||||
END IF
|
||||
RETURN
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION prd()
|
||||
|
||||
LET a_ano = year(p_fechas)
|
||||
LET mes_control = MONTH(today)
|
||||
LET mes_calc = mes_control
|
||||
|
||||
IF mes_calc = 01 THEN
|
||||
LET mes_calc = 13
|
||||
LET a_ano = year(today - 32)
|
||||
END IF
|
||||
|
||||
#Aqui la funcion se posicionaba en dos meses para el control del documento
|
||||
#LET mes_calc = mes_calc - 2
|
||||
|
||||
IF mes_calc <= 0 THEN
|
||||
LET mes_calc = 12
|
||||
LET a_ano = year(today) - 1
|
||||
END IF
|
||||
|
||||
LET c_ano = year(today)
|
||||
{IF a_ano != c_ano THEN
|
||||
LET numero_msg = 59
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
RETURN
|
||||
END IF}
|
||||
|
||||
SELECT MIN(fecha_corte) INTO fecha_c FROM prdtable
|
||||
WHERE fecha_corte >= p_fechas
|
||||
|
||||
SELECT MIN(dias_gracia) INTO dia FROM prdtable
|
||||
WHERE fecha_corte = fecha_c
|
||||
|
||||
IF status = notfound THEN
|
||||
LET numero_msg = 58
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
END IF
|
||||
|
||||
IF dia IS NULL THEN
|
||||
LET dia = 0
|
||||
END IF
|
||||
SELECT a.usuario FROM seg0003 a
|
||||
WHERE a.usuario = USER
|
||||
|
||||
IF status != notfound THEN
|
||||
LET fecha_c = fecha_c + dia
|
||||
END IF
|
||||
LET comp_fech = fecha_c
|
||||
LET comp_fech1 = TODAY
|
||||
|
||||
IF comp_fech < comp_fech1 THEN
|
||||
LET numero_msg = 57
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
END IF
|
||||
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,204 @@
|
||||
{
|
||||
----------------------------------------------------------------
|
||||
PROGRAMA : TEMNRP000
|
||||
OBJETIVO : Menu de Reporte del Sistema de tesoreria
|
||||
PROGRAMADOR : Ing. Juan F. Soto.
|
||||
FECHA REALIZACION : Junio 15, 1993.
|
||||
----------------------------------------------------------------
|
||||
}
|
||||
|
||||
GLOBALS "teprgb000.4gl"
|
||||
MAIN
|
||||
DEFER INTERRUPT
|
||||
CALL pantalla()
|
||||
CALL temnrp000()
|
||||
END MAIN
|
||||
|
||||
FUNCTION temnrp000()
|
||||
CALL opcion_pantalla()
|
||||
|
||||
MENU "Reportes: "
|
||||
COMMAND "1"
|
||||
CALL seg000(1,"temnrp000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprrp001()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "2"
|
||||
CALL seg000(5,"temnrp000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprrp005()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "3"
|
||||
CALL seg000(6,"temnrp000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprrp006()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "4"
|
||||
CALL seg000(7,"temnrp000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprrp007()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "5"
|
||||
CALL seg000(8,"temnrp000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprrp008()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "6"
|
||||
CALL seg000(9,"temnrp000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprrp009()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "7"
|
||||
CALL seg000(10,"temnrp000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprrp010()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "8"
|
||||
CALL seg000(11,"temnrp000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprrp011()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "9"
|
||||
CALL seg000(12,"temnrp000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprrp012()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "10"
|
||||
CALL seg000(13,"temnrp000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprrp013()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "11"
|
||||
CALL seg000(14,"temnrp000") RETURNING luz
|
||||
IF luz = "azul" THEN
|
||||
CALL teprrp014()
|
||||
CALL opcion_pantalla()
|
||||
END IF
|
||||
COMMAND "Retornar"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION pantalla()
|
||||
DEFINE fecha CHAR(10),
|
||||
hora char(5)
|
||||
LET fecha = today USING "dd/mm/yyyy"
|
||||
LET hora = time
|
||||
DISPLAY " R A Y . O . V A C D O M I N I C A N A " AT 4,19
|
||||
ATTRIBUTE (REVERSE,BLUE)
|
||||
DISPLAY fecha AT 4,68 ATTRIBUTE (RED)
|
||||
DISPLAY " Sistema de Tesoreria " AT 5,25 ATTRIBUTE(BLACK)
|
||||
DISPLAY hora AT 6,73 ATTRIBUTE(RED)
|
||||
|
||||
CALL fgl_drawbox(5,79,3,1)
|
||||
CALL fgl_drawbox(1,79,22,1)
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION integridad()
|
||||
IF sqlca.sqlcode < 0 THEN
|
||||
LET numero_msg = sqlca.sqlcode
|
||||
CALL msg(numero_msg)
|
||||
DISPLAY numero_msg AT 23,70
|
||||
LET bandera = 1
|
||||
LET status = 0
|
||||
SLEEP 2
|
||||
RETURN
|
||||
END IF
|
||||
RETURN
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION prd()
|
||||
|
||||
LET a_ano = year(p_fechas)
|
||||
LET mes_control = MONTH(today)
|
||||
LET mes_calc = mes_control
|
||||
|
||||
IF mes_calc = 01 THEN
|
||||
LET mes_calc = 13
|
||||
LET a_ano = year(today - 32)
|
||||
END IF
|
||||
|
||||
#Aqui la funcion se posicionaba en dos meses para el control del documento
|
||||
#LET mes_calc = mes_calc - 2
|
||||
|
||||
IF mes_calc <= 0 THEN
|
||||
LET mes_calc = 12
|
||||
LET a_ano = year(today) - 1
|
||||
END IF
|
||||
|
||||
LET c_ano = year(today)
|
||||
{IF a_ano != c_ano THEN
|
||||
LET numero_msg = 59
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
RETURN
|
||||
END IF}
|
||||
|
||||
SELECT MIN(fecha_corte) INTO fecha_c FROM prdtable
|
||||
WHERE fecha_corte >= p_fechas
|
||||
|
||||
SELECT MIN(dias_gracia) INTO dia FROM prdtable
|
||||
WHERE fecha_corte = fecha_c
|
||||
|
||||
IF dia IS NULL THEN
|
||||
LET dia = 0
|
||||
END IF
|
||||
SELECT a.usuario FROM seg0003
|
||||
WHERE a.usuario = USER
|
||||
|
||||
IF status != notfound THEN
|
||||
LET fecha_c = fecha_c + dia
|
||||
END IF
|
||||
IF status = notfound THEN
|
||||
LET numero_msg = 58
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
END IF
|
||||
LET comp_fech = fecha_c
|
||||
LET comp_fech1 = TODAY
|
||||
|
||||
IF comp_fech < comp_fech1 THEN
|
||||
LET numero_msg = 57
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
END IF
|
||||
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION opcion_pantalla()
|
||||
|
||||
OPTIONS
|
||||
PROMPT LINE 8,
|
||||
MESSAGE LINE 24
|
||||
CLEAR SCREEN
|
||||
CALL pantalla()
|
||||
|
||||
LET impresor = FGL_GETENV("IMP")
|
||||
|
||||
DISPLAY " Reportes " AT 6,24 ATTRIBUTE(BLACK)
|
||||
DISPLAY "temnrp000" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY " 1-Validacion de Depositos teprrp001" AT 10,1
|
||||
DISPLAY " 2-Comision/Cobro Plan Ranch teprrp005" AT 11,1
|
||||
DISPLAY " 3-Valid. Cheques Devueltos teprrp006" AT 12,1
|
||||
DISPLAY " 4-Relacion Cheques Emitidos teprrp007" AT 13,1
|
||||
DISPLAY " 5-C-F Compar. Real/Estimado teprrp008" AT 14,1
|
||||
DISPLAY " 6-C-F Real Diario/Acumulado teprrp009" AT 15,1
|
||||
DISPLAY " 7-C-F Real Comp. Tres Anos teprrp010" AT 16,1
|
||||
DISPLAY " 8-Panoramico Cash Flow Real teprrp011" AT 17,1
|
||||
DISPLAY " 9-Panoram. Cash Flow Estim. teprrp012" AT 10,40
|
||||
DISPLAY "10-Maestra de Partidas C. F. teprrp013" AT 11,40
|
||||
DISPLAY "11-Cheques Emitido x Partida teprrp014" AT 12,40
|
||||
#DISPLAY "S- Retorna Menu Anterior " AT 21,28
|
||||
# ATTRIBUTE (BLACK)
|
||||
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,196 @@
|
||||
{
|
||||
----------------------------------------------------------------
|
||||
PROGRAMA : TEMNRP000
|
||||
OBJETIVO : Menu de Reporte del Sistema de tesoreria
|
||||
PROGRAMADOR : Ing. Juan F. Soto.
|
||||
FECHA REALIZACION : Junio 15, 1993.
|
||||
----------------------------------------------------------------
|
||||
}
|
||||
|
||||
GLOBALS "teprgb000.4gl"
|
||||
MAIN
|
||||
DEFER INTERRUPT
|
||||
CALL pantalla()
|
||||
CALL temnrp000()
|
||||
END MAIN
|
||||
|
||||
FUNCTION temnrp000()
|
||||
OPTIONS
|
||||
PROMPT LINE 8,
|
||||
MESSAGE LINE 24
|
||||
CLEAR SCREEN
|
||||
CALL pantalla()
|
||||
|
||||
LET impresor = FGL_GETENV("IMP")
|
||||
|
||||
DISPLAY " Reportes " AT 6,24 ATTRIBUTE(BLACK)
|
||||
DISPLAY "temnrp000" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY " 1-Validacion de Depositos teprrp001" AT 10,1
|
||||
DISPLAY " 2-Comision Por Ventas teprrp002" AT 11,1
|
||||
DISPLAY " 3-Comision Por Cobros teprrp003" AT 12,1
|
||||
DISPLAY " 4-Estados de Cuentas teprrp004" AT 13,1
|
||||
DISPLAY " 5-Comision/Cobro Plan Ranch teprrp005" AT 14,1
|
||||
DISPLAY " 6-Valid. Cheques Devueltos teprrp006" AT 15,1
|
||||
DISPLAY " 7-Relacion Cheques Emitidos teprrp007" AT 16,1
|
||||
DISPLAY " 8-C-F Compar. Real/Estimado teprrp008" AT 17,1
|
||||
DISPLAY " 9-C-F Real Diario/Acumulado teprrp009" AT 18,1
|
||||
DISPLAY "10-C-F Real Comp. Tres Anos teprrp010" AT 19,1
|
||||
DISPLAY "11-Panoramico Cash Flow Real teprrp011" AT 20,1
|
||||
DISPLAY "12-Panoram. Cash Flow Estim. teprrp012" AT 10,40
|
||||
DISPLAY "13-Maestra de Partidas C. F. teprrp013" AT 11,40
|
||||
DISPLAY "14-Cheques Emitido x Partida teprrp014" AT 12,40
|
||||
DISPLAY "S- Retorna Menu Anterior " AT 21,28
|
||||
ATTRIBUTE (BLACK)
|
||||
|
||||
LABEL vuelve:
|
||||
LET opcion = NULL
|
||||
PROMPT " OPCION: " FOR opcion
|
||||
LET opcion = opcion CLIPPED
|
||||
LET opcion = UPSHIFT(opcion)
|
||||
|
||||
IF opcion != "S" THEN
|
||||
SELECT unique usuario INTO p_user FROM seg0001
|
||||
WHERE usuario = user
|
||||
CALL seg000(opcion,"temnrp000") RETURNING luz
|
||||
IF luz = "roja" THEN
|
||||
ERROR "NO TIENE PERMISO PARA UTILIZAR OPCION"
|
||||
GOTO vuelve
|
||||
END IF
|
||||
END IF
|
||||
|
||||
CASE
|
||||
WHEN opcion = "1"
|
||||
CALL teprrp001()
|
||||
CALL temnrp000()
|
||||
WHEN opcion = "2"
|
||||
CALL teprrp002()
|
||||
CALL temnrp000()
|
||||
WHEN opcion = "3"
|
||||
CALL teprrp003()
|
||||
CALL temnrp000()
|
||||
WHEN opcion = "4"
|
||||
CALL teprrp004()
|
||||
CALL temnrp000()
|
||||
WHEN opcion = "5"
|
||||
CALL teprrp005()
|
||||
CALL temnrp000()
|
||||
WHEN opcion = "6"
|
||||
CALL teprrp006()
|
||||
CALL temnrp000()
|
||||
WHEN opcion = "7"
|
||||
CALL teprrp007()
|
||||
CALL temnrp000()
|
||||
WHEN opcion = "8"
|
||||
CALL teprrp008()
|
||||
CALL temnrp000()
|
||||
WHEN opcion = "9"
|
||||
CALL teprrp009()
|
||||
CALL temnrp000()
|
||||
WHEN opcion = "10"
|
||||
CALL teprrp010()
|
||||
CALL temnrp000()
|
||||
WHEN opcion = "11"
|
||||
CALL teprrp011()
|
||||
CALL temnrp000()
|
||||
WHEN opcion = "12"
|
||||
CALL teprrp012()
|
||||
CALL temnrp000()
|
||||
WHEN opcion = "13"
|
||||
CALL teprrp013()
|
||||
CALL temnrp000()
|
||||
WHEN opcion = "14"
|
||||
CALL teprrp014()
|
||||
CALL temnrp000()
|
||||
WHEN opcion = "S"
|
||||
RETURN
|
||||
OTHERWISE
|
||||
CALL temnrp000()
|
||||
END CASE
|
||||
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION pantalla()
|
||||
DEFINE fecha CHAR(8),
|
||||
hora char(5)
|
||||
LET fecha = today USING "dd/mm/yy"
|
||||
LET hora = time
|
||||
DISPLAY " R A Y . O . V A C D O M I N I C A N A " AT 4,19
|
||||
ATTRIBUTE (REVERSE,BLUE)
|
||||
DISPLAY fecha AT 4,70 ATTRIBUTE (RED)
|
||||
DISPLAY " Sistema de Tesoreria " AT 5,25 ATTRIBUTE(BLACK)
|
||||
DISPLAY hora AT 6,73 ATTRIBUTE(RED)
|
||||
|
||||
CALL fgl_drawbox(5,79,3,1)
|
||||
CALL fgl_drawbox(1,79,22,1)
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION integridad()
|
||||
IF sqlca.sqlcode < 0 THEN
|
||||
LET numero_msg = sqlca.sqlcode
|
||||
CALL msg(numero_msg)
|
||||
DISPLAY numero_msg AT 23,70
|
||||
LET bandera = 1
|
||||
LET status = 0
|
||||
SLEEP 2
|
||||
RETURN
|
||||
END IF
|
||||
RETURN
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION prd()
|
||||
|
||||
LET a_ano = year(p_fechas)
|
||||
LET mes_control = MONTH(today)
|
||||
LET mes_calc = mes_control
|
||||
|
||||
IF mes_calc = 01 THEN
|
||||
LET mes_calc = 13
|
||||
LET a_ano = year(today - 32)
|
||||
END IF
|
||||
|
||||
#Aqui la funcion se posicionaba en dos meses para el control del documento
|
||||
#LET mes_calc = mes_calc - 2
|
||||
|
||||
IF mes_calc <= 0 THEN
|
||||
LET mes_calc = 12
|
||||
LET a_ano = year(today) - 1
|
||||
END IF
|
||||
|
||||
LET c_ano = year(today)
|
||||
{IF a_ano != c_ano THEN
|
||||
LET numero_msg = 59
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
RETURN
|
||||
END IF}
|
||||
|
||||
SELECT MIN(fecha_corte) INTO fecha_c FROM prdtable
|
||||
WHERE fecha_corte >= p_fechas
|
||||
|
||||
SELECT MIN(dias_gracia) INTO dia FROM prdtable
|
||||
WHERE fecha_corte = fecha_c
|
||||
|
||||
IF dia IS NULL THEN
|
||||
LET dia = 0
|
||||
END IF
|
||||
SELECT a.usuario FROM seg0003
|
||||
WHERE a.usuario = USER
|
||||
|
||||
IF status != notfound THEN
|
||||
LET fecha_c = fecha_c + dia
|
||||
END IF
|
||||
IF status = notfound THEN
|
||||
LET numero_msg = 58
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
END IF
|
||||
LET comp_fech = fecha_c
|
||||
LET comp_fech1 = TODAY
|
||||
|
||||
IF comp_fech < comp_fech1 THEN
|
||||
LET numero_msg = 57
|
||||
CALL msg(numero_msg)
|
||||
LET bandera = 1
|
||||
END IF
|
||||
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,17 @@
|
||||
fgl2p temn00000.4gl
|
||||
fgl2p temnmt000.4gl
|
||||
fgl2p teprmt001.4gl
|
||||
fgl2p teprmt002.4gl
|
||||
fgl2p teprmt003.4gl
|
||||
fgl2p teprmt004.4gl
|
||||
fgl2p teprmt005.4gl
|
||||
fgl2p teprmt006.4gl
|
||||
fgl2p teprmt007.4gl
|
||||
fgl2p teprmt008.4gl
|
||||
fgl2p teprmt010.4gl
|
||||
fgl2p teprmt011.4gl
|
||||
fgl2p teprmt021.4gl
|
||||
fgl2p teprmt022.4gl
|
||||
|
||||
fgl2p -o temn00000.42r temn00000.42m msg.42m seg000.42m
|
||||
fgl2p -o temnmt000.42r temnmt000.42m termo.42m teprmt001.42m teprmt002.42m teprmt003.42m teprmt004.42m teprmt005.42m teprmt006.42m teprmt007.42m teprmt008.42m teprmt010.42m teprmt011.42m teprmt022.42m seg000.42m msg.42m
|
||||
@@ -0,0 +1,230 @@
|
||||
{
|
||||
-------------------------------------------------------------------------------
|
||||
PROGRAMA : TEPRCS001
|
||||
OBJETIVO : Estado De Cuentas
|
||||
PROGRAMADOR : Tadeo A. Ferreras
|
||||
FECHA REALIZACION : Junio 8, 1993
|
||||
-------------------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
DEFINE fecha DATE
|
||||
DEFINE balance4,balance3,p_valor,p_monto DECIMAL(12,2)
|
||||
DEFINE mov CHAR(1)
|
||||
DEFINE pcasa,pcalle,pbarrio CHAR(20)
|
||||
DEFINE provincia CHAR(3)
|
||||
DEFINE tipo CHAR(1)
|
||||
DEFINE idx_1, idx_2, idx_3 SMALLINT
|
||||
DEFINE salir, salir1, salir3, tipo_venta CHAR(1)
|
||||
DEFINE selec5, selec6 CHAR(1500)
|
||||
DEFINE cuenta1 RECORD
|
||||
fecha_inicial DATE,
|
||||
fecha_final DATE,
|
||||
tipo_cliente LIKE cctb00001.tipo_cliente,
|
||||
sec_cliente LIKE cctb00001.sec_cliente,
|
||||
nombre LIKE vetb00004.nombre,
|
||||
direccion CHAR(60),
|
||||
ciudad CHAR(60),
|
||||
limite DECIMAL(12,2),
|
||||
prima DECIMAL(5,2),
|
||||
balance DECIMAL(12,2)
|
||||
END RECORD
|
||||
DEFINE cuenta2 ARRAY[500] OF RECORD
|
||||
num_doc LIKE cctb00001.num_doc,
|
||||
tipo_doc LIKE cctb00001.tipo_doc,
|
||||
fecha_orig LIKE cctb00001.fecha_orig,
|
||||
aplica_a LIKE cctb00001.aplica_a,
|
||||
debito DECIMAL(12,2),
|
||||
credito DECIMAL(12,2),
|
||||
balance1 DECIMAL(12,2)
|
||||
END RECORD
|
||||
DEFINE apartado CHAR(30)
|
||||
|
||||
DEFINE busca_d RECORD
|
||||
num_doc LIKE cctb00001.num_doc,
|
||||
tipo_doc LIKE cctb00001.tipo_doc,
|
||||
fecha_orig LIKE cctb00001.fecha_orig,
|
||||
aplica_a LIKE cctb00001.aplica_a,
|
||||
valor DECIMAL(12,2)
|
||||
END RECORD
|
||||
|
||||
FUNCTION teprcs001()
|
||||
|
||||
# WHENEVER ERROR CONTINUE
|
||||
|
||||
OPTIONS
|
||||
FORM LINE 8,
|
||||
ERROR LINE 23,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmcs001 FROM "tefmcs001"
|
||||
DISPLAY FORM tefmcs001
|
||||
CALL pantalla()
|
||||
DISPLAY "teprcs001" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Estado Cuentas " AT 6,32ATTRIBUTE(BLACK)
|
||||
|
||||
LABEL volvera:
|
||||
INPUT BY NAME cuenta1.*
|
||||
|
||||
AFTER FIELD fecha_inicial
|
||||
IF cuenta1.fecha_inicial is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_inicial
|
||||
END IF
|
||||
|
||||
BEFORE FIELD fecha_final
|
||||
LET cuenta1.fecha_final = today
|
||||
|
||||
AFTER FIELD fecha_final
|
||||
IF cuenta1.fecha_final is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_final
|
||||
END IF
|
||||
|
||||
IF cuenta1.fecha_final < cuenta1.fecha_inicial THEN
|
||||
LET numero_msg = 86
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_final
|
||||
END IF
|
||||
|
||||
AFTER FIELD tipo_cliente
|
||||
IF cuenta1.tipo_cliente IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD tipo_cliente
|
||||
END IF
|
||||
|
||||
AFTER FIELD sec_cliente
|
||||
IF cuenta1.sec_cliente IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_cliente
|
||||
END IF
|
||||
|
||||
SELECT UNIQUE ventas INTO tipo FROM vetb00002 WHERE
|
||||
tipo_cliente = cuenta1.tipo_cliente AND
|
||||
sec_cliente = cuenta1.sec_cliente
|
||||
|
||||
SELECT nombre,cod_provincia,zona_postal,limite_credito
|
||||
INTO cuenta1.nombre,provincia,apartado,cuenta1.limite
|
||||
FROM vetb00004
|
||||
WHERE tipo_cliente = cuenta1.tipo_cliente AND
|
||||
sec_cliente = cuenta1.sec_cliente AND
|
||||
status_t IS NULL
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD tipo_cliente
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME cuenta1.nombre,cuenta1.limite
|
||||
|
||||
SELECT calle,casa_num,barrio INTO pcalle,pcasa,pbarrio
|
||||
FROM vetb00005 WHERE tipo_cliente = cuenta1.tipo_cliente AND
|
||||
sec_cliente = cuenta1.sec_cliente
|
||||
|
||||
LET cuenta1.direccion = pcalle clipped," ",pcasa clipped,", ",pbarrio clipped
|
||||
|
||||
DISPLAY BY NAME cuenta1.direccion
|
||||
|
||||
IF tipo = 1 THEN
|
||||
SELECT nombre_provincia INTO cuenta1.ciudad FROM vetb00020
|
||||
WHERE cod_provincia = provincia
|
||||
ELSE
|
||||
SELECT nom_pais INTO cuenta1.ciudad FROM cotb00018
|
||||
WHERE cod_pais = provincia
|
||||
END IF
|
||||
|
||||
LET cuenta1.ciudad = cuenta1.ciudad clipped," ",apartado clipped
|
||||
DISPLAY BY NAME cuenta1.ciudad
|
||||
DISPLAY BY NAME cuenta1.limite
|
||||
|
||||
AFTER FIELD prima
|
||||
DISPLAY "Buscando Balance Inicial... Espere" AT 23,1 ATTRIBUTE (BOLD)
|
||||
SELECT sum(a.valor+a.monto_desc)
|
||||
INTO cuenta1.balance
|
||||
FROM cctb00001 a
|
||||
WHERE
|
||||
a.status_t is null
|
||||
and a.fecha_orig < cuenta1.fecha_inicial
|
||||
and a.tipo_cliente = cuenta1.tipo_cliente
|
||||
and a.sec_cliente = cuenta1.sec_cliente
|
||||
|
||||
IF cuenta1.balance IS NULL THEN
|
||||
LET cuenta1.balance = 0
|
||||
END IF
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET cuenta1.balance = 0
|
||||
END IF
|
||||
|
||||
IF cuenta1.prima is not null THEN
|
||||
LET cuenta1.balance = cuenta1.balance * cuenta1.prima
|
||||
END IF
|
||||
DISPLAY " " AT 23,1 ATTRIBUTE (BOLD)
|
||||
LET fecha = cuenta1.fecha_inicial
|
||||
DISPLAY BY NAME cuenta1.balance
|
||||
END INPUT
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DECLARE buscar CURSOR FOR
|
||||
SELECT a.num_doc,a.tipo_doc,a.fecha_orig,a.aplica_a,a.valor+a.monto_desc
|
||||
FROM cctb00001 a WHERE a.status_t IS NULL AND
|
||||
a.tipo_cliente = cuenta1.tipo_cliente AND
|
||||
a.sec_cliente = cuenta1.sec_cliente AND
|
||||
a.fecha_orig BETWEEN cuenta1.fecha_inicial AND cuenta1.fecha_final
|
||||
ORDER BY 4,3
|
||||
|
||||
DISPLAY "<< Buscando Informacion ... Espere Por Favor. >>" AT 24,14
|
||||
ATTRIBUTE (REVERSE,BOLD)
|
||||
|
||||
LET idx_1 = 1
|
||||
DISPLAY " " AT 24,14
|
||||
FOREACH buscar INTO busca_d.*
|
||||
LET cuenta2[idx_1].num_doc = busca_d.num_doc
|
||||
LET cuenta2[idx_1].tipo_doc = busca_d.tipo_doc
|
||||
LET cuenta2[idx_1].aplica_a = busca_d.aplica_a
|
||||
LET cuenta2[idx_1].fecha_orig = busca_d.fecha_orig using "dd/mm/yyyy"
|
||||
|
||||
IF cuenta1.prima is not null THEN
|
||||
LET busca_d.valor = busca_d.valor * cuenta1.prima
|
||||
END IF
|
||||
|
||||
IF busca_d.valor < 0 THEN
|
||||
LET cuenta1.balance = cuenta1.balance + busca_d.valor
|
||||
LET cuenta2[idx_1].balance1 = cuenta1.balance
|
||||
LET cuenta2[idx_1].credito = busca_d.valor
|
||||
LET cuenta2[idx_1].debito = 0
|
||||
ELSE
|
||||
LET cuenta2[idx_1].debito = busca_d.valor
|
||||
LET cuenta1.balance = cuenta1.balance + busca_d.valor
|
||||
LET cuenta2[idx_1].balance1 = cuenta1.balance
|
||||
LET cuenta2[idx_1].credito = 0
|
||||
END IF
|
||||
|
||||
LET idx_1 = idx_1 + 1
|
||||
|
||||
END FOREACH
|
||||
CALL SET_COUNT(idx_1 - 1)
|
||||
|
||||
DISPLAY ARRAY cuenta2 TO cuenta.*
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
CLEAR FORM
|
||||
GOTO volvera
|
||||
END FUNCTION
|
||||
|
||||
@@ -0,0 +1,257 @@
|
||||
{
|
||||
-------------------------------------------------------------------------------
|
||||
PROGRAMA : TEPRCS002
|
||||
OBJETIVO : Estado De Cuentas del Suplidor
|
||||
PROGRAMADOR : Tadeo A. Ferreras
|
||||
FECHA REALIZACION : Junio 16, 1993
|
||||
-------------------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
DEFINE fecha DATE
|
||||
DEFINE balance4,balance3,p_valor,p_monto DECIMAL(12,2)
|
||||
DEFINE mov CHAR(1)
|
||||
DEFINE direccion CHAR(30)
|
||||
DEFINE provincia CHAR(3)
|
||||
DEFINE tipo CHAR(1)
|
||||
DEFINE idx_1, idx_2, idx_3 SMALLINT
|
||||
DEFINE salir, salir1, salir3, tipo_venta CHAR(1)
|
||||
DEFINE selec5, selec6 CHAR(1500)
|
||||
|
||||
DEFINE cuenta1 RECORD
|
||||
fecha_inicial DATE,
|
||||
fecha_final DATE,
|
||||
cod_sp LIKE cptb00001.cod_sp,
|
||||
cod_sp_sec LIKE cptb00001.cod_sp_sec,
|
||||
nom_sp LIKE cotb00001.nom_sp,
|
||||
direccion CHAR(30),
|
||||
ciu_sp CHAR(30),
|
||||
prima DECIMAL(5,2),
|
||||
balance DECIMAL(12,2)
|
||||
END RECORD
|
||||
|
||||
DEFINE cuenta11 RECORD
|
||||
fecha_inicial DATE,
|
||||
fecha_final DATE,
|
||||
cod_sp LIKE cptb00001.cod_sp,
|
||||
cod_sp_sec LIKE cptb00001.cod_sp_sec,
|
||||
nom_sp LIKE cotb00001.nom_sp,
|
||||
direccion CHAR(30),
|
||||
ciu_sp CHAR(30),
|
||||
prima DECIMAL(5,2),
|
||||
balance DECIMAL(12,2)
|
||||
END RECORD
|
||||
DEFINE cuenta2 ARRAY[500] OF RECORD
|
||||
num_doc LIKE cptb00001.num_doc,
|
||||
tipo_doc LIKE cptb00001.tipo_doc,
|
||||
fecha_orig LIKE cptb00001.fecha_orig,
|
||||
aplica_a CHAR(13),
|
||||
debito DECIMAL(12,2),
|
||||
credito DECIMAL(12,2),
|
||||
balance1 DECIMAL(12,2)
|
||||
END RECORD
|
||||
|
||||
DEFINE cuenta3 ARRAY[500] OF RECORD
|
||||
num_doc LIKE cptb00001.num_doc,
|
||||
tipo_doc LIKE cptb00001.tipo_doc,
|
||||
fecha_orig LIKE cptb00001.fecha_orig,
|
||||
aplica_a CHAR(13),
|
||||
debito DECIMAL(12,2),
|
||||
credito DECIMAL(12,2),
|
||||
balance1 DECIMAL(12,2)
|
||||
END RECORD
|
||||
|
||||
DEFINE busca_d RECORD
|
||||
num_doc LIKE cptb00001.num_doc,
|
||||
tipo_doc LIKE cptb00001.tipo_doc,
|
||||
fecha_orig LIKE cptb00001.fecha_orig,
|
||||
aplica_a LIKE cptb00001.aplica_a,
|
||||
valor DECIMAL(12,2)
|
||||
END RECORD
|
||||
|
||||
FUNCTION teprcs002()
|
||||
|
||||
# WHENEVER ERROR CONTINUE
|
||||
|
||||
OPTIONS
|
||||
FORM LINE 8,
|
||||
ERROR LINE 23,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmcs002 FROM "tefmcs002"
|
||||
DISPLAY FORM tefmcs002
|
||||
CALL pantalla()
|
||||
DISPLAY "teprcs002" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Estado de Cuenta del Suplidor" AT 6,25 ATTRIBUTE(BLACK)
|
||||
|
||||
LABEL volvera:
|
||||
INPUT BY NAME cuenta1.* WITHOUT DEFAULTS
|
||||
|
||||
AFTER FIELD fecha_inicial
|
||||
IF cuenta1.fecha_inicial is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_inicial
|
||||
END IF
|
||||
|
||||
BEFORE FIELD fecha_final
|
||||
LET cuenta1.fecha_final = today
|
||||
|
||||
AFTER FIELD fecha_final
|
||||
IF cuenta1.fecha_final is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_final
|
||||
END IF
|
||||
|
||||
IF cuenta1.fecha_final < cuenta1.fecha_inicial THEN
|
||||
LET numero_msg = 86
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_final
|
||||
END IF
|
||||
|
||||
AFTER FIELD cod_sp
|
||||
IF cuenta1.cod_sp IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_sp
|
||||
END IF
|
||||
|
||||
AFTER FIELD cod_sp_sec
|
||||
IF cuenta1.cod_sp_sec IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_sp_sec
|
||||
END IF
|
||||
|
||||
|
||||
SELECT a.nom_sp,a.dir_sp,a.ciu_sp
|
||||
INTO cuenta1.nom_sp,cuenta1.direccion,cuenta1.ciu_sp
|
||||
FROM cotb00001 a
|
||||
WHERE a.cod_sp = cuenta1.cod_sp AND
|
||||
a.cod_sp_sec = cuenta1.cod_sp_sec AND
|
||||
a.status_t IS NULL
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_sp
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME cuenta1.nom_sp,cuenta1.direccion,cuenta1.ciu_sp
|
||||
|
||||
BEFORE FIELD prima
|
||||
|
||||
DISPLAY "Buscando Balance Inicial... Espere" AT 23,1 ATTRIBUTE (BOLD)
|
||||
|
||||
SELECT sum(a.valor)
|
||||
INTO cuenta1.balance
|
||||
FROM cptb00001 a
|
||||
WHERE
|
||||
a.status_t is null
|
||||
and a.fecha_orig < cuenta1.fecha_inicial
|
||||
and a.cod_sp = cuenta1.cod_sp
|
||||
and a.cod_sp_sec = cuenta1.cod_sp_sec
|
||||
|
||||
IF cuenta1.balance IS NULL THEN
|
||||
LET cuenta1.balance = 0
|
||||
END IF
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET cuenta1.balance = 0
|
||||
END IF
|
||||
|
||||
AFTER FIELD prima
|
||||
IF cuenta1.prima is not null THEN
|
||||
LET cuenta1.balance = cuenta1.balance * cuenta1.prima
|
||||
END IF
|
||||
DISPLAY " " AT 23,1 ATTRIBUTE (BOLD)
|
||||
LET fecha = cuenta1.fecha_inicial
|
||||
DISPLAY BY NAME cuenta1.balance
|
||||
AFTER INPUT
|
||||
|
||||
IF cuenta1.cod_sp = 23 THEN
|
||||
LET cuenta1.prima = null
|
||||
EXIT INPUT
|
||||
DISPLAY BY NAME cuenta1.prima
|
||||
END IF
|
||||
|
||||
LET cuenta11.* = cuenta1.*
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DECLARE buscar CURSOR FOR
|
||||
SELECT a.num_doc,a.tipo_doc,a.fecha_orig,a.aplica_a,a.valor
|
||||
FROM cptb00001 a WHERE a.status_t IS NULL AND
|
||||
a.cod_sp = cuenta1.cod_sp AND
|
||||
a.cod_sp_sec = cuenta1.cod_sp_sec AND
|
||||
a.fecha_orig BETWEEN cuenta1.fecha_inicial AND cuenta1.fecha_final
|
||||
ORDER BY 4,3
|
||||
|
||||
DISPLAY "<< Buscando Informacion ... Espere Por Favor. >>" AT 24,14
|
||||
ATTRIBUTE (REVERSE,BOLD)
|
||||
|
||||
LET idx_1 = 1
|
||||
DISPLAY " " AT 24,14
|
||||
FOREACH buscar INTO busca_d.*
|
||||
LET cuenta2[idx_1].num_doc = busca_d.num_doc
|
||||
LET cuenta2[idx_1].tipo_doc = busca_d.tipo_doc
|
||||
LET cuenta2[idx_1].fecha_orig = busca_d.fecha_orig using "dd/mm/yyyy"
|
||||
|
||||
IF cuenta1.prima is not null THEN
|
||||
LET busca_d.valor = busca_d.valor * cuenta1.prima
|
||||
END IF
|
||||
|
||||
IF busca_d.tipo_doc = "CP" AND busca_d.aplica_a IS NOT NULL THEN
|
||||
LET busca_d.valor = 0
|
||||
END IF
|
||||
|
||||
IF busca_d.valor <> 0 THEN
|
||||
IF busca_d.valor > 0 THEN
|
||||
LET cuenta2[idx_1].credito = busca_d.valor * -1 USING "###,###,###.##"
|
||||
LET cuenta2[idx_1].debito = 0
|
||||
END IF
|
||||
IF busca_d.valor < 0 THEN
|
||||
LET cuenta2[idx_1].debito = busca_d.valor * -1 USING "###,###,###.##"
|
||||
LET cuenta2[idx_1].credito = 0
|
||||
END IF
|
||||
IF cuenta1.balance IS NULL THEN
|
||||
LET cuenta1.balance = 0
|
||||
END IF
|
||||
LET cuenta1.balance = cuenta1.balance + busca_d.valor
|
||||
LET cuenta2[idx_1].balance1 = cuenta1.balance USING "###,###,###.##"
|
||||
|
||||
IF busca_d.aplica_a IS NULL THEN
|
||||
SELECT UNIQUE orden_no INTO busca_d.aplica_a FROM cptb00001
|
||||
WHERE tipo_doc = cuenta2[idx_1].tipo_doc AND
|
||||
num_doc = cuenta2[idx_1].num_doc AND
|
||||
valor = busca_d.valor
|
||||
LET cuenta2[idx_1].aplica_a = "OC-",busca_d.aplica_a clipped
|
||||
ELSE
|
||||
LET cuenta2[idx_1].aplica_a = "FT-",busca_d.aplica_a clipped
|
||||
END IF
|
||||
|
||||
LET idx_1 = idx_1 + 1
|
||||
END IF
|
||||
|
||||
END FOREACH
|
||||
CALL SET_COUNT(idx_1 - 1)
|
||||
|
||||
DISPLAY ARRAY cuenta2 TO cuenta.*
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
CLEAR FORM
|
||||
GOTO volvera
|
||||
END FUNCTION
|
||||
|
||||
@@ -0,0 +1,309 @@
|
||||
DATABASE smarmotech
|
||||
|
||||
GLOBALS
|
||||
|
||||
DEFINE vendedorzp RECORD LIKE vetb00010.*
|
||||
DEFINE deposito RECORD LIKE tetb00001.*
|
||||
DEFINE procedencias RECORD LIKE tetb00002.*
|
||||
DEFINE p_tetb03 RECORD LIKE tetb00003.*
|
||||
DEFINE p_tetb04 RECORD LIKE tetb00004.*
|
||||
DEFINE p_tetb05 RECORD LIKE tetb00005.*
|
||||
DEFINE p_tetb06 RECORD LIKE tetb00006.*
|
||||
DEFINE p_tetb07 RECORD LIKE tetb00007.*
|
||||
DEFINE unidades1 ARRAY[19] OF CHAR(10)
|
||||
DEFINE decenas ARRAY[81] OF CHAR(20)
|
||||
DEFINE centenas ARRAY[10] OF CHAR(20)
|
||||
DEFINE miles ARRAY[9] OF CHAR(2)
|
||||
DEFINE excede ARRAY[200] OF CHAR(1)
|
||||
DEFINE p_bonifica,cant_pend ARRAY[20] OF INTEGER,
|
||||
regi INTEGER,
|
||||
p_param CHAR(1),
|
||||
usuarios,clave CHAR(80)
|
||||
|
||||
|
||||
DEFINE p_fechas DATE
|
||||
DEFINE opt4,opt3,impresion,verdad,identifica,existe,tiene_facturas,
|
||||
detalle,status_reg CHAR(1),
|
||||
criterio CHAR(1000),
|
||||
selec CHAR(1000),
|
||||
selec2 CHAR(500),
|
||||
selec3 CHAR(1000),
|
||||
tipo2,opcion CHAR(2),
|
||||
valor_letras CHAR(90),
|
||||
luz CHAR(5),
|
||||
p_act,p_cantidad_1,tipo1,longitud,p_fact_no,bandera,p_existencia
|
||||
INTEGER,
|
||||
p_cantidad_2,p_cedula,p_serie INTEGER,
|
||||
compania CHAR(50),
|
||||
parametro1 CHAR(10),
|
||||
medida CHAR(3),
|
||||
descventa CHAR(11),
|
||||
nombre_desc,descrip2,nombre_pt,nom_cliente CHAR(30),
|
||||
descrip1 CHAR(46),
|
||||
descrip3 CHAR(30),
|
||||
descrip4 CHAR(30),
|
||||
descrip5 CHAR(65),
|
||||
descrip6 CHAR(45),
|
||||
zona_p CHAR(30),
|
||||
provincia_p CHAR(30),
|
||||
tipo_papel,idx, curr2,curr, curr1, fila, scr_l SMALLINT,
|
||||
ano1,ano_c CHAR(4),
|
||||
desc_valor CHAR(10),
|
||||
sub_total CHAR(14),
|
||||
itbi CHAR(14),
|
||||
total_fact CHAR(14),
|
||||
p_fecha_ven DATE,
|
||||
p_costos,p_precio DECIMAL (12,2),
|
||||
p_costos1 DECIMAL (8,3),
|
||||
p_costos2 DECIMAL (12,2),
|
||||
p_costos3 DECIMAL (12,2),
|
||||
valor_orig DECIMAL (12,2),
|
||||
t_costos DECIMAL (12,2),
|
||||
p_cantidad INTEGER,
|
||||
unidades INTEGER,
|
||||
dias_v ,h SMALLINT,
|
||||
p_desc DECIMAL(10,3),
|
||||
p_user CHAR(9)
|
||||
|
||||
DEFINE numero_msg LIKE msgtable.cod_msg
|
||||
DEFINE zona RECORD LIKE vetb00008.*
|
||||
DEFINE datos RECORD LIKE vetb00019.*
|
||||
DEFINE zonap RECORD LIKE vetb00009.*
|
||||
DEFINE pago RECORD LIKE vetb00012.*
|
||||
DEFINE medidas RECORD LIKE vetb00014.*
|
||||
DEFINE pterminado RECORD LIKE iptb00002.*
|
||||
DEFINE descuento RECORD LIKE vetb00013.*
|
||||
DEFINE descuentoh RECORD LIKE vetb00027.*
|
||||
DEFINE transportista RECORD LIKE vetb00015.*
|
||||
DEFINE comisiones RECORD LIKE cctb00008.*
|
||||
DEFINE cliente_bas RECORD LIKE vetb00004.*
|
||||
DEFINE cliente_dir RECORD LIKE vetb00005.*
|
||||
DEFINE cliente_eco RECORD LIKE vetb00006.*
|
||||
DEFINE cliente_des RECORD LIKE vetb00007.*
|
||||
DEFINE presupuesto RECORD LIKE vetb00017.*
|
||||
DEFINE controles RECORD LIKE vetb00018.*
|
||||
DEFINE paises RECORD LIKE cotb00018.*
|
||||
DEFINE tarifa RECORD LIKE vetb00023.*
|
||||
DEFINE visitas RECORD LIKE vetb00024.*
|
||||
DEFINE pre_pila RECORD LIKE vetb00025.*,
|
||||
archivo CHAR(20),
|
||||
imprime CHAR(80),
|
||||
imprime1 CHAR(80),
|
||||
impresor SMALLINT,
|
||||
parametro CHAR(2),
|
||||
orden CHAR(1),
|
||||
destino CHAR(1)
|
||||
|
||||
DEFINE letras RECORD
|
||||
negrillas_on CHAR(6),
|
||||
negrillas_off CHAR(6),
|
||||
doble_on CHAR(6),
|
||||
doble_off CHAR(6),
|
||||
comp_on CHAR(6),
|
||||
comp_off CHAR(6),
|
||||
doce CHAR(6),
|
||||
normal CHAR(6)
|
||||
END RECORD
|
||||
|
||||
DEFINE rango RECORD
|
||||
fech_in DATE,
|
||||
fech_fi DATE
|
||||
END RECORD
|
||||
|
||||
DEFINE datos_empleados RECORD
|
||||
cod_emp LIKE adtb00003.num_emp,
|
||||
nom_emp LIKE adtb00003.nom1_emp,
|
||||
apell_emp LIKE adtb00003.apell1_emp
|
||||
END RECORD
|
||||
|
||||
DEFINE descuenta DYNAMIC ARRAY OF RECORD
|
||||
codigo INTEGER,
|
||||
porc DECIMAL(10,2),
|
||||
valor DECIMAL(10,2)
|
||||
END RECORD
|
||||
|
||||
DEFINE arr_tetb04 DYNAMIC ARRAY OF RECORD
|
||||
mes INTEGER,
|
||||
descrip CHAR(30),
|
||||
valor DECIMAL(10,2)
|
||||
END RECORD
|
||||
DEFINE arr_tetb05 DYNAMIC ARRAY OF RECORD
|
||||
mes INTEGER,
|
||||
descrip CHAR(30),
|
||||
valor DECIMAL(10,2)
|
||||
END RECORD
|
||||
DEFINE mes1 DYNAMIC ARRAY OF CHAR (11)
|
||||
DEFINE dias DYNAMIC ARRAY OF CHAR(11)
|
||||
|
||||
DEFINE cli_vend DYNAMIC ARRAY OF RECORD
|
||||
cod_vend LIKE adtb00003.num_emp,
|
||||
nombre_v CHAR(60)
|
||||
END RECORD
|
||||
|
||||
DEFINE arr_empleados DYNAMIC ARRAY OF RECORD
|
||||
cod_emp LIKE adtb00003.num_emp,
|
||||
nom_emp LIKE adtb00003.nom1_emp,
|
||||
apell_emp LIKE adtb00003.apell1_emp
|
||||
END RECORD
|
||||
|
||||
DEFINE empleados DYNAMIC ARRAY OF RECORD
|
||||
cod_emp LIKE adtb00003.num_emp,
|
||||
descrip6 CHAR(65)
|
||||
END RECORD
|
||||
|
||||
DEFINE arr_procedencia DYNAMIC ARRAY OF RECORD
|
||||
procedencia LIKE tetb00002.procedencia,
|
||||
descripcion LIKE tetb00002.descripcion
|
||||
END RECORD
|
||||
|
||||
DEFINE zonas DYNAMIC ARRAY OF RECORD
|
||||
cod_zona LIKE vetb00008.cod_zona,
|
||||
descrip LIKE vetb00008.descrip
|
||||
END RECORD
|
||||
|
||||
DEFINE provincias DYNAMIC ARRAY OF RECORD
|
||||
cod_provincia LIKE vetb00020.cod_provincia,
|
||||
nombre_provincia LIKE vetb00020.nombre_provincia
|
||||
END RECORD
|
||||
|
||||
DEFINE porc_zona DYNAMIC ARRAY OF RECORD
|
||||
ventas CHAR(1),
|
||||
zona CHAR(3),
|
||||
descrip CHAR(30),
|
||||
cod_n SMALLINT,
|
||||
cod_grupo SMALLINT,
|
||||
cod_tipo SMALLINT,
|
||||
cod_sec SMALLINT,
|
||||
mes CHAR(4),
|
||||
desc_mes CHAR(30),
|
||||
porciento DECIMAL(7,3)
|
||||
END RECORD
|
||||
|
||||
DEFINE porc_prov DYNAMIC ARRAY OF RECORD
|
||||
ventas CHAR(1),
|
||||
zona CHAR(3),
|
||||
provincia SMALLINT,
|
||||
cod_n SMALLINT,
|
||||
cod_grupo SMALLINT,
|
||||
cod_tipo SMALLINT,
|
||||
cod_sec SMALLINT,
|
||||
descrip CHAR(30),
|
||||
mes CHAR(4),
|
||||
desc_mes CHAR(30),
|
||||
porciento DECIMAL(7,3)
|
||||
END RECORD
|
||||
|
||||
DEFINE porc_clie DYNAMIC ARRAY OF RECORD
|
||||
ventas CHAR(1),
|
||||
zona CHAR(3),
|
||||
provincia SMALLINT,
|
||||
tipo_cliente SMALLINT,
|
||||
sec_cliente SMALLINT,
|
||||
cod_n SMALLINT,
|
||||
cod_grupo SMALLINT,
|
||||
cod_tipo SMALLINT,
|
||||
cod_sec SMALLINT,
|
||||
mes CHAR(4),
|
||||
desc_mes CHAR(30),
|
||||
porciento DECIMAL(7,3)
|
||||
END RECORD
|
||||
|
||||
DEFINE pres_venta DYNAMIC ARRAY OF RECORD
|
||||
ventas CHAR(1),
|
||||
descrip1 CHAR(15),
|
||||
cod_n SMALLINT,
|
||||
cod_grupo SMALLINT,
|
||||
cod_tipo SMALLINT,
|
||||
cod_sec SMALLINT,
|
||||
mes SMALLINT,
|
||||
descrip_mes CHAR(11),
|
||||
cantidad INTEGER,
|
||||
valor DECIMAL(12,2)
|
||||
END RECORD
|
||||
|
||||
DEFINE reg_ventas RECORD
|
||||
cod_n1 SMALLINT,
|
||||
cod_grupo1 SMALLINT,
|
||||
cod_tipo1 SMALLINT,
|
||||
cod_sec1 SMALLINT,
|
||||
descrip1 CHAR(30),
|
||||
unidades1 INTEGER,
|
||||
valor1 DECIMAL(14,2)
|
||||
END RECORD
|
||||
|
||||
DEFINE reg_ventas2 RECORD
|
||||
zona2 CHAR(3),
|
||||
cod_n2 SMALLINT,
|
||||
cod_grupo2 SMALLINT,
|
||||
cod_tipo2 SMALLINT,
|
||||
cod_sec2 SMALLINT,
|
||||
descrip2 CHAR(30),
|
||||
unidades2 INTEGER,
|
||||
valor2 DECIMAL(14,2)
|
||||
END RECORD
|
||||
|
||||
DEFINE arr_ventas DYNAMIC ARRAY OF RECORD
|
||||
codigo1 CHAR(10),
|
||||
descrip1 CHAR(30),
|
||||
unidades1 CHAR(14),
|
||||
valor1 CHAR(17)
|
||||
END RECORD
|
||||
|
||||
DEFINE reg_clientes RECORD
|
||||
tipo1 SMALLINT,
|
||||
sec1 SMALLINT,
|
||||
descrip1 CHAR(30),
|
||||
unidades1 INTEGER
|
||||
END RECORD
|
||||
|
||||
DEFINE arr_cajas DYNAMIC ARRAY OF RECORD
|
||||
cod_n1 SMALLINT,
|
||||
cod_grupo1 SMALLINT,
|
||||
cod_tipo1 SMALLINT,
|
||||
cod_sec1 SMALLINT,
|
||||
descrip1 CHAR(30),
|
||||
cajas1 INTEGER
|
||||
END RECORD
|
||||
|
||||
DEFINE arr_ventas3 DYNAMIC ARRAY OF RECORD
|
||||
codigo1 CHAR(7),
|
||||
descrip1 CHAR(30),
|
||||
unidades1 CHAR(14)
|
||||
END RECORD
|
||||
|
||||
DEFINE arr_clientes DYNAMIC ARRAY OF RECORD
|
||||
tipo_cliente LIKE vetb00004.tipo_cliente,
|
||||
sec_cliente LIKE vetb00004.sec_cliente,
|
||||
nombre LIKE vetb00004.nombre
|
||||
END RECORD
|
||||
|
||||
|
||||
DEFINE pais_wd DYNAMIC ARRAY OF RECORD
|
||||
cod_pais LIKE cotb00018.cod_pais,
|
||||
nom_pais LIKE cotb00018.nom_pais
|
||||
END RECORD
|
||||
|
||||
DEFINE arr_transp DYNAMIC ARRAY OF RECORD
|
||||
cod_transp SMALLINT,
|
||||
sec_transp SMALLINT,
|
||||
nombre CHAR(30)
|
||||
END RECORD
|
||||
|
||||
DEFINE arr_tarifa DYNAMIC ARRAY OF RECORD
|
||||
cod_tarifa SMALLINT,
|
||||
descrip CHAR(30)
|
||||
END RECORD
|
||||
|
||||
DEFINE arr_condicion DYNAMIC ARRAY OF RECORD
|
||||
cond_pago SMALLINT,
|
||||
descrip CHAR(30)
|
||||
END RECORD
|
||||
|
||||
DEFINE comp_fech,comp_fech1 DATE
|
||||
DEFINE mes_control CHAR(2)
|
||||
DEFINE mes_calc,dia SMALLINT
|
||||
DEFINE fecha_c DATE
|
||||
DEFINE c_ano,a_ano CHAR(4)
|
||||
|
||||
END GLOBALS
|
||||
|
||||
@@ -0,0 +1,483 @@
|
||||
{
|
||||
------------------------------------------------------------------
|
||||
PROGRAMA : TEPRMT001
|
||||
OBJETIVO : Capturar, Modificar, Eliminar registros de la
|
||||
Tabla de Depositos.
|
||||
PROGRAMADOR : Tadeo A. Ferreras
|
||||
FECHA REALIZACION : Diciembre 2, 1992.
|
||||
------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
DEFINE proced INTEGER,
|
||||
descrip_s CHAR(30)
|
||||
MAIN
|
||||
DEFER INTERRUPT
|
||||
CALL ARG_VAL(1) RETURNING usuarios
|
||||
CALL ARG_VAL(2) RETURNING clave
|
||||
|
||||
CONNECT to "smarmotech" USER usuarios USING clave
|
||||
|
||||
|
||||
CALL teprmt001()
|
||||
END MAIN
|
||||
|
||||
FUNCTION teprmt001()
|
||||
CLEAR SCREEN
|
||||
OPTIONS
|
||||
FORM LINE 9,
|
||||
ERROR LINE 23,
|
||||
MESSAGE LINE 24,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmmt001 FROM "tefmmt001"
|
||||
DISPLAY FORM tefmmt001
|
||||
CALL pantalla()
|
||||
# CALL ayuda()
|
||||
DISPLAY "teprmt001" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Mantenimiento de Depositos" at 6,27 ATTRIBUTE(BLACK)
|
||||
|
||||
MENU "OPCIONES"
|
||||
COMMAND "Adicionar"
|
||||
"<Esc> Adiciona Registro <Supr> Cancela Operacion"
|
||||
HELP 5
|
||||
LET INT_FLAG = FALSE
|
||||
CLEAR FORM
|
||||
LET INT_FLAG = FALSE
|
||||
CALL tepcad001()
|
||||
COMMAND "Consultar-modificar"
|
||||
"<Esc> Realiza Busqueda <Supr> Cancela Operacion"
|
||||
HELP 6
|
||||
LET int_flag = FALSE
|
||||
CALL tepcmf001()
|
||||
COMMAND "Salir" "Retorna Menu Anterior"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcad001()
|
||||
# WHENEVER ERROR CONTINUE
|
||||
## Captura los datos que va a contener el registro
|
||||
|
||||
INITIALIZE deposito.* TO NULL
|
||||
LET descrip1 = NULL
|
||||
LET descrip2 = NULL
|
||||
INPUT BY NAME deposito.*
|
||||
ON KEY (CONTROL-W)
|
||||
CASE
|
||||
WHEN INFIELD(procedencia)
|
||||
CALL busca_procedencia()
|
||||
LET deposito.procedencia = proced
|
||||
DISPLAY BY NAME deposito.procedencia,descrip2
|
||||
NEXT FIELD fecha
|
||||
END CASE
|
||||
|
||||
SELECT MAX(num_doc) INTO deposito.num_doc
|
||||
FROM tetb00001
|
||||
|
||||
IF deposito.num_doc IS NULL THEN
|
||||
LET deposito.num_doc = 0
|
||||
END IF
|
||||
|
||||
LET deposito.num_doc = deposito.num_doc + 1
|
||||
DISPLAY BY NAME deposito.num_doc
|
||||
AFTER FIELD sucursal
|
||||
SELECT a.nombre INTO descrip_s from companias a
|
||||
WHERE a.cod_comp = deposito.sucursal
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg= 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sucursal
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME descrip_s
|
||||
BEFORE FIELD num_doc
|
||||
|
||||
|
||||
AFTER FIELD cuenta_no
|
||||
IF deposito.cuenta_no = " " OR
|
||||
deposito.cuenta_no is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cuenta_no
|
||||
END IF
|
||||
|
||||
LET descrip1 = NULL
|
||||
SELECT i.descripcion INTO descrip1
|
||||
FROM cgtb00001 i,cgtb00012 b
|
||||
WHERE i.cuenta_no = b.cuenta_no AND
|
||||
i.cuenta_no= deposito.cuenta_no AND
|
||||
i.status_t is null
|
||||
|
||||
IF descrip1 IS NULL THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cuenta_no
|
||||
END IF
|
||||
DISPLAY BY NAME descrip1
|
||||
|
||||
AFTER FIELD procedencia
|
||||
IF deposito.cta_banco IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cta_banco
|
||||
END IF
|
||||
|
||||
LET descrip2 = NULL
|
||||
IF deposito.procedencia IS NOT NULL THEN
|
||||
SELECT unique a.descripcion INTO descrip2 FROM tetb00002 a
|
||||
WHERE a.status_t IS NULL AND a.procedencia=deposito.procedencia
|
||||
|
||||
IF descrip2 IS NULL THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD procedencia
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME descrip2
|
||||
END IF
|
||||
|
||||
AFTER FIELD fecha
|
||||
IF deposito.procedencia IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD procedencia
|
||||
END IF
|
||||
|
||||
IF deposito.fecha IS NOT NULL THEN
|
||||
IF deposito.fecha > today THEN
|
||||
LET numero_msg = 189
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha
|
||||
END IF
|
||||
|
||||
LET p_fechas = deposito.fecha
|
||||
CALL prd()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
NEXT FIELD fecha
|
||||
END IF
|
||||
END IF
|
||||
|
||||
AFTER FIELD monto
|
||||
IF deposito.fecha IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha
|
||||
END IF
|
||||
|
||||
IF deposito.monto IS NULL OR
|
||||
deposito.monto = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD monto
|
||||
END IF
|
||||
|
||||
END INPUT
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET numero_msg = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
INSERT INTO tetb00001 VALUES (deposito.*)
|
||||
UPDATE tetb00001 SET (us_crea,fech_crea) = (USER,CURRENT)
|
||||
WHERE @num_doc = deposito.num_doc
|
||||
|
||||
LET numero_msg = 1
|
||||
CALL msg(numero_msg)
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcmf001()
|
||||
LET int_flag = FALSE
|
||||
## Aqui se prepara para la captura del criterio de seleccion
|
||||
MESSAGE ""
|
||||
CLEAR FORM
|
||||
CONSTRUCT criterio ON a.num_doc,a.cuenta_no FROM num_doc,cuenta_no
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET SELEC = " SELECT UNIQUE a.*,b.descripcion,c.descripcion ",
|
||||
" FROM tetb00001 a,cgtb00001 b,tetb00002 c ",
|
||||
" WHERE a.cuenta_no = b.cuenta_no AND a.status_t is null AND ",
|
||||
" a.procedencia = c.procedencia AND ",
|
||||
criterio clipped," ORDER BY a.num_doc "
|
||||
|
||||
PREPARE busca FROM selec
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DECLARE datos SCROLL CURSOR FOR busca
|
||||
OPEN datos
|
||||
|
||||
FETCH FIRST datos INTO deposito.*,descrip1,descrip2
|
||||
IF status >= 0 THEN
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
RETURN
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME deposito.*,descrip1,descrip2
|
||||
#CALL busca_cuenta()
|
||||
|
||||
MENU "OPCIONES "
|
||||
COMMAND "Siguiente"
|
||||
"Presenta en pantalla el proximo registro encontrado"
|
||||
FETCH NEXT datos INTO deposito.*,descrip1,descrip2
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
#CALL busca_cuenta()
|
||||
|
||||
DISPLAY BY NAME deposito.*,descrip1,descrip2
|
||||
|
||||
COMMAND "Anterior"
|
||||
"Presenta en pantalla el registro anterior encontrado"
|
||||
FETCH PREVIOUS datos INTO deposito.*,descrip1,descrip2
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
#CALL busca_cuenta()
|
||||
DISPLAY BY NAME deposito.*,descrip1,descrip2
|
||||
|
||||
COMMAND "Primero"
|
||||
"Presenta en pantalla el primer registro encontrado"
|
||||
FETCH FIRST datos INTO deposito.*,descrip1,descrip2
|
||||
|
||||
#CALL busca_cuenta()
|
||||
DISPLAY BY NAME deposito.*,descrip1,descrip2
|
||||
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Ultimo"
|
||||
"Presenta en pantalla el ultimo registro encontrado"
|
||||
FETCH LAST datos INTO deposito.*,descrip1,descrip2
|
||||
|
||||
# CALL busca_cuenta()
|
||||
DISPLAY BY NAME deposito.*,descrip1
|
||||
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Escoger"
|
||||
"<Esc> Actualiza Registro <Supr> Cancela Operacion"
|
||||
|
||||
LET p_fechas = deposito.fecha
|
||||
CALL prd()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
INPUT BY NAME deposito.cuenta_no THRU deposito.fech_mod WITHOUT DEFAULTS
|
||||
ON KEY (CONTROL-W)
|
||||
CASE
|
||||
WHEN INFIELD(procedencia)
|
||||
CALL busca_procedencia()
|
||||
LET deposito.procedencia = proced
|
||||
DISPLAY BY NAME deposito.procedencia,descrip2
|
||||
NEXT FIELD fecha
|
||||
END CASE
|
||||
AFTER FIELD sucursal
|
||||
SELECT a.nombre INTO descrip_s from companias a WHERE a.cod_comp = deposito.sucursal
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg= 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sucursal
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME descrip_s
|
||||
BEFORE FIELD num_doc
|
||||
|
||||
|
||||
AFTER FIELD cuenta_no
|
||||
IF deposito.cuenta_no = " " OR
|
||||
deposito.cuenta_no is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cuenta_no
|
||||
END IF
|
||||
|
||||
LET descrip1 = NULL
|
||||
SELECT i.descripcion INTO descrip1
|
||||
FROM cgtb00001 i,cgtb00012 b
|
||||
WHERE i.cuenta_no = b.cuenta_no AND
|
||||
i.cuenta_no= deposito.cuenta_no AND
|
||||
i.status_t is null
|
||||
|
||||
IF descrip1 IS NULL THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cuenta_no
|
||||
END IF
|
||||
DISPLAY BY NAME descrip1
|
||||
|
||||
AFTER FIELD procedencia
|
||||
IF deposito.cta_banco IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cta_banco
|
||||
END IF
|
||||
|
||||
LET descrip2 = NULL
|
||||
IF deposito.procedencia IS NOT NULL THEN
|
||||
SELECT unique a.descripcion INTO descrip2 FROM tetb00002 a
|
||||
WHERE a.status_t IS NULL AND a.procedencia=deposito.procedencia
|
||||
|
||||
IF descrip2 IS NULL THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD procedencia
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME descrip2
|
||||
END IF
|
||||
|
||||
AFTER FIELD fecha
|
||||
IF deposito.procedencia IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD procedencia
|
||||
END IF
|
||||
|
||||
IF deposito.fecha IS NOT NULL THEN
|
||||
IF deposito.fecha > today THEN
|
||||
LET numero_msg = 189
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha
|
||||
END IF
|
||||
|
||||
LET p_fechas = deposito.fecha
|
||||
CALL prd()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
NEXT FIELD fecha
|
||||
END IF
|
||||
END IF
|
||||
|
||||
AFTER FIELD monto
|
||||
IF deposito.monto IS NULL OR
|
||||
deposito.monto = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD monto
|
||||
END IF
|
||||
END INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
UPDATE tetb00001 SET (cuenta_no,cta_banco,procedencia,
|
||||
fecha,monto,us_mod,fech_mod)
|
||||
= (deposito.cuenta_no,deposito.cta_banco,
|
||||
deposito.procedencia,deposito.fecha,
|
||||
deposito.monto,USER,CURRENT)
|
||||
WHERE @num_doc = deposito.num_doc
|
||||
|
||||
LET numero_msg = 13
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND KEY ("L") "eLiminar"
|
||||
"Elimina registro que esta en la pantalla"
|
||||
|
||||
DELETE FROM tetb00001
|
||||
WHERE @num_doc = deposito.num_doc
|
||||
|
||||
LET numero_msg = 39
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Retornar"
|
||||
"Retorna al menu anterior"
|
||||
CLEAR FORM
|
||||
# CALL ayuda()
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION busca_cuenta()
|
||||
# Esta funcion busca el nombre del cuenta y lo despliega en pantalla
|
||||
# Esta funcion es valida solamente para la consulta-modificacion.
|
||||
|
||||
SELECT i.descripcion INTO descrip1 FROM cgtb00001 i
|
||||
WHERE i.cuenta_no = deposito.cuenta_no and
|
||||
i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
ELSE
|
||||
IF status_reg = "E" THEN
|
||||
LET numero_msg = 67
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION busca_procedencia()
|
||||
# Esta funcion busca el nombre de la Procedencia
|
||||
|
||||
OPEN WINDOW busqueda1 AT 10,10 WITH FORM "tefmwd002"
|
||||
ATTRIBUTE (BORDER,FORM LINE FIRST + 1, comment line last)
|
||||
|
||||
DECLARE buscador CURSOR FOR
|
||||
SELECT i.procedencia,i.descripcion FROM tetb00002 i
|
||||
WHERE i.status_t IS NULL ORDER BY 1
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
CLOSE WINDOW busqueda1
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
LET idx = 1
|
||||
FOREACH buscador INTO arr_procedencia[idx].*
|
||||
LET idx = idx + 1
|
||||
END FOREACH
|
||||
CALL SET_COUNT(idx - 1)
|
||||
|
||||
DISPLAY ARRAY arr_procedencia TO s_procedencia.*
|
||||
LET curr = ARR_CURR()
|
||||
|
||||
LET proced = arr_procedencia[curr].procedencia
|
||||
LET descrip2 = arr_procedencia[curr].descripcion
|
||||
CLOSE WINDOW busqueda1
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,219 @@
|
||||
{
|
||||
------------------------------------------------------------------
|
||||
PROGRAMA : TEPRMT002
|
||||
OBJETIVO : Capturar, Modificar, Eliminar registros de la
|
||||
Tabla de Procedencias.
|
||||
PROGRAMADOR : Tadeo A. Ferreras
|
||||
FECHA REALIZACION : Diciembre 2, 1992.
|
||||
------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
FUNCTION teprmt002()
|
||||
CLEAR SCREEN
|
||||
OPTIONS
|
||||
FORM LINE 9,
|
||||
ERROR LINE 23,
|
||||
MESSAGE LINE 24,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmmt002 FROM "tefmmt002"
|
||||
DISPLAY FORM tefmmt002
|
||||
CALL pantalla()
|
||||
# CALL ayuda()
|
||||
DISPLAY "teprmt002" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Mantenimiento de Procedencia" at 6,26 ATTRIBUTE(BLACK)
|
||||
|
||||
MENU "OPCIONES"
|
||||
COMMAND "Adicionar"
|
||||
"<Esc> Adiciona Registro <Supr> Cancela Operacion"
|
||||
HELP 5
|
||||
LET INT_FLAG = FALSE
|
||||
CLEAR FORM
|
||||
LET INT_FLAG = FALSE
|
||||
CALL tepcad002()
|
||||
COMMAND "Consultar-modificar"
|
||||
"<Esc> Realiza Busqueda <Supr> Cancela Operacion"
|
||||
HELP 6
|
||||
LET int_flag = FALSE
|
||||
CALL tepcmf002()
|
||||
COMMAND "Salir" "Retorna Menu Anterior"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcad002()
|
||||
# WHENEVER ERROR CONTINUE
|
||||
## Captura los datos que va a contener el registro
|
||||
|
||||
INITIALIZE procedencias.* TO NULL
|
||||
LET descrip1 = NULL
|
||||
LET descrip2 = NULL
|
||||
INPUT BY NAME procedencias.*
|
||||
|
||||
AFTER FIELD procedencia
|
||||
|
||||
IF procedencias.procedencia is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD procedencia
|
||||
END IF
|
||||
|
||||
SELECT UNIQUE descripcion INTO procedencias.descripcion
|
||||
FROM tetb00002 WHERE @procedencia = procedencias.procedencia
|
||||
|
||||
IF STATUS != NOTFOUND THEN
|
||||
DISPLAY BY NAME procedencias.descripcion
|
||||
LET numero_msg = 12
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD procedencia
|
||||
END IF
|
||||
|
||||
AFTER FIELD descripcion
|
||||
IF procedencias.descripcion[1] = " " OR
|
||||
procedencias.descripcion is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD descripcion
|
||||
END IF
|
||||
|
||||
END INPUT
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET numero_msg = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
INSERT INTO tetb00002 VALUES (procedencias.*)
|
||||
UPDATE tetb00002 SET (us_crea,fech_crea) = (USER,CURRENT)
|
||||
WHERE @procedencia = procedencias.procedencia
|
||||
|
||||
LET numero_msg = 1
|
||||
CALL msg(numero_msg)
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcmf002()
|
||||
LET int_flag = FALSE
|
||||
## Aqui se prepara para la captura del criterio de seleccion
|
||||
MESSAGE ""
|
||||
CLEAR FORM
|
||||
CONSTRUCT criterio ON a.procedencia,a.descripcion
|
||||
FROM procedencia,descripcion
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET SELEC = " SELECT UNIQUE a.* FROM tetb00002 a ",
|
||||
" WHERE a.status_t IS NULL AND ",
|
||||
criterio clipped," ORDER BY a.procedencia "
|
||||
|
||||
PREPARE busca FROM selec
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DECLARE datos SCROLL CURSOR FOR busca
|
||||
OPEN datos
|
||||
|
||||
FETCH FIRST datos INTO procedencias.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME procedencias.*
|
||||
|
||||
MENU "OPCIONES "
|
||||
COMMAND "Siguiente"
|
||||
"Presenta en pantalla el proximo registro encontrado"
|
||||
FETCH NEXT datos INTO procedencias.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME procedencias.*
|
||||
|
||||
COMMAND "Anterior"
|
||||
"Presenta en pantalla el registro anterior encontrado"
|
||||
FETCH PREVIOUS datos INTO procedencias.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME procedencias.*
|
||||
|
||||
COMMAND "Primero"
|
||||
"Presenta en pantalla el primer registro encontrado"
|
||||
FETCH FIRST datos INTO procedencias.*
|
||||
|
||||
DISPLAY BY NAME procedencias.*
|
||||
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Ultimo"
|
||||
"Presenta en pantalla el ultimo registro encontrado"
|
||||
FETCH LAST datos INTO procedencias.*
|
||||
|
||||
DISPLAY BY NAME procedencias.*
|
||||
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Escoger"
|
||||
"<Esc> Actualiza Registro <Supr> Cancela Operacion"
|
||||
|
||||
|
||||
INPUT BY NAME procedencias.descripcion THRU
|
||||
procedencias.fech_mod WITHOUT DEFAULTS
|
||||
AFTER FIELD descripcion
|
||||
IF procedencias.descripcion[1] = " " OR
|
||||
procedencias.descripcion is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD descripcion
|
||||
END IF
|
||||
|
||||
END INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
UPDATE tetb00002 SET (descripcion,us_mod,fech_mod)
|
||||
= (procedencias.descripcion,USER,CURRENT)
|
||||
WHERE @procedencia = procedencias.procedencia
|
||||
|
||||
LET numero_msg = 13
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND KEY ("L") "eLiminar"
|
||||
"Elimina registro que esta en la pantalla"
|
||||
|
||||
DELETE FROM tetb00002
|
||||
WHERE @procedencia = procedencias.procedencia
|
||||
|
||||
LET numero_msg = 39
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Retornar"
|
||||
"Retorna al menu anterior"
|
||||
CLEAR FORM
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
@@ -0,0 +1,656 @@
|
||||
{
|
||||
------------------------------------------------------------------
|
||||
PROGRAMA : TEPRMT003
|
||||
OBJETIVO : Capturar, Modificar, Eliminar registros de la
|
||||
Tabla de Comisiones.
|
||||
PROGRAMADOR : Lic. Abner Montalvo Zapata
|
||||
FECHA REALIZACION : Diciembre 2, 1992.
|
||||
------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
FUNCTION teprmt003()
|
||||
CLEAR SCREEN
|
||||
OPTIONS
|
||||
FORM LINE 9,
|
||||
ERROR LINE 23,
|
||||
MESSAGE LINE 24,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmmt003 FROM "tefmmt003"
|
||||
DISPLAY FORM tefmmt003
|
||||
CALL pantalla()
|
||||
# CALL ayuda()
|
||||
DISPLAY "teprmt003" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Mantenimiento de Comisiones por Vendedor" at 6,20 ATTRIBUTE(BLACK)
|
||||
|
||||
MENU "OPCIONES"
|
||||
COMMAND "Adicionar"
|
||||
"<Esc> Adiciona Registro <Supr> Cancela Operacion"
|
||||
HELP 5
|
||||
LET INT_FLAG = FALSE
|
||||
CLEAR FORM
|
||||
LET INT_FLAG = FALSE
|
||||
CALL tepcad003()
|
||||
COMMAND "Consultar-modificar"
|
||||
"<Esc> Realiza Busqueda <Supr> Cancela Operacion"
|
||||
HELP 6
|
||||
CALL tepcmf003()
|
||||
COMMAND "Salir" "Retorna Menu Anterior"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcad003()
|
||||
DEFINE fech_ant CHAR(8)
|
||||
# WHENEVER ERROR CONTINUE
|
||||
MESSAGE ""
|
||||
## Captura los datos que va a contener el registro
|
||||
|
||||
INPUT BY NAME comisiones.*
|
||||
|
||||
AFTER FIELD sec_vend
|
||||
IF comisiones.sec_vend = 0 or
|
||||
comisiones.sec_vend is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
ELSE
|
||||
SELECT i.nom1_emp, i.apell1_emp INTO descrip1, descrip2
|
||||
FROM adtb00003 i
|
||||
WHERE i.num_emp = comisiones.sec_vend AND i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
END IF
|
||||
LET descrip6 = descrip1 clipped," ",descrip2 clipped
|
||||
DISPLAY descrip6 TO descrip6
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
END IF
|
||||
|
||||
## Verifica que el codigo no exista en el catalogo de comisiones. Si existe,
|
||||
## entonces despliega los datos del registro existente.
|
||||
AFTER FIELD cod_sec
|
||||
SELECT i.descrip_esp INTO descrip1
|
||||
FROM intb00001 i
|
||||
WHERE i.cod_n = comisiones.cod_n AND
|
||||
i.cod_grupo = comisiones.cod_grupo AND
|
||||
i.cod_tipo = comisiones.cod_tipo AND
|
||||
i.cod_sec = comisiones.cod_sec and
|
||||
i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 26
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_n
|
||||
END IF
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
SELECT * INTO comisiones.* FROM vetb00011
|
||||
WHERE
|
||||
sec_vend = comisiones.sec_vend AND
|
||||
cod_n = comisiones.cod_n AND
|
||||
cod_grupo = comisiones.cod_grupo AND
|
||||
cod_tipo = comisiones.cod_tipo AND
|
||||
cod_sec = comisiones.cod_sec
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status != NOTFOUND THEN
|
||||
IF comisiones.status_t = "E" THEN
|
||||
LET numero_msg = 36
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones.porc_ventas,
|
||||
comisiones.porc_cobros,
|
||||
comisiones.us_crea,
|
||||
comisiones.fech_crea,
|
||||
comisiones.us_mod,
|
||||
comisiones.fech_mod
|
||||
|
||||
LET numero_msg = 12
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
ELSE
|
||||
INITIALIZE comisiones.porc_ventas,
|
||||
comisiones.porc_cobros,
|
||||
comisiones.us_crea,
|
||||
comisiones.fech_crea,
|
||||
comisiones.us_mod,
|
||||
comisiones.fech_mod TO NULL
|
||||
|
||||
DISPLAY BY NAME comisiones.porc_ventas,
|
||||
comisiones.porc_cobros,
|
||||
comisiones.us_crea,
|
||||
comisiones.fech_crea,
|
||||
comisiones.us_mod,
|
||||
comisiones.fech_mod
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
AFTER FIELD porc_ventas
|
||||
IF comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
AFTER FIELD porc_cobros
|
||||
IF comisiones.porc_cobros IS NULL THEN
|
||||
LET comisiones.porc_cobros = 0
|
||||
END IF
|
||||
|
||||
AFTER INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
IF comisiones.sec_vend = 0 or
|
||||
comisiones.sec_vend is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
END IF
|
||||
|
||||
IF comisiones.sec_vend = 0 or
|
||||
comisiones.sec_vend is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
ELSE
|
||||
SELECT i.nom1_emp, i.apell1_emp INTO descrip1, descrip2
|
||||
FROM adtb00003 i
|
||||
WHERE i.num_emp = comisiones.sec_vend AND i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
END IF
|
||||
LET descrip6 = descrip1 clipped," ",descrip2 clipped
|
||||
DISPLAY descrip6 TO descrip6
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
END IF
|
||||
|
||||
IF comisiones.cod_n IS NULL OR
|
||||
comisiones.cod_n = 0 THEN
|
||||
LET numero_msg = 60
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_n
|
||||
END IF
|
||||
|
||||
## Verifica que el codigo no exista en el catalogo de comisiones. Si existe,
|
||||
## entonces despliega los datos del registro existente.
|
||||
|
||||
IF ( comisiones.cod_n = 0 AND comisiones.cod_grupo = 0 AND
|
||||
comisiones.cod_tipo = 0 AND comisiones.cod_sec = 0 ) THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_n
|
||||
ELSE
|
||||
SELECT i.descrip_esp INTO descrip1
|
||||
FROM intb00001 i
|
||||
WHERE i.cod_n = comisiones.cod_n AND
|
||||
i.cod_grupo = comisiones.cod_grupo AND
|
||||
i.cod_tipo = comisiones.cod_tipo AND
|
||||
i.cod_sec = comisiones.cod_sec and
|
||||
i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 26
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_n
|
||||
END IF
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
END IF
|
||||
|
||||
SELECT * INTO comisiones.* FROM vetb00011
|
||||
WHERE
|
||||
sec_vend = comisiones.sec_vend AND
|
||||
cod_n = comisiones.cod_n AND
|
||||
cod_grupo = comisiones.cod_grupo AND
|
||||
cod_tipo = comisiones.cod_tipo AND
|
||||
cod_sec = comisiones.cod_sec
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status != NOTFOUND THEN
|
||||
IF comisiones.status_t = "E" THEN
|
||||
LET numero_msg = 36
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones.porc_ventas,
|
||||
comisiones.porc_cobros,
|
||||
comisiones.us_crea,
|
||||
comisiones.fech_crea,
|
||||
comisiones.us_mod,
|
||||
comisiones.fech_mod
|
||||
|
||||
LET numero_msg = 12
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
IF comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
IF comisiones.porc_cobros IS NULL THEN
|
||||
LET comisiones.porc_cobros = 0
|
||||
END IF
|
||||
|
||||
# Valida que el codigo del articulo no sea cero. Si no es cero, adiciona el
|
||||
# registro en la tabla, de lo contrario, presenta mensaje de error y acepta
|
||||
# el codigo de nuevo.
|
||||
|
||||
{ IF (comisiones.cod_n = 0 AND
|
||||
comisiones.cod_grupo = 0 AND
|
||||
comisiones.cod_tipo = 0 AND
|
||||
comisiones.cod_sec = 0 ) OR
|
||||
(comisiones.sec_vend = 0 AND
|
||||
comisiones.sec_vend = 0 ) OR
|
||||
comisiones.porc_ventas = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
ELSE
|
||||
} INSERT INTO vetb00011 VALUES (comisiones.cod_vend,
|
||||
comisiones.sec_vend,
|
||||
comisiones.cod_n,
|
||||
comisiones.cod_grupo,
|
||||
comisiones.cod_tipo,
|
||||
comisiones.cod_sec,
|
||||
comisiones.porc_ventas,
|
||||
comisiones.porc_cobros,
|
||||
null, USER, CURRENT, null, null)
|
||||
|
||||
# Verifica el Status que retorna luego de insertar el registro en la tabla.
|
||||
# Si el Status es diferente de cero quiere decir que hubo problemas durante
|
||||
# la creacion del registro, entonces despliega un mensaje de alerta para que
|
||||
# el usuario sepa que hubo problemas en la creacion del registro.
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET numero_msg = 1
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
{ END IF
|
||||
}
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcmf003()
|
||||
## Aqui se prepara para la captura del criterio de seleccion
|
||||
MESSAGE ""
|
||||
CLEAR FORM
|
||||
CONSTRUCT criterio ON vetb00011.* FROM vetb00011.*
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET SELEC = " SELECT UNIQUE * FROM vetb00011 ",
|
||||
" WHERE status_t is null AND ",criterio clipped,
|
||||
" ORDER BY 1,2,3,4,5,6"
|
||||
PREPARE busca FROM selec
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DECLARE datos SCROLL CURSOR WITH HOLD FOR busca
|
||||
OPEN datos
|
||||
|
||||
FETCH FIRST datos INTO comisiones.*
|
||||
IF status >= 0 THEN
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
RETURN
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones.*
|
||||
CALL busca_vendedor()
|
||||
CALL busca_nombre_articulo1()
|
||||
|
||||
MENU "OPCIONES "
|
||||
COMMAND "Siguiente"
|
||||
"Presenta en pantalla el proximo registro encontrado"
|
||||
FETCH NEXT datos INTO comisiones.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones.*
|
||||
CALL busca_vendedor()
|
||||
CALL busca_nombre_articulo1()
|
||||
|
||||
COMMAND "Anterior"
|
||||
"Presenta en pantalla el registro anterior encontrado"
|
||||
FETCH PREVIOUS datos INTO comisiones.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones.*
|
||||
CALL busca_vendedor()
|
||||
CALL busca_nombre_articulo1()
|
||||
|
||||
COMMAND "Primero"
|
||||
"Presenta en pantalla el primer registro encontrado"
|
||||
FETCH FIRST datos INTO comisiones.*
|
||||
|
||||
DISPLAY BY NAME comisiones.*
|
||||
CALL busca_vendedor()
|
||||
CALL busca_nombre_articulo1()
|
||||
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Ultimo"
|
||||
"Presenta en pantalla el ultimo registro encontrado"
|
||||
FETCH LAST datos INTO comisiones.*
|
||||
|
||||
DISPLAY BY NAME comisiones.*
|
||||
CALL busca_vendedor()
|
||||
CALL busca_nombre_articulo1()
|
||||
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Escoger"
|
||||
"<Esc> Actualiza Registro <Supr> Cancela Operacion"
|
||||
|
||||
INPUT BY NAME comisiones.porc_ventas,
|
||||
comisiones.porc_cobros WITHOUT DEFAULTS
|
||||
|
||||
AFTER FIELD porc_ventas
|
||||
IF comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
AFTER FIELD porc_cobros
|
||||
IF (comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0) AND
|
||||
(comisiones.porc_cobros IS NULL OR
|
||||
comisiones.porc_cobros = 0) THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
AFTER INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
IF comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
IF (comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0) AND
|
||||
(comisiones.porc_cobros IS NULL OR
|
||||
comisiones.porc_cobros = 0) THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
UPDATE vetb00011 SET porc_ventas = comisiones.porc_ventas,
|
||||
porc_cobros = comisiones.porc_cobros,
|
||||
us_mod = USER,
|
||||
fech_mod = CURRENT
|
||||
WHERE
|
||||
sec_vend = comisiones.sec_vend AND
|
||||
cod_n = comisiones.cod_n AND
|
||||
cod_grupo = comisiones.cod_grupo AND
|
||||
cod_tipo = comisiones.cod_tipo AND
|
||||
cod_sec = comisiones.cod_sec
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
LET numero_msg = 13
|
||||
CALL msg(numero_msg)
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
|
||||
COMMAND KEY ("L") "eLiminar"
|
||||
"Elimina registro que esta en la pantalla"
|
||||
UPDATE vetb00011 SET status_t = "E"
|
||||
WHERE
|
||||
sec_vend = comisiones.sec_vend AND
|
||||
cod_n = comisiones.cod_n AND
|
||||
cod_grupo = comisiones.cod_grupo AND
|
||||
cod_tipo = comisiones.cod_tipo AND
|
||||
cod_sec = comisiones.cod_sec
|
||||
|
||||
LET numero_msg = 39
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Retornar"
|
||||
"Retorna al menu anterior"
|
||||
CLEAR FORM
|
||||
# CALL ayuda()
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION busca_vendedor()
|
||||
# Esta funcion busca el nombre del vendedor y lo despliega en pantalla
|
||||
# Esta funcion es valida solamente para la consulta-modificacion.
|
||||
|
||||
LET descrip6 = NULL
|
||||
LET descrip2 = NULL
|
||||
SELECT i.nom1_emp, i.apell1_emp, i.status_t
|
||||
INTO descrip1, descrip2, status_reg
|
||||
FROM adtb00003 i
|
||||
WHERE i.num_emp = comisiones.sec_vend and i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET descrip6 = NULL
|
||||
LET descrip2 = NULL
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
ELSE
|
||||
IF status_reg = "E" THEN
|
||||
LET descrip6 = NULL
|
||||
LET descrip2 = NULL
|
||||
LET numero_msg = 67
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
END IF
|
||||
LET descrip6 = descrip1 clipped," ",descrip2 clipped
|
||||
DISPLAY descrip6 TO descrip6
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION busca_nombre_articulo1()
|
||||
# Esta funcion busca el nombre del articulo y lo despliega en pantalla
|
||||
# Esta funcion es valida solamente para la consulta-modificacion.
|
||||
|
||||
SELECT i.descrip_esp, i.status_t INTO descrip1, status_reg
|
||||
FROM intb00001 i
|
||||
WHERE i.cod_n = comisiones.cod_n AND
|
||||
i.cod_grupo = comisiones.cod_grupo AND
|
||||
i.cod_tipo = comisiones.cod_tipo AND
|
||||
i.cod_sec = comisiones.cod_sec
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 26
|
||||
CALL msg(numero_msg)
|
||||
ELSE
|
||||
IF status_reg = "E" THEN
|
||||
LET numero_msg = 44
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
END IF
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION consulta_empleados1()
|
||||
OPEN WINDOW busqueda AT 7,12 WITH FORM "tefmwd001"
|
||||
ATTRIBUTE (BORDER,FORM LINE FIRST + 2,COMMENT LINE LAST,MESSAGE LINE LAST)
|
||||
|
||||
LET int_flag = false
|
||||
CONSTRUCT criterio ON a.nom1_emp FROM descrip6
|
||||
|
||||
LET selec2 = " SELECT a.num_emp, a.nom1_emp, a.apell1_emp ",
|
||||
" FROM adtb00003 a ",
|
||||
" WHERE a.status_t is null AND ",criterio clipped,
|
||||
" ORDER BY 1,2 "
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
GO TO salir_consulta_e
|
||||
END IF
|
||||
|
||||
PREPARE busca_empleados FROM selec2
|
||||
IF status >= 0 THEN
|
||||
IF status = notfound THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
END IF
|
||||
END IF
|
||||
|
||||
DECLARE buscar_empleados CURSOR FOR busca_empleados
|
||||
LET idx = 1
|
||||
|
||||
FOREACH buscar_empleados INTO arr_empleados[idx].*
|
||||
IF status = NOTFOUND THEN
|
||||
EXIT FOREACH
|
||||
END IF
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
EXIT FOREACH
|
||||
END IF
|
||||
|
||||
LET empleados[idx].cod_emp = arr_empleados[idx].cod_emp
|
||||
LET empleados[idx].descrip6 =
|
||||
arr_empleados[idx].nom_emp clipped," ",arr_empleados[idx].apell_emp clipped
|
||||
LET idx = idx + 1
|
||||
END FOREACH
|
||||
|
||||
CALL set_count(idx-1)
|
||||
MESSAGE " <Esc> Selecciona Empleado donde esta el cursor"
|
||||
DISPLAY ARRAY empleados TO s_empleados.*
|
||||
LET curr1 = arr_curr()
|
||||
|
||||
LET transportista.cod_transp = empleados[curr1].cod_emp
|
||||
LET descrip6 = empleados[curr1].descrip6
|
||||
|
||||
LABEL salir_consulta_e:
|
||||
CLOSE WINDOW busqueda
|
||||
|
||||
END FUNCTION
|
||||
|
||||
@@ -0,0 +1,219 @@
|
||||
{
|
||||
------------------------------------------------------------------
|
||||
PROGRAMA : TEPRMT004
|
||||
OBJETIVO : Capturar, Modificar, Eliminar registros de la
|
||||
Tabla de Partidas del Cash Flow
|
||||
PROGRAMADOR : Tadeo A. Ferreras
|
||||
FECHA REALIZACION : Diciembre 06, 1995.
|
||||
------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
FUNCTION teprmt004()
|
||||
CLEAR SCREEN
|
||||
OPTIONS
|
||||
FORM LINE 9,
|
||||
ERROR LINE 23,
|
||||
MESSAGE LINE 24,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmmt004 FROM "tefmmt004"
|
||||
DISPLAY FORM tefmmt004
|
||||
CALL pantalla()
|
||||
# CALL ayuda()
|
||||
DISPLAY "teprmt004" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Maestra de Partidas Del Cash-Flow" at 6,24 ATTRIBUTE(BLACK)
|
||||
|
||||
MENU "OPCIONES"
|
||||
COMMAND "Adicionar"
|
||||
"<Esc> Adiciona Registro <Supr> Cancela Operacion"
|
||||
LET INT_FLAG = FALSE
|
||||
CLEAR FORM
|
||||
CALL tepcad004()
|
||||
COMMAND "Consultar-modificar"
|
||||
"<Esc> Realiza Busqueda <Supr> Cancela Operacion"
|
||||
LET int_flag = FALSE
|
||||
CALL tepcmf004()
|
||||
COMMAND "Salir" "Retorna Menu Anterior"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcad004()
|
||||
# WHENEVER ERROR CONTINUE
|
||||
## Captura los datos que va a contener el registro
|
||||
|
||||
INPUT BY NAME p_tetb03.*
|
||||
|
||||
AFTER FIELD codigo
|
||||
|
||||
IF p_tetb03.codigo is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD codigo
|
||||
END IF
|
||||
|
||||
SELECT UNIQUE descripcion INTO p_tetb03.descripcion
|
||||
FROM tetb00003 WHERE @codigo = p_tetb03.codigo
|
||||
|
||||
IF STATUS != NOTFOUND THEN
|
||||
DISPLAY BY NAME p_tetb03.descripcion
|
||||
LET numero_msg = 12
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD codigo
|
||||
END IF
|
||||
|
||||
AFTER FIELD descripcion
|
||||
IF p_tetb03.descripcion[1] =" " OR p_tetb03.descripcion is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD descripcion
|
||||
END IF
|
||||
|
||||
AFTER FIELD tipo
|
||||
IF p_tetb03.tipo IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD tipo
|
||||
END IF
|
||||
|
||||
END INPUT
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET numero_msg = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
INSERT INTO tetb00003 VALUES (p_tetb03.*)
|
||||
UPDATE tetb00003 SET (us_crea,fech_crea) = (USER,CURRENT)
|
||||
WHERE @codigo = p_tetb03.codigo
|
||||
|
||||
LET numero_msg = 1
|
||||
CALL msg(numero_msg)
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcmf004()
|
||||
LET int_flag = FALSE
|
||||
## Aqui se prepara para la captura del criterio de seleccion
|
||||
MESSAGE ""
|
||||
CLEAR FORM
|
||||
CONSTRUCT criterio ON a.codigo,a.descripcion FROM codigo,descripcion
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET SELEC =
|
||||
" SELECT UNIQUE a.* FROM tetb00003 a ",
|
||||
" WHERE a.status_t IS NULL AND ",criterio clipped," ORDER BY a.codigo "
|
||||
|
||||
PREPARE busca FROM selec
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DECLARE datos SCROLL CURSOR FOR busca
|
||||
OPEN datos
|
||||
|
||||
FETCH FIRST datos INTO p_tetb03.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb03.*
|
||||
|
||||
MENU "OPCIONES "
|
||||
COMMAND "Siguiente" "Presenta en pantalla el proximo registro encontrado"
|
||||
FETCH NEXT datos INTO p_tetb03.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb03.*
|
||||
|
||||
COMMAND "Anterior" "Presenta en pantalla el registro anterior encontrado"
|
||||
FETCH PREVIOUS datos INTO p_tetb03.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb03.*
|
||||
|
||||
COMMAND "Primero" "Presenta en pantalla el primer registro encontrado"
|
||||
FETCH FIRST datos INTO p_tetb03.*
|
||||
|
||||
DISPLAY BY NAME p_tetb03.*
|
||||
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Ultimo" "Presenta en pantalla el ultimo registro encontrado"
|
||||
FETCH LAST datos INTO p_tetb03.*
|
||||
|
||||
DISPLAY BY NAME p_tetb03.*
|
||||
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Escoger" "<Esc> Actualiza Registro <Supr> Cancela Operacion"
|
||||
|
||||
INPUT BY NAME p_tetb03.descripcion THRU p_tetb03.fech_mod
|
||||
WITHOUT DEFAULTS
|
||||
|
||||
AFTER FIELD descripcion
|
||||
IF p_tetb03.descripcion[1] = " " OR
|
||||
p_tetb03.descripcion is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD descripcion
|
||||
END IF
|
||||
|
||||
AFTER FIELD tipo
|
||||
IF p_tetb03.tipo IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD tipo
|
||||
END IF
|
||||
|
||||
END INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
UPDATE tetb00003 SET (descripcion,tipo,us_mod,fech_mod)
|
||||
= (p_tetb03.descripcion,p_tetb03.tipo,
|
||||
USER,CURRENT)
|
||||
WHERE @codigo = p_tetb03.codigo
|
||||
|
||||
LET numero_msg = 13
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND KEY ("L") "eLiminar" "Elimina registro que esta en la pantalla"
|
||||
|
||||
UPDATE tetb00003 SET (status_t,us_mod,fech_mod)
|
||||
= ("E",USER,CURRENT)
|
||||
WHERE @codigo = p_tetb03.codigo
|
||||
|
||||
LET numero_msg = 39
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Retornar" "Retorna al menu anterior"
|
||||
CLEAR FORM
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,308 @@
|
||||
{
|
||||
------------------------------------------------------------------
|
||||
PROGRAMA : TEPRMT005
|
||||
OBJETIVO : Capturar, Modificar, Eliminar registros de la
|
||||
Tabla de Presupuestos de Partidas del Cash Flow
|
||||
PROGRAMADOR : Tadeo A. Ferreras
|
||||
FECHA REALIZACION : Diciembre 06, 1995.
|
||||
------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
FUNCTION teprmt005()
|
||||
CLEAR SCREEN
|
||||
OPTIONS
|
||||
FORM LINE 8,
|
||||
ERROR LINE 23,
|
||||
MESSAGE LINE 24,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmmt005 FROM "tefmmt005"
|
||||
DISPLAY FORM tefmmt005
|
||||
CALL pantalla()
|
||||
# CALL ayuda()
|
||||
DISPLAY "teprmt005" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Estimados de Partidas Del Cash-Flow" at 6,23 ATTRIBUTE(BLACK)
|
||||
|
||||
MENU "OPCIONES"
|
||||
COMMAND "Adicionar"
|
||||
"<Esc> Adiciona Registro <Supr> Cancela Operacion"
|
||||
LET INT_FLAG = FALSE
|
||||
CLEAR FORM
|
||||
CALL tepcad005()
|
||||
COMMAND "Consultar-modificar"
|
||||
"<Esc> Realiza Busqueda <Supr> Cancela Operacion"
|
||||
LET int_flag = FALSE
|
||||
CALL tepcmf005()
|
||||
COMMAND "Salir" "Retorna Menu Anterior"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcad005()
|
||||
# WHENEVER ERROR CONTINUE
|
||||
## Captura los datos que va a contener el registro
|
||||
|
||||
INPUT BY NAME p_tetb04.codigo,p_tetb04.ano
|
||||
|
||||
AFTER FIELD codigo
|
||||
|
||||
IF p_tetb04.codigo is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD codigo
|
||||
END IF
|
||||
|
||||
SELECT UNIQUE descripcion INTO p_tetb03.descripcion
|
||||
FROM tetb00003 WHERE @codigo = p_tetb04.codigo
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD codigo
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb03.descripcion
|
||||
|
||||
AFTER FIELD ano
|
||||
IF p_tetb04.ano IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD ano
|
||||
END IF
|
||||
|
||||
SELECT UNIQUE a.ano FROM tetb00004 a
|
||||
WHERE a.codigo = p_tetb04.codigo AND a.ano = p_tetb04.ano
|
||||
|
||||
IF STATUS != NOTFOUND THEN
|
||||
LET numero_msg = 12
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD codigo
|
||||
END IF
|
||||
END INPUT
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET numero_msg = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
FOR idx = 1 TO 12
|
||||
LET arr_tetb04[idx].mes = idx
|
||||
SELECT UNIQUE a.descrip INTO arr_tetb04[idx].descrip FROM mestable a
|
||||
WHERE a.mes = arr_tetb04[idx].mes
|
||||
LET arr_tetb04[idx].valor = 0
|
||||
END FOR
|
||||
CALL SET_COUNT(idx)
|
||||
|
||||
INPUT ARRAY arr_tetb04 WITHOUT DEFAULTS FROM scr_tetb04.*
|
||||
BEFORE ROW
|
||||
LET curr = ARR_CURR()
|
||||
LET fila = SCR_LINE()
|
||||
|
||||
AFTER FIELD mes
|
||||
IF arr_tetb04[curr].mes IS NOT NULL THEN
|
||||
SELECT UNIQUE a.descrip INTO arr_tetb04[curr].descrip FROM mestable a
|
||||
WHERE a.mes = arr_tetb04[curr].mes
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD mes
|
||||
END IF
|
||||
|
||||
DISPLAY arr_tetb04[curr].descrip TO scr_tetb04[fila].descrip
|
||||
END IF
|
||||
|
||||
AFTER FIELD valor
|
||||
IF arr_tetb04[curr].valor IS NOT NULL THEN
|
||||
IF arr_tetb04[curr].valor IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD valor
|
||||
END IF
|
||||
|
||||
END IF
|
||||
END INPUT
|
||||
IF INT_FLAG THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET INT_FLAG = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
FOR idx = 1 TO 12
|
||||
IF arr_tetb04[idx].valor IS NULL THEN
|
||||
LET arr_tetb04[idx].valor = 0
|
||||
END IF
|
||||
|
||||
INSERT INTO tetb00004 VALUES (p_tetb04.codigo,p_tetb04.ano,
|
||||
idx,arr_tetb04[idx].valor,
|
||||
NULL,USER,CURRENT,NULL,NULL)
|
||||
END FOR
|
||||
LET numero_msg = 1
|
||||
CALL msg(numero_msg)
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcmf005()
|
||||
LET int_flag = FALSE
|
||||
## Aqui se prepara para la captura del criterio de seleccion
|
||||
MESSAGE ""
|
||||
CLEAR FORM
|
||||
CONSTRUCT criterio ON a.codigo,a.ano FROM codigo,ano
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET SELEC =
|
||||
"SELECT UNIQUE a.codigo,a.ano,b.descripcion ",
|
||||
"FROM tetb00004 a,tetb00003 b ",
|
||||
"WHERE (a.codigo = b.codigo) AND a.status_t IS NULL AND ",
|
||||
criterio clipped," ORDER BY a.codigo,a.ano "
|
||||
|
||||
PREPARE busca FROM selec
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DECLARE datos SCROLL CURSOR FOR busca
|
||||
OPEN datos
|
||||
|
||||
FETCH FIRST datos INTO p_tetb04.codigo,p_tetb04.ano,p_tetb03.descripcion
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb04.codigo,p_tetb04.ano,p_tetb03.descripcion
|
||||
|
||||
MENU "OPCIONES "
|
||||
COMMAND "Siguiente" "Presenta en pantalla el proximo registro encontrado"
|
||||
FETCH NEXT datos INTO p_tetb04.codigo,p_tetb04.ano,p_tetb03.descripcion
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb04.codigo,p_tetb04.ano,p_tetb03.descripcion
|
||||
|
||||
COMMAND "Anterior" "Presenta en pantalla el registro anterior encontrado"
|
||||
FETCH PREVIOUS datos INTO p_tetb04.codigo,p_tetb04.ano,
|
||||
p_tetb03.descripcion
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb04.codigo,p_tetb04.ano,p_tetb03.descripcion
|
||||
|
||||
COMMAND "Primero" "Presenta en pantalla el primer registro encontrado"
|
||||
FETCH FIRST datos INTO p_tetb04.codigo,p_tetb04.ano,p_tetb03.descripcion
|
||||
|
||||
DISPLAY BY NAME p_tetb04.codigo,p_tetb04.ano,p_tetb03.descripcion
|
||||
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Ultimo" "Presenta en pantalla el ultimo registro encontrado"
|
||||
FETCH LAST datos INTO p_tetb04.codigo,p_tetb04.ano,p_tetb03.descripcion
|
||||
|
||||
DISPLAY BY NAME p_tetb04.codigo,p_tetb04.ano,p_tetb03.descripcion
|
||||
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Escoger" "<Esc> Actualiza Registro <Supr> Cancela Operacion"
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET numero_msg = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DECLARE buscar CURSOR FOR
|
||||
SELECT a.mes,b.descrip,a.valor FROM tetb00004 a, mestable b
|
||||
WHERE (a.mes = b.mes) AND (a.codigo = p_tetb04.codigo) AND
|
||||
(a.ano = p_tetb04.ano) AND (a.status_t IS NULL) ORDER BY 1
|
||||
|
||||
LET idx = 1
|
||||
FOREACH buscar INTO arr_tetb04[idx].*
|
||||
LET idx = idx + 1
|
||||
END FOREACH
|
||||
CALL SET_COUNT(idx-1)
|
||||
|
||||
INPUT ARRAY arr_tetb04 WITHOUT DEFAULTS FROM scr_tetb04.*
|
||||
BEFORE ROW
|
||||
LET curr = ARR_CURR()
|
||||
LET fila = SCR_LINE()
|
||||
|
||||
AFTER FIELD mes
|
||||
IF arr_tetb04[curr].mes IS NOT NULL THEN
|
||||
SELECT UNIQUE a.descrip INTO arr_tetb04[curr].descrip FROM mestable a
|
||||
WHERE a.mes = arr_tetb04[curr].mes
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD mes
|
||||
END IF
|
||||
|
||||
DISPLAY arr_tetb04[curr].descrip TO scr_tetb04[fila].descrip
|
||||
END IF
|
||||
|
||||
AFTER FIELD valor
|
||||
IF arr_tetb04[curr].valor IS NOT NULL THEN
|
||||
IF arr_tetb04[curr].valor IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD valor
|
||||
END IF
|
||||
|
||||
END IF
|
||||
END INPUT
|
||||
IF INT_FLAG THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET INT_FLAG = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DELETE FROM tetb00004 WHERE @codigo = p_tetb04.codigo AND
|
||||
@ano = p_tetb04.ano
|
||||
|
||||
FOR idx = 1 TO 12
|
||||
IF arr_tetb04[idx].valor IS NULL THEN
|
||||
LET arr_tetb04[idx].valor = 0
|
||||
END IF
|
||||
|
||||
INSERT INTO tetb00004 VALUES (p_tetb04.codigo,p_tetb04.ano,
|
||||
idx,arr_tetb04[idx].valor,
|
||||
NULL,USER,CURRENT,NULL,NULL)
|
||||
END FOR
|
||||
LET numero_msg = 13
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND KEY ("L") "eLiminar" "Elimina registro que esta en la pantalla"
|
||||
|
||||
UPDATE tetb00004 SET (status_t,us_mod,fech_mod)
|
||||
= ("E",USER,CURRENT)
|
||||
WHERE @codigo = p_tetb04.codigo AND @ano=p_tetb04.ano
|
||||
|
||||
LET numero_msg = 39
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Retornar" "Retorna al menu anterior"
|
||||
CLEAR FORM
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,308 @@
|
||||
{
|
||||
------------------------------------------------------------------
|
||||
PROGRAMA : TEPRMT006
|
||||
OBJETIVO : Capturar, Modificar, Eliminar registros de la
|
||||
Tabla de Historico Real Partidas del Cash Flow
|
||||
PROGRAMADOR : Tadeo A. Ferreras
|
||||
FECHA REALIZACION : Diciembre 07, 1995.
|
||||
------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
FUNCTION teprmt006()
|
||||
CLEAR SCREEN
|
||||
OPTIONS
|
||||
FORM LINE 8,
|
||||
ERROR LINE 23,
|
||||
MESSAGE LINE 24,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmmt006 FROM "tefmmt006"
|
||||
DISPLAY FORM tefmmt006
|
||||
CALL pantalla()
|
||||
# CALL ayuda()
|
||||
DISPLAY "teprmt006" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Historico Real de Partidas Del Cash-Flow" at 6,20 ATTRIBUTE(BLACK)
|
||||
|
||||
MENU "OPCIONES"
|
||||
COMMAND "Adicionar"
|
||||
"<Esc> Adiciona Registro <Supr> Cancela Operacion"
|
||||
LET INT_FLAG = FALSE
|
||||
CLEAR FORM
|
||||
CALL tepcad006()
|
||||
COMMAND "Consultar-modificar"
|
||||
"<Esc> Realiza Busqueda <Supr> Cancela Operacion"
|
||||
LET int_flag = FALSE
|
||||
CALL tepcmf006()
|
||||
COMMAND "Salir" "Retorna Menu Anterior"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcad006()
|
||||
# WHENEVER ERROR CONTINUE
|
||||
## Captura los datos que va a contener el registro
|
||||
|
||||
INPUT BY NAME p_tetb05.codigo,p_tetb05.ano
|
||||
|
||||
AFTER FIELD codigo
|
||||
|
||||
IF p_tetb05.codigo is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD codigo
|
||||
END IF
|
||||
|
||||
SELECT UNIQUE descripcion INTO p_tetb03.descripcion
|
||||
FROM tetb00003 WHERE @codigo = p_tetb05.codigo
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD codigo
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb03.descripcion
|
||||
|
||||
AFTER FIELD ano
|
||||
IF p_tetb05.ano IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD ano
|
||||
END IF
|
||||
|
||||
SELECT UNIQUE a.ano FROM tetb00005 a
|
||||
WHERE a.codigo = p_tetb05.codigo AND a.ano = p_tetb05.ano
|
||||
|
||||
IF STATUS != NOTFOUND THEN
|
||||
LET numero_msg = 12
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD codigo
|
||||
END IF
|
||||
END INPUT
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET numero_msg = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
FOR idx = 1 TO 12
|
||||
LET arr_tetb05[idx].mes = idx
|
||||
SELECT UNIQUE a.descrip INTO arr_tetb05[idx].descrip FROM mestable a
|
||||
WHERE a.mes = arr_tetb05[idx].mes
|
||||
LET arr_tetb05[idx].valor = 0
|
||||
END FOR
|
||||
CALL SET_COUNT(idx)
|
||||
|
||||
INPUT ARRAY arr_tetb05 WITHOUT DEFAULTS FROM scr_tetb05.*
|
||||
BEFORE ROW
|
||||
LET curr = ARR_CURR()
|
||||
LET fila = SCR_LINE()
|
||||
|
||||
AFTER FIELD mes
|
||||
IF arr_tetb05[curr].mes IS NOT NULL THEN
|
||||
SELECT UNIQUE a.descrip INTO arr_tetb05[curr].descrip FROM mestable a
|
||||
WHERE a.mes = arr_tetb05[curr].mes
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD mes
|
||||
END IF
|
||||
|
||||
DISPLAY arr_tetb05[curr].descrip TO scr_tetb05[fila].descrip
|
||||
END IF
|
||||
|
||||
AFTER FIELD valor
|
||||
IF arr_tetb05[curr].valor IS NOT NULL THEN
|
||||
IF arr_tetb05[curr].valor IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD valor
|
||||
END IF
|
||||
|
||||
END IF
|
||||
END INPUT
|
||||
IF INT_FLAG THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET INT_FLAG = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
FOR idx = 1 TO ARR_COUNT()
|
||||
IF arr_tetb05[idx].valor IS NULL THEN
|
||||
LET arr_tetb05[idx].valor = 0
|
||||
END IF
|
||||
|
||||
INSERT INTO tetb00005 VALUES (p_tetb05.codigo,p_tetb05.ano,
|
||||
idx,arr_tetb05[idx].valor,
|
||||
NULL,USER,CURRENT,NULL,NULL)
|
||||
END FOR
|
||||
LET numero_msg = 1
|
||||
CALL msg(numero_msg)
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcmf006()
|
||||
LET int_flag = FALSE
|
||||
## Aqui se prepara para la captura del criterio de seleccion
|
||||
MESSAGE ""
|
||||
CLEAR FORM
|
||||
CONSTRUCT criterio ON a.codigo,a.ano FROM codigo,ano
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET SELEC =
|
||||
"SELECT UNIQUE a.codigo,a.ano,b.descripcion ",
|
||||
"FROM tetb00005 a,tetb00003 b ",
|
||||
"WHERE (a.codigo = b.codigo) AND a.status_t IS NULL AND ",
|
||||
criterio clipped," ORDER BY a.codigo,a.ano "
|
||||
|
||||
PREPARE busca FROM selec
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DECLARE datos SCROLL CURSOR FOR busca
|
||||
OPEN datos
|
||||
|
||||
FETCH FIRST datos INTO p_tetb05.codigo,p_tetb05.ano,p_tetb03.descripcion
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb05.codigo,p_tetb05.ano,p_tetb03.descripcion
|
||||
|
||||
MENU "OPCIONES "
|
||||
COMMAND "Siguiente" "Presenta en pantalla el proximo registro encontrado"
|
||||
FETCH NEXT datos INTO p_tetb05.codigo,p_tetb05.ano,p_tetb03.descripcion
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb05.codigo,p_tetb05.ano,p_tetb03.descripcion
|
||||
|
||||
COMMAND "Anterior" "Presenta en pantalla el registro anterior encontrado"
|
||||
FETCH PREVIOUS datos INTO p_tetb05.codigo,p_tetb05.ano,
|
||||
p_tetb03.descripcion
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb05.codigo,p_tetb05.ano,p_tetb03.descripcion
|
||||
|
||||
COMMAND "Primero" "Presenta en pantalla el primer registro encontrado"
|
||||
FETCH FIRST datos INTO p_tetb05.codigo,p_tetb05.ano,p_tetb03.descripcion
|
||||
|
||||
DISPLAY BY NAME p_tetb05.codigo,p_tetb05.ano,p_tetb03.descripcion
|
||||
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Ultimo" "Presenta en pantalla el ultimo registro encontrado"
|
||||
FETCH LAST datos INTO p_tetb05.codigo,p_tetb05.ano,p_tetb03.descripcion
|
||||
|
||||
DISPLAY BY NAME p_tetb05.codigo,p_tetb05.ano,p_tetb03.descripcion
|
||||
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Escoger" "<Esc> Actualiza Registro <Supr> Cancela Operacion"
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET numero_msg = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DECLARE buscar CURSOR FOR
|
||||
SELECT UNIQUE a.mes,b.descrip,a.valor_real FROM tetb00005 a, mestable b
|
||||
WHERE (a.mes = b.mes) AND (a.codigo = p_tetb05.codigo) AND
|
||||
(a.ano = p_tetb05.ano) AND (a.status_t IS NULL) ORDER BY 1
|
||||
|
||||
LET idx = 1
|
||||
FOREACH buscar INTO arr_tetb05[idx].*
|
||||
LET idx = idx + 1
|
||||
END FOREACH
|
||||
CALL SET_COUNT(idx-1)
|
||||
|
||||
INPUT ARRAY arr_tetb05 WITHOUT DEFAULTS FROM scr_tetb05.*
|
||||
BEFORE ROW
|
||||
LET curr = ARR_CURR()
|
||||
LET fila = SCR_LINE()
|
||||
|
||||
AFTER FIELD mes
|
||||
IF arr_tetb05[curr].mes IS NOT NULL THEN
|
||||
SELECT UNIQUE a.descrip INTO arr_tetb05[curr].descrip FROM mestable a
|
||||
WHERE a.mes = arr_tetb05[curr].mes
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD mes
|
||||
END IF
|
||||
|
||||
DISPLAY arr_tetb05[curr].descrip TO scr_tetb05[fila].descrip
|
||||
END IF
|
||||
|
||||
AFTER FIELD valor
|
||||
IF arr_tetb05[curr].valor IS NOT NULL THEN
|
||||
IF arr_tetb05[curr].valor IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD valor
|
||||
END IF
|
||||
|
||||
END IF
|
||||
END INPUT
|
||||
IF INT_FLAG THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET INT_FLAG = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DELETE FROM tetb00005 WHERE @codigo = p_tetb05.codigo AND
|
||||
@ano = p_tetb05.ano
|
||||
|
||||
FOR idx = 1 TO 12
|
||||
IF arr_tetb05[idx].valor IS NULL THEN
|
||||
LET arr_tetb05[idx].valor = 0
|
||||
END IF
|
||||
|
||||
INSERT INTO tetb00005 VALUES (p_tetb05.codigo,p_tetb05.ano,
|
||||
idx,arr_tetb05[idx].valor,
|
||||
NULL,USER,CURRENT,NULL,NULL)
|
||||
END FOR
|
||||
LET numero_msg = 13
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND KEY ("L") "eLiminar" "Elimina registro que esta en la pantalla"
|
||||
|
||||
UPDATE tetb00005 SET (status_t,us_mod,fech_mod)
|
||||
= ("E",USER,CURRENT)
|
||||
WHERE @codigo = p_tetb05.codigo AND @ano=p_tetb05.ano
|
||||
|
||||
LET numero_msg = 39
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Retornar" "Retorna al menu anterior"
|
||||
CLEAR FORM
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,216 @@
|
||||
{
|
||||
------------------------------------------------------------------
|
||||
PROGRAMA : TEPRMT007
|
||||
OBJETIVO : Capturar, Modificar, Eliminar registros de la
|
||||
Tabla de Balance Final Partidas del Cash Flow
|
||||
PROGRAMADOR : Tadeo A. Ferreras
|
||||
FECHA REALIZACION : Diciembre 06, 1995.
|
||||
------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
FUNCTION teprmt007()
|
||||
CLEAR SCREEN
|
||||
OPTIONS
|
||||
FORM LINE 9,
|
||||
ERROR LINE 23,
|
||||
MESSAGE LINE 24,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmmt007 FROM "tefmmt007"
|
||||
DISPLAY FORM tefmmt007
|
||||
CALL pantalla()
|
||||
# CALL ayuda()
|
||||
DISPLAY "teprmt007" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Balance Final Del Real y Estimado de Cash-Flow" at 6,17 ATTRIBUTE(BLACK)
|
||||
|
||||
MENU "OPCIONES"
|
||||
COMMAND "Adicionar" "<Esc> Adiciona Registro <Supr> Cancela Operacion"
|
||||
LET INT_FLAG = FALSE
|
||||
CLEAR FORM
|
||||
CALL tepcad007()
|
||||
COMMAND "Consultar-modificar"
|
||||
"<Esc> Realiza Busqueda <Supr> Cancela Operacion"
|
||||
LET int_flag = FALSE
|
||||
CALL tepcmf007()
|
||||
COMMAND "Salir" "Retorna Menu Anterior"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcad007()
|
||||
# WHENEVER ERROR CONTINUE
|
||||
## Captura los datos que va a contener el registro
|
||||
|
||||
INPUT BY NAME p_tetb07.*
|
||||
|
||||
AFTER FIELD ano
|
||||
|
||||
IF p_tetb07.ano IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD ano
|
||||
END IF
|
||||
|
||||
SELECT UNIQUE valor,valor1 INTO p_tetb07.valor,p_tetb07.valor1
|
||||
FROM tetb00007 WHERE @ano = p_tetb07.ano
|
||||
|
||||
IF STATUS != NOTFOUND THEN
|
||||
DISPLAY BY NAME p_tetb07.valor,p_tetb07.valor1
|
||||
LET numero_msg = 12
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD ano
|
||||
END IF
|
||||
|
||||
AFTER FIELD valor
|
||||
IF p_tetb07.valor IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD valor
|
||||
END IF
|
||||
|
||||
AFTER FIELD valor1
|
||||
IF p_tetb07.valor1 IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD valor
|
||||
END IF
|
||||
|
||||
END INPUT
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET numero_msg = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
INSERT INTO tetb00007 VALUES (p_tetb07.*)
|
||||
UPDATE tetb00007 SET (us_crea,fech_crea) = (USER,CURRENT)
|
||||
WHERE @ano = p_tetb07.ano
|
||||
|
||||
LET numero_msg = 1
|
||||
CALL msg(numero_msg)
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcmf007()
|
||||
LET int_flag = FALSE
|
||||
## Aqui se prepara para la captura del criterio de seleccion
|
||||
MESSAGE ""
|
||||
CLEAR FORM
|
||||
CONSTRUCT criterio ON a.ano,a.valor,a.valor1 FROM ano,valor,valor1
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET SELEC =
|
||||
" SELECT UNIQUE a.* FROM tetb00007 a ",
|
||||
" WHERE a.status_t IS NULL AND ",criterio clipped," ORDER BY a.ano "
|
||||
|
||||
PREPARE busca FROM selec
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DECLARE datos SCROLL CURSOR FOR busca
|
||||
OPEN datos
|
||||
|
||||
FETCH FIRST datos INTO p_tetb07.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb07.*
|
||||
|
||||
MENU "OPCIONES "
|
||||
COMMAND "Siguiente" "Presenta en pantalla el proximo registro encontrado"
|
||||
FETCH NEXT datos INTO p_tetb07.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb07.*
|
||||
|
||||
COMMAND "Anterior" "Presenta en pantalla el registro anterior encontrado"
|
||||
FETCH PREVIOUS datos INTO p_tetb07.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb07.*
|
||||
|
||||
COMMAND "Primero" "Presenta en pantalla el primer registro encontrado"
|
||||
FETCH FIRST datos INTO p_tetb07.*
|
||||
|
||||
DISPLAY BY NAME p_tetb07.*
|
||||
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Ultimo" "Presenta en pantalla el ultimo registro encontrado"
|
||||
FETCH LAST datos INTO p_tetb07.*
|
||||
|
||||
DISPLAY BY NAME p_tetb07.*
|
||||
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Escoger" "<Esc> Actualiza Registro <Supr> Cancela Operacion"
|
||||
|
||||
INPUT BY NAME p_tetb07.valor THRU p_tetb07.fech_mod
|
||||
WITHOUT DEFAULTS
|
||||
|
||||
AFTER FIELD valor
|
||||
IF p_tetb07.valor IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD valor
|
||||
END IF
|
||||
|
||||
AFTER FIELD valor1
|
||||
IF p_tetb07.valor1 IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD valor1
|
||||
END IF
|
||||
|
||||
END INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
UPDATE tetb00007 SET (valor,valor1,us_mod,fech_mod)
|
||||
= (p_tetb07.valor,p_tetb07.valor1,USER,CURRENT)
|
||||
WHERE @ano = p_tetb07.ano
|
||||
|
||||
LET numero_msg = 13
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND KEY ("L") "eLiminar" "Elimina registro que esta en la pantalla"
|
||||
|
||||
UPDATE tetb00007 SET (status_t,us_mod,fech_mod)
|
||||
= ("E",USER,CURRENT)
|
||||
WHERE @ano = p_tetb07.ano
|
||||
|
||||
LET numero_msg = 39
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Retornar" "Retorna al menu anterior"
|
||||
CLEAR FORM
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,165 @@
|
||||
{
|
||||
------------------------------------------------------------------
|
||||
PROGRAMA : TEPRMT008
|
||||
OBJETIVO : Modificar registros de la Tabla de Relacion de
|
||||
Cheques y Partidas del Cash Flow
|
||||
PROGRAMADOR : Tadeo A. Ferreras
|
||||
FECHA REALIZACION : Enero 15, 1996
|
||||
------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
FUNCTION teprmt008()
|
||||
CLEAR SCREEN
|
||||
OPTIONS
|
||||
FORM LINE 9,
|
||||
ERROR LINE 23,
|
||||
MESSAGE LINE 24,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmmt008 FROM "tefmmt008"
|
||||
DISPLAY FORM tefmmt008
|
||||
CALL pantalla()
|
||||
# CALL ayuda()
|
||||
DISPLAY "teprmt008" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Maestra de Partidas Del Cash-Flow" at 6,24 ATTRIBUTE(BLACK)
|
||||
|
||||
MENU "OPCIONES"
|
||||
COMMAND "Consultar-modificar"
|
||||
"<Esc> Realiza Busqueda <Supr> Cancela Operacion"
|
||||
LET int_flag = FALSE
|
||||
CALL tepcmf008()
|
||||
COMMAND "Salir" "Retorna Menu Anterior"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcmf008()
|
||||
LET int_flag = FALSE
|
||||
## Aqui se prepara para la captura del criterio de seleccion
|
||||
MESSAGE ""
|
||||
CLEAR FORM
|
||||
CONSTRUCT criterio ON a.cheque_no,a.banco,a.codigo
|
||||
FROM cheque_no,banco,codigo
|
||||
|
||||
## Facilidad para cancelar la operacion
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
### Seleccion de los datos
|
||||
LET SELEC =
|
||||
"SELECT UNIQUE a.*,b.descripcion FROM tetb00006 a,tetb00003 b ",
|
||||
"WHERE a.status_t IS NULL AND a.codigo = b.codigo AND ",criterio clipped,
|
||||
" ORDER BY 1,2,3"
|
||||
|
||||
PREPARE busca FROM selec
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DECLARE datos SCROLL CURSOR FOR busca
|
||||
OPEN datos
|
||||
|
||||
#### Busca el primer registro con los parametros requeridos para verifica que
|
||||
#### existe
|
||||
FETCH FIRST datos INTO p_tetb06.*,p_tetb03.descripcion
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb06.*,p_tetb03.descripcion
|
||||
|
||||
### Menu para manejar las informacion requeridas
|
||||
MENU "OPCIONES "
|
||||
COMMAND "Siguiente" "Presenta en pantalla el proximo registro encontrado"
|
||||
FETCH NEXT datos INTO p_tetb06.*,p_tetb03.descripcion
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb06.*,p_tetb03.descripcion
|
||||
|
||||
COMMAND "Anterior" "Presenta en pantalla el registro anterior encontrado"
|
||||
FETCH PREVIOUS datos INTO p_tetb06.*,p_tetb03.descripcion
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb06.*,p_tetb03.descripcion
|
||||
|
||||
COMMAND "Primero" "Presenta en pantalla el primer registro encontrado"
|
||||
FETCH FIRST datos INTO p_tetb06.*,p_tetb03.descripcion
|
||||
|
||||
DISPLAY BY NAME p_tetb06.*,p_tetb03.descripcion
|
||||
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Ultimo" "Presenta en pantalla el ultimo registro encontrado"
|
||||
FETCH LAST datos INTO p_tetb06.*,p_tetb03.descripcion
|
||||
|
||||
DISPLAY BY NAME p_tetb06.*,p_tetb03.descripcion
|
||||
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
|
||||
### Proceso para digitar la informacion a modificar
|
||||
COMMAND "Escoger" "<Esc> Actualiza Registro <Supr> Cancela Operacion"
|
||||
|
||||
INPUT BY NAME p_tetb06.codigo THRU p_tetb06.fech_mod
|
||||
WITHOUT DEFAULTS
|
||||
|
||||
AFTER FIELD codigo
|
||||
IF p_tetb06.codigo is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD codigo
|
||||
END IF
|
||||
|
||||
#### Verifica que el codigo de partida exista en la maestra y sea desembolso
|
||||
|
||||
SELECT a.descripcion INTO p_tetb03.descripcion FROM tetb00003 a
|
||||
WHERE a.status_t IS NULL AND a.codigo = p_tetb06.codigo AND
|
||||
a.tipo[1] = "D"
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD codigo
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME p_tetb03.descripcion
|
||||
END INPUT
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
## actualiza la tabla con la informacion digitada
|
||||
|
||||
UPDATE tetb00006 SET (codigo,us_mod,fech_mod)
|
||||
= (p_tetb06.codigo,USER,CURRENT)
|
||||
WHERE @cheque_no = p_tetb06.cheque_no AND @banco = p_tetb06.banco
|
||||
|
||||
LET numero_msg = 13
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Retornar" "Retorna al menu anterior"
|
||||
CLEAR FORM
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,448 @@
|
||||
{
|
||||
------------------------------------------------------------------
|
||||
PROGRAMA : TEPRMT001
|
||||
OBJETIVO : Capturar, Modificar, Eliminar registros de la
|
||||
Tabla de Depositos.
|
||||
PROGRAMADOR : Tadeo A. Ferreras
|
||||
FECHA REALIZACION : Diciembre 2, 1992.
|
||||
------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
DEFINE proced INTEGER
|
||||
|
||||
FUNCTION teprmt001()
|
||||
CLEAR SCREEN
|
||||
OPTIONS
|
||||
FORM LINE 9,
|
||||
ERROR LINE 23,
|
||||
MESSAGE LINE 24,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmmt001 FROM "tefmmt001"
|
||||
DISPLAY FORM tefmmt001
|
||||
CALL pantalla()
|
||||
# CALL ayuda()
|
||||
DISPLAY "teprmt001" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Mantenimiento de Depositos" at 6,27 ATTRIBUTE(BLACK)
|
||||
|
||||
MENU "OPCIONES"
|
||||
COMMAND "Adicionar"
|
||||
"<Esc> Adiciona Registro <Supr> Cancela Operacion"
|
||||
HELP 5
|
||||
LET INT_FLAG = FALSE
|
||||
CLEAR FORM
|
||||
LET INT_FLAG = FALSE
|
||||
CALL tepcad001()
|
||||
COMMAND "Consultar-modificar"
|
||||
"<Esc> Realiza Busqueda <Supr> Cancela Operacion"
|
||||
HELP 6
|
||||
LET int_flag = FALSE
|
||||
CALL tepcmf001()
|
||||
COMMAND "Salir" "Retorna Menu Anterior"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcad001()
|
||||
# WHENEVER ERROR CONTINUE
|
||||
## Captura los datos que va a contener el registro
|
||||
|
||||
INITIALIZE deposito.* TO NULL
|
||||
LET descrip1 = NULL
|
||||
LET descrip2 = NULL
|
||||
INPUT BY NAME deposito.*
|
||||
ON KEY (CONTROL-W)
|
||||
CASE
|
||||
WHEN INFIELD(procedencia)
|
||||
CALL busca_procedencia()
|
||||
LET deposito.procedencia = proced
|
||||
DISPLAY BY NAME deposito.procedencia,descrip2
|
||||
NEXT FIELD fecha
|
||||
END CASE
|
||||
|
||||
BEFORE FIELD num_doc
|
||||
SELECT MAX(num_doc) INTO deposito.num_doc
|
||||
FROM tetb00001
|
||||
|
||||
IF deposito.num_doc IS NULL THEN
|
||||
LET deposito.num_doc = 0
|
||||
END IF
|
||||
|
||||
LET deposito.num_doc = deposito.num_doc + 1
|
||||
DISPLAY BY NAME deposito.num_doc
|
||||
|
||||
AFTER FIELD cuenta_no
|
||||
IF deposito.cuenta_no = " " OR
|
||||
deposito.cuenta_no is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cuenta_no
|
||||
END IF
|
||||
|
||||
LET descrip1 = NULL
|
||||
SELECT i.descripcion INTO descrip1
|
||||
FROM cgtb00001 i,cgtb00012 b
|
||||
WHERE i.cuenta_no = b.cuenta_no AND
|
||||
i.cuenta_no= deposito.cuenta_no AND
|
||||
i.status_t is null
|
||||
|
||||
IF descrip1 IS NULL THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cuenta_no
|
||||
END IF
|
||||
DISPLAY BY NAME descrip1
|
||||
|
||||
AFTER FIELD procedencia
|
||||
IF deposito.cta_banco IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cta_banco
|
||||
END IF
|
||||
|
||||
LET descrip2 = NULL
|
||||
IF deposito.procedencia IS NOT NULL THEN
|
||||
SELECT unique a.descripcion INTO descrip2 FROM tetb00002 a
|
||||
WHERE a.status_t IS NULL AND a.procedencia=deposito.procedencia
|
||||
|
||||
IF descrip2 IS NULL THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD procedencia
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME descrip2
|
||||
END IF
|
||||
|
||||
AFTER FIELD fecha
|
||||
IF deposito.procedencia IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD procedencia
|
||||
END IF
|
||||
|
||||
IF deposito.fecha IS NOT NULL THEN
|
||||
IF deposito.fecha > today THEN
|
||||
LET numero_msg = 189
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha
|
||||
END IF
|
||||
|
||||
LET p_fechas = deposito.fecha
|
||||
CALL prd()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
NEXT FIELD fecha
|
||||
END IF
|
||||
END IF
|
||||
|
||||
AFTER FIELD monto
|
||||
IF deposito.fecha IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha
|
||||
END IF
|
||||
|
||||
IF deposito.monto IS NULL OR
|
||||
deposito.monto = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD monto
|
||||
END IF
|
||||
|
||||
END INPUT
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET numero_msg = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
INSERT INTO tetb00001 VALUES (deposito.*)
|
||||
UPDATE tetb00001 SET (us_crea,fech_crea) = (USER,CURRENT)
|
||||
WHERE @num_doc = deposito.num_doc
|
||||
|
||||
LET numero_msg = 1
|
||||
CALL msg(numero_msg)
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcmf001()
|
||||
LET int_flag = FALSE
|
||||
## Aqui se prepara para la captura del criterio de seleccion
|
||||
MESSAGE ""
|
||||
CLEAR FORM
|
||||
CONSTRUCT criterio ON a.num_doc,a.cuenta_no FROM num_doc,cuenta_no
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET SELEC = " SELECT UNIQUE a.*,b.descripcion,c.descripcion ",
|
||||
" FROM tetb00001 a,cgtb00001 b,tetb00002 c ",
|
||||
" WHERE a.cuenta_no = b.cuenta_no AND a.status_t is null AND ",
|
||||
" a.procedencia = c.procedencia AND ",
|
||||
criterio clipped," ORDER BY a.num_doc "
|
||||
|
||||
PREPARE busca FROM selec
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DECLARE datos SCROLL CURSOR FOR busca
|
||||
OPEN datos
|
||||
|
||||
FETCH FIRST datos INTO deposito.*,descrip1,descrip2
|
||||
IF status >= 0 THEN
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
RETURN
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME deposito.*,descrip1,descrip2
|
||||
#CALL busca_cuenta()
|
||||
|
||||
MENU "OPCIONES "
|
||||
COMMAND "Siguiente"
|
||||
"Presenta en pantalla el proximo registro encontrado"
|
||||
FETCH NEXT datos INTO deposito.*,descrip1,descrip2
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
#CALL busca_cuenta()
|
||||
|
||||
DISPLAY BY NAME deposito.*,descrip1,descrip2
|
||||
|
||||
COMMAND "Anterior"
|
||||
"Presenta en pantalla el registro anterior encontrado"
|
||||
FETCH PREVIOUS datos INTO deposito.*,descrip1,descrip2
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
#CALL busca_cuenta()
|
||||
DISPLAY BY NAME deposito.*,descrip1,descrip2
|
||||
|
||||
COMMAND "Primero"
|
||||
"Presenta en pantalla el primer registro encontrado"
|
||||
FETCH FIRST datos INTO deposito.*,descrip1,descrip2
|
||||
|
||||
#CALL busca_cuenta()
|
||||
DISPLAY BY NAME deposito.*,descrip1,descrip2
|
||||
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Ultimo"
|
||||
"Presenta en pantalla el ultimo registro encontrado"
|
||||
FETCH LAST datos INTO deposito.*,descrip1,descrip2
|
||||
|
||||
# CALL busca_cuenta()
|
||||
DISPLAY BY NAME deposito.*,descrip1
|
||||
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Escoger"
|
||||
"<Esc> Actualiza Registro <Supr> Cancela Operacion"
|
||||
|
||||
LET p_fechas = deposito.fecha
|
||||
CALL prd()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
INPUT BY NAME deposito.cuenta_no THRU deposito.fech_mod WITHOUT DEFAULTS
|
||||
ON KEY (CONTROL-W)
|
||||
CASE
|
||||
WHEN INFIELD(procedencia)
|
||||
CALL busca_procedencia()
|
||||
LET deposito.procedencia = proced
|
||||
DISPLAY BY NAME deposito.procedencia,descrip2
|
||||
NEXT FIELD fecha
|
||||
END CASE
|
||||
|
||||
AFTER FIELD cuenta_no
|
||||
IF deposito.cuenta_no = " " OR
|
||||
deposito.cuenta_no is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cuenta_no
|
||||
END IF
|
||||
|
||||
LET descrip1 = NULL
|
||||
SELECT i.descripcion INTO descrip1
|
||||
FROM cgtb00001 i,cgtb00012 b
|
||||
WHERE i.cuenta_no = b.cuenta_no AND
|
||||
i.cuenta_no= deposito.cuenta_no AND
|
||||
i.status_t is null
|
||||
|
||||
IF descrip1 IS NULL THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cuenta_no
|
||||
END IF
|
||||
DISPLAY BY NAME descrip1
|
||||
|
||||
AFTER FIELD procedencia
|
||||
IF deposito.cta_banco IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cta_banco
|
||||
END IF
|
||||
|
||||
LET descrip2 = NULL
|
||||
IF deposito.procedencia IS NOT NULL THEN
|
||||
SELECT unique a.descripcion INTO descrip2 FROM tetb00002 a
|
||||
WHERE a.status_t IS NULL AND a.procedencia=deposito.procedencia
|
||||
|
||||
IF descrip2 IS NULL THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD procedencia
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME descrip2
|
||||
END IF
|
||||
|
||||
AFTER FIELD fecha
|
||||
IF deposito.procedencia IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD procedencia
|
||||
END IF
|
||||
|
||||
IF deposito.fecha IS NOT NULL THEN
|
||||
IF deposito.fecha > today THEN
|
||||
LET numero_msg = 189
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha
|
||||
END IF
|
||||
|
||||
LET p_fechas = deposito.fecha
|
||||
CALL prd()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
NEXT FIELD fecha
|
||||
END IF
|
||||
END IF
|
||||
|
||||
AFTER FIELD monto
|
||||
IF deposito.monto IS NULL OR
|
||||
deposito.monto = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD monto
|
||||
END IF
|
||||
END INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
UPDATE tetb00001 SET (cuenta_no,cta_banco,procedencia,
|
||||
fecha,monto,us_mod,fech_mod)
|
||||
= (deposito.cuenta_no,deposito.cta_banco,
|
||||
deposito.procedencia,deposito.fecha,
|
||||
deposito.monto,USER,CURRENT)
|
||||
WHERE @num_doc = deposito.num_doc
|
||||
|
||||
LET numero_msg = 13
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND KEY ("L") "eLiminar"
|
||||
"Elimina registro que esta en la pantalla"
|
||||
|
||||
DELETE FROM tetb00001
|
||||
WHERE @num_doc = deposito.num_doc
|
||||
|
||||
LET numero_msg = 39
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Retornar"
|
||||
"Retorna al menu anterior"
|
||||
CLEAR FORM
|
||||
# CALL ayuda()
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION busca_cuenta()
|
||||
# Esta funcion busca el nombre del cuenta y lo despliega en pantalla
|
||||
# Esta funcion es valida solamente para la consulta-modificacion.
|
||||
|
||||
SELECT i.descripcion INTO descrip1 FROM cgtb00001 i
|
||||
WHERE i.cuenta_no = deposito.cuenta_no and
|
||||
i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
ELSE
|
||||
IF status_reg = "E" THEN
|
||||
LET numero_msg = 67
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION busca_procedencia()
|
||||
# Esta funcion busca el nombre de la Procedencia
|
||||
|
||||
OPEN WINDOW busqueda1 AT 10,10 WITH FORM "tefmwd002"
|
||||
ATTRIBUTE (BORDER,FORM LINE FIRST + 1, comment line last)
|
||||
|
||||
DECLARE buscador CURSOR FOR
|
||||
SELECT i.procedencia,i.descripcion FROM tetb00002 i
|
||||
WHERE i.status_t IS NULL ORDER BY 1
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
CLOSE WINDOW busqueda1
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
LET idx = 1
|
||||
FOREACH buscador INTO arr_procedencia[idx].*
|
||||
LET idx = idx + 1
|
||||
END FOREACH
|
||||
CALL SET_COUNT(idx - 1)
|
||||
|
||||
DISPLAY ARRAY arr_procedencia TO s_procedencia.*
|
||||
LET curr = ARR_CURR()
|
||||
|
||||
LET proced = arr_procedencia[curr].procedencia
|
||||
LET descrip2 = arr_procedencia[curr].descripcion
|
||||
CLOSE WINDOW busqueda1
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,348 @@
|
||||
{
|
||||
------------------------------------------------------------------
|
||||
PROGRAMA : TEPRMT010
|
||||
OBJETIVO : Capturar, Modificar, Eliminar registros de la
|
||||
Tabla de Comisiones Por Cobros
|
||||
PROGRAMADOR : JUAN F. SOTO
|
||||
FECHA REALIZACION : AGOSTO 6, 1998.
|
||||
------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
DEFINE comisiones10 RECORD LIKE cctb00008.*
|
||||
|
||||
FUNCTION teprmt010()
|
||||
CLEAR SCREEN
|
||||
OPTIONS
|
||||
FORM LINE 9,
|
||||
ERROR LINE 23,
|
||||
MESSAGE LINE 24,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmmt010 FROM "tefmmt010"
|
||||
DISPLAY FORM tefmmt010
|
||||
CALL pantalla()
|
||||
DISPLAY "teprmt010" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Mantenimiento de Comisiones por Vendedor" at 6,20 ATTRIBUTE(BLACK)
|
||||
|
||||
MENU "OPCIONES"
|
||||
COMMAND "Adicionar"
|
||||
"<Esc> Adiciona Registro <Supr> Cancela Operacion"
|
||||
HELP 5
|
||||
LET INT_FLAG = FALSE
|
||||
CLEAR FORM
|
||||
LET INT_FLAG = FALSE
|
||||
CALL tepcad010()
|
||||
COMMAND "Consultar-modificar"
|
||||
"<Esc> Realiza Busqueda <Supr> Cancela Operacion"
|
||||
HELP 6
|
||||
CALL tepcmf010()
|
||||
COMMAND "Salir" "Retorna Menu Anterior"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcad010()
|
||||
DEFINE fech_ant CHAR(8)
|
||||
MESSAGE ""
|
||||
## Captura los datos que va a contener el registro
|
||||
|
||||
INPUT BY NAME comisiones10.*
|
||||
|
||||
AFTER FIELD sec_vend
|
||||
IF comisiones10.sec_vend = 0 or
|
||||
comisiones10.sec_vend is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
ELSE
|
||||
SELECT i.nom1_emp, i.apell1_emp INTO descrip1, descrip2
|
||||
FROM adtb00003 i
|
||||
WHERE i.num_emp = comisiones10.sec_vend AND i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
END IF
|
||||
LET descrip6 = descrip1 clipped," ",descrip2 clipped
|
||||
DISPLAY descrip6 TO descrip6
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
END IF
|
||||
|
||||
## Verifica que el codigo no exista en el catalogo de comisiones. Si existe,
|
||||
## entonces despliega los datos del registro existente.
|
||||
AFTER FIELD cod_sec
|
||||
SELECT i.descrip_esp INTO descrip1
|
||||
FROM intb00001 i
|
||||
WHERE i.cod_n = comisiones10.cod_n AND
|
||||
i.cod_grupo = comisiones10.cod_grupo AND
|
||||
i.cod_tipo = comisiones10.cod_tipo AND
|
||||
i.cod_sec = comisiones10.cod_sec and
|
||||
i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 26
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_n
|
||||
END IF
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
SELECT UNIQUE * INTO comisiones10.* FROM cctb00008
|
||||
WHERE
|
||||
sec_vend = comisiones10.sec_vend AND
|
||||
cod_n = comisiones10.cod_n AND
|
||||
cod_grupo = comisiones10.cod_grupo AND
|
||||
cod_tipo = comisiones10.cod_tipo AND
|
||||
cod_sec = comisiones10.cod_sec
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status != NOTFOUND THEN
|
||||
IF comisiones10.status_t = "E" THEN
|
||||
LET numero_msg = 36
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
END IF
|
||||
DISPLAY BY NAME
|
||||
comisiones10.us_crea,
|
||||
comisiones10.fech_crea,
|
||||
comisiones10.us_mod,
|
||||
comisiones10.fech_mod
|
||||
LET numero_msg = 12
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
ELSE
|
||||
INITIALIZE
|
||||
comisiones10.us_crea,
|
||||
comisiones10.fech_crea,
|
||||
comisiones10.us_mod,
|
||||
comisiones10.fech_mod TO NULL
|
||||
|
||||
DISPLAY BY NAME
|
||||
comisiones10.us_crea,
|
||||
comisiones10.fech_crea,
|
||||
comisiones10.us_mod,
|
||||
comisiones10.fech_mod
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
AFTER INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
INSERT INTO cctb00008 VALUES (comisiones10.*)
|
||||
UPDATE cctb00008 set us_crea = user,
|
||||
fech_crea = current
|
||||
WHERE sec_vend = comisiones10.sec_vend AND
|
||||
cod_n = comisiones10.cod_n AND
|
||||
cod_grupo = comisiones10.cod_grupo AND
|
||||
cod_tipo = comisiones10.cod_tipo AND
|
||||
cod_sec = comisiones10.cod_sec
|
||||
|
||||
LET numero_msg = 1
|
||||
CALL msg(numero_msg)
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcmf010()
|
||||
## Aqui se prepara para la captura del criterio de seleccion
|
||||
MESSAGE ""
|
||||
CLEAR FORM
|
||||
CONSTRUCT BY NAME criterio ON cctb00008.*
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET SELEC = " SELECT UNIQUE * FROM cctb00008 ",
|
||||
" WHERE status_t is null AND ",criterio clipped,
|
||||
" ORDER BY 1,2,3,4,5,6"
|
||||
PREPARE busca FROM selec
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DECLARE datos SCROLL CURSOR FOR busca
|
||||
OPEN datos
|
||||
|
||||
FETCH FIRST datos INTO comisiones10.*
|
||||
IF status >= 0 THEN
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
RETURN
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones10.*
|
||||
LET comisiones.sec_vend = comisiones10.sec_vend
|
||||
CALL busca_vendedor()
|
||||
LET comisiones.cod_n = comisiones10.cod_n
|
||||
LET comisiones.cod_grupo = comisiones10.cod_grupo
|
||||
LET comisiones.cod_tipo = comisiones10.cod_tipo
|
||||
LET comisiones.cod_sec = comisiones10.cod_sec
|
||||
CALL busca_nombre_articulo1()
|
||||
|
||||
MENU "OPCIONES "
|
||||
COMMAND "Siguiente"
|
||||
"Presenta en pantalla el proximo registro encontrado"
|
||||
FETCH NEXT datos INTO comisiones10.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones10.*
|
||||
LET comisiones.sec_vend = comisiones10.sec_vend
|
||||
CALL busca_vendedor()
|
||||
LET comisiones.cod_n = comisiones10.cod_n
|
||||
LET comisiones.cod_grupo = comisiones10.cod_grupo
|
||||
LET comisiones.cod_tipo = comisiones10.cod_tipo
|
||||
LET comisiones.cod_sec = comisiones10.cod_sec
|
||||
CALL busca_nombre_articulo1()
|
||||
|
||||
COMMAND "Anterior"
|
||||
"Presenta en pantalla el registro anterior encontrado"
|
||||
FETCH PREVIOUS datos INTO comisiones10.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones10.*
|
||||
LET comisiones.sec_vend = comisiones10.sec_vend
|
||||
CALL busca_vendedor()
|
||||
LET comisiones.cod_n = comisiones10.cod_n
|
||||
LET comisiones.cod_grupo = comisiones10.cod_grupo
|
||||
LET comisiones.cod_tipo = comisiones10.cod_tipo
|
||||
LET comisiones.cod_sec = comisiones10.cod_sec
|
||||
CALL busca_nombre_articulo1()
|
||||
|
||||
COMMAND "Primero"
|
||||
"Presenta en pantalla el primer registro encontrado"
|
||||
FETCH FIRST datos INTO comisiones10.*
|
||||
|
||||
DISPLAY BY NAME comisiones10.*
|
||||
LET comisiones.sec_vend = comisiones10.sec_vend
|
||||
CALL busca_vendedor()
|
||||
LET comisiones.cod_n = comisiones10.cod_n
|
||||
LET comisiones.cod_grupo = comisiones10.cod_grupo
|
||||
LET comisiones.cod_tipo = comisiones10.cod_tipo
|
||||
LET comisiones.cod_sec = comisiones10.cod_sec
|
||||
|
||||
CALL busca_nombre_articulo1()
|
||||
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Ultimo"
|
||||
"Presenta en pantalla el ultimo registro encontrado"
|
||||
FETCH LAST datos INTO comisiones10.*
|
||||
|
||||
DISPLAY BY NAME comisiones10.*
|
||||
LET comisiones.sec_vend = comisiones10.sec_vend
|
||||
CALL busca_vendedor()
|
||||
LET comisiones.cod_n = comisiones10.cod_n
|
||||
LET comisiones.cod_grupo = comisiones10.cod_grupo
|
||||
LET comisiones.cod_tipo = comisiones10.cod_tipo
|
||||
LET comisiones.cod_sec = comisiones10.cod_sec
|
||||
CALL busca_nombre_articulo1()
|
||||
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Escoger"
|
||||
"<Esc> Actualiza Registro <Supr> Cancela Operacion"
|
||||
|
||||
INPUT BY NAME comisiones10.porc_ventas,comisiones10.porc_cobros
|
||||
|
||||
WITHOUT DEFAULTS
|
||||
|
||||
AFTER INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
UPDATE cctb00008 SET porc_ventas = comisiones10.porc_ventas,
|
||||
porc_cobros = comisiones10.porc_cobros,
|
||||
us_mod = USER,
|
||||
fech_mod = CURRENT
|
||||
WHERE
|
||||
sec_vend = comisiones10.sec_vend AND
|
||||
cod_n = comisiones10.cod_n AND
|
||||
cod_grupo = comisiones10.cod_grupo AND
|
||||
cod_tipo = comisiones10.cod_tipo AND
|
||||
cod_sec = comisiones10.cod_sec
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
LET numero_msg = 13
|
||||
CALL msg(numero_msg)
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
|
||||
COMMAND KEY ("L") "eLiminar"
|
||||
"Elimina registro que esta en la pantalla"
|
||||
UPDATE cctb00008 SET status_t = "E",
|
||||
us_mod = user,
|
||||
fech_mod = current
|
||||
WHERE
|
||||
sec_vend = comisiones10.sec_vend AND
|
||||
cod_n = comisiones10.cod_n AND
|
||||
cod_grupo = comisiones10.cod_grupo AND
|
||||
cod_tipo = comisiones10.cod_tipo AND
|
||||
cod_sec = comisiones10.cod_sec
|
||||
|
||||
LET numero_msg = 39
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Retornar"
|
||||
"Retorna al menu anterior"
|
||||
CLEAR FORM
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
|
||||
@@ -0,0 +1,385 @@
|
||||
{
|
||||
------------------------------------------------------------------
|
||||
PROGRAMA : TEPRMT011
|
||||
OBJETIVO : Capturar, Modificar, Eliminar registros de la
|
||||
Tabla Asignacion Vendedores
|
||||
PROGRAMADOR : JUAN F. SOTO
|
||||
FECHA REALIZACION : OCTUBRE 6, 1998.
|
||||
------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
DEFINE asigna9 RECORD LIKE tetb00009.*,
|
||||
nombre_v,nombre_a CHAR(40)
|
||||
|
||||
FUNCTION teprmt011()
|
||||
CLEAR SCREEN
|
||||
OPTIONS
|
||||
FORM LINE 9,
|
||||
ERROR LINE 23,
|
||||
MESSAGE LINE 24,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmmt011 FROM "tefmmt011"
|
||||
DISPLAY FORM tefmmt011
|
||||
CALL pantalla()
|
||||
DISPLAY "teprmt011" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Mantenimiento de Asignacion Vendedores" at 6,20 ATTRIBUTE(BLACK)
|
||||
|
||||
MENU "OPCIONES"
|
||||
COMMAND "Adicionar"
|
||||
"<Esc> Adiciona Registro <Supr> Cancela Operacion"
|
||||
HELP 5
|
||||
LET INT_FLAG = FALSE
|
||||
CLEAR FORM
|
||||
LET INT_FLAG = FALSE
|
||||
CALL tepcad011()
|
||||
COMMAND "Consultar-modificar"
|
||||
"<Esc> Realiza Busqueda <Supr> Cancela Operacion"
|
||||
HELP 6
|
||||
CALL tepcmf011()
|
||||
COMMAND "Salir" "Retorna Menu Anterior"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcad011()
|
||||
DEFINE fech_ant CHAR(8)
|
||||
MESSAGE ""
|
||||
## Captura los datos que va a contener el registro
|
||||
|
||||
INPUT BY NAME asigna9.*
|
||||
|
||||
AFTER FIELD sec_vend
|
||||
IF asigna9.sec_vend = 0 or
|
||||
asigna9.sec_vend is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
ELSE
|
||||
SELECT i.nom1_emp, i.apell1_emp INTO descrip1, descrip2
|
||||
FROM adtb00003 i
|
||||
WHERE i.num_emp = asigna9.sec_vend AND i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
END IF
|
||||
LET nombre_v = descrip1 clipped," ",descrip2 clipped
|
||||
DISPLAY BY NAME nombre_v
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
END IF
|
||||
AFTER FIELD sec_vend_a
|
||||
IF asigna9.sec_vend_a = 0 or
|
||||
asigna9.sec_vend_a is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend_a
|
||||
ELSE
|
||||
SELECT i.nom1_emp, i.apell1_emp INTO descrip1, descrip2
|
||||
FROM adtb00003 i
|
||||
WHERE i.num_emp = asigna9.sec_vend_a AND
|
||||
i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend_a
|
||||
END IF
|
||||
LET nombre_a = descrip1 clipped," ",descrip2 clipped
|
||||
DISPLAY BY NAME nombre_a
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
END IF
|
||||
|
||||
# Verifica que el vendedor no este asignado
|
||||
SELECT *FROM tetb00009 a
|
||||
WHERE a.sec_vend = asigna9.sec_vend AND
|
||||
a.sec_vend_a = asigna9.sec_vend_a
|
||||
|
||||
IF STATUS != NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend_a
|
||||
END IF
|
||||
|
||||
AFTER INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
INSERT INTO tetb00009 VALUES (asigna9.*)
|
||||
UPDATE tetb00009 set us_crea = user,
|
||||
fech_crea = current
|
||||
WHERE sec_vend = asigna9.sec_vend AND
|
||||
sec_vend_a = asigna9.sec_vend_a
|
||||
|
||||
LET numero_msg = 1
|
||||
CALL msg(numero_msg)
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcmf011()
|
||||
## Aqui se prepara para la captura del criterio de seleccion
|
||||
MESSAGE ""
|
||||
CLEAR FORM
|
||||
CONSTRUCT BY NAME criterio ON tetb00009.*
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET SELEC = " SELECT UNIQUE * FROM tetb00009 ",
|
||||
" WHERE ",criterio clipped,
|
||||
" ORDER BY sec_vend,sec_vend_a"
|
||||
|
||||
PREPARE busca FROM selec
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DECLARE datos SCROLL CURSOR FOR busca
|
||||
OPEN datos
|
||||
|
||||
FETCH FIRST datos INTO asigna9.*
|
||||
IF status >= 0 THEN
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
RETURN
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME asigna9.*
|
||||
LET comisiones.sec_vend = asigna9.sec_vend
|
||||
CALL busca_vendedor3()
|
||||
LET nombre_v = descrip6
|
||||
LET comisiones.sec_vend = asigna9.sec_vend_a
|
||||
CALL busca_vendedor3()
|
||||
LET nombre_a = descrip6
|
||||
DISPLAY BY NAME nombre_v,nombre_a ATTRIBUTE(YELLOW)
|
||||
|
||||
MENU "OPCIONES "
|
||||
COMMAND "Siguiente"
|
||||
"Presenta en pantalla el proximo registro encontrado"
|
||||
FETCH NEXT datos INTO asigna9.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME asigna9.*
|
||||
LET comisiones.sec_vend = asigna9.sec_vend
|
||||
CALL busca_vendedor3()
|
||||
|
||||
LET nombre_v = descrip6
|
||||
LET comisiones.sec_vend = asigna9.sec_vend_a
|
||||
CALL busca_vendedor3()
|
||||
LET nombre_a = descrip6
|
||||
DISPLAY BY NAME nombre_v ,nombre_a ATTRIBUTE(YELLOW)
|
||||
|
||||
COMMAND "Anterior"
|
||||
"Presenta en pantalla el registro anterior encontrado"
|
||||
FETCH PREVIOUS datos INTO asigna9.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME asigna9.*
|
||||
LET comisiones.sec_vend = asigna9.sec_vend
|
||||
CALL busca_vendedor3()
|
||||
|
||||
LET nombre_v = descrip6
|
||||
LET comisiones.sec_vend = asigna9.sec_vend_a
|
||||
CALL busca_vendedor3()
|
||||
LET nombre_a = descrip6
|
||||
DISPLAY BY NAME nombre_v,nombre_a ATTRIBUTE(YELLOW)
|
||||
COMMAND "Primero"
|
||||
"Presenta en pantalla el primer registro encontrado"
|
||||
FETCH FIRST datos INTO asigna9.*
|
||||
|
||||
DISPLAY BY NAME asigna9.*
|
||||
LET comisiones.sec_vend = asigna9.sec_vend
|
||||
CALL busca_vendedor3()
|
||||
LET nombre_v = descrip6
|
||||
|
||||
LET comisiones.sec_vend = asigna9.sec_vend_a
|
||||
CALL busca_vendedor3()
|
||||
LET nombre_a = descrip6
|
||||
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
DISPLAY BY NAME nombre_v,nombre_a ATTRIBUTE(YELLOW)
|
||||
|
||||
COMMAND "Ultimo"
|
||||
"Presenta en pantalla el ultimo registro encontrado"
|
||||
FETCH LAST datos INTO asigna9.*
|
||||
|
||||
DISPLAY BY NAME asigna9.*
|
||||
LET comisiones.sec_vend = asigna9.sec_vend
|
||||
CALL busca_vendedor3()
|
||||
|
||||
LET nombre_v = descrip6
|
||||
|
||||
LET comisiones.sec_vend = asigna9.sec_vend_a
|
||||
CALL busca_vendedor3()
|
||||
LET nombre_a = descrip6
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
DISPLAY BY NAME nombre_v,nombre_a ATTRIBUTE(YELLOW)
|
||||
|
||||
COMMAND "Escoger"
|
||||
"<Esc> Actualiza Registro <Supr> Cancela Operacion"
|
||||
IF asigna9.status_t = "E" THEN
|
||||
LET numero_msg =36
|
||||
CALL msg(numero_msg)
|
||||
RETURN
|
||||
END IF
|
||||
INPUT BY NAME asigna9.sec_vend_a
|
||||
WITHOUT DEFAULTS
|
||||
AFTER FIELD sec_vend_a
|
||||
IF asigna9.sec_vend_a = 0 or
|
||||
asigna9.sec_vend_a is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend_a
|
||||
ELSE
|
||||
SELECT i.nom1_emp, i.apell1_emp INTO descrip1, descrip2
|
||||
FROM adtb00003 i
|
||||
WHERE i.num_emp = asigna9.sec_vend_a AND
|
||||
i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend_a
|
||||
END IF
|
||||
LET nombre_a = descrip1 clipped," ",descrip2 clipped
|
||||
DISPLAY BY NAME nombre_a
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
END IF
|
||||
|
||||
# Verifica que el vendedor no este asignado
|
||||
SELECT *FROM tetb00009 a
|
||||
WHERE a.sec_vend = asigna9.sec_vend AND
|
||||
a.sec_vend_a = asigna9.sec_vend_a
|
||||
|
||||
IF STATUS != NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend_a
|
||||
END IF
|
||||
AFTER INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
UPDATE tetb00009 SET sec_vend_a = asigna9.sec_vend_a,
|
||||
us_mod = USER,
|
||||
fech_mod = CURRENT
|
||||
WHERE
|
||||
sec_vend = asigna9.sec_vend AND
|
||||
sec_vend_a = asigna9.sec_vend_a
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
LET numero_msg = 13
|
||||
CALL msg(numero_msg)
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
|
||||
COMMAND KEY ("L") "eLiminar"
|
||||
"Elimina registro que esta en la pantalla"
|
||||
UPDATE tetb00009 SET status_t = "E",
|
||||
us_mod = user,
|
||||
fech_mod = current
|
||||
WHERE
|
||||
sec_vend = asigna9.sec_vend AND
|
||||
sec_vend_a = asigna9.sec_vend_a
|
||||
|
||||
LET numero_msg = 39
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Retornar"
|
||||
"Retorna al menu anterior"
|
||||
CLEAR FORM
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION busca_vendedor3()
|
||||
# Esta funcion busca el nombre del vendedor y lo despliega en pantalla
|
||||
# Esta funcion es valida solamente para la consulta-modificacion.
|
||||
|
||||
LET descrip6 = NULL
|
||||
LET descrip2 = NULL
|
||||
SELECT i.nom1_emp, i.apell1_emp, i.status_t
|
||||
INTO descrip1, descrip2, status_reg
|
||||
FROM adtb00003 i
|
||||
WHERE i.num_emp = comisiones.sec_vend and i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET descrip6 = NULL
|
||||
LET descrip2 = NULL
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
ELSE
|
||||
IF status_reg = "E" THEN
|
||||
LET descrip6 = NULL
|
||||
LET descrip2 = NULL
|
||||
LET numero_msg = 67
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
END IF
|
||||
LET descrip6 = descrip1 clipped," ",descrip2 clipped
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,784 @@
|
||||
{
|
||||
------------------------------------------------------------------
|
||||
PROGRAMA : TEPRMT021
|
||||
OBJETIVO : Capturar, Modificar, Eliminar registros de la
|
||||
Tabla de Comisiones.
|
||||
PROGRAMADOR : Lic. Abner Montalvo Zapata
|
||||
FECHA REALIZACION : Diciembre 2, 1992.
|
||||
------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
FUNCTION teprmt021()
|
||||
CLEAR SCREEN
|
||||
OPTIONS
|
||||
FORM LINE 9,
|
||||
ERROR LINE 23,
|
||||
MESSAGE LINE 24,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmmt021 FROM "tefmmt003"
|
||||
DISPLAY FORM tefmmt021
|
||||
CALL pantalla()
|
||||
# CALL ayuda()
|
||||
DISPLAY "teprmt021" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Mantenimiento de Comisiones por Vendedor" at 6,20 ATTRIBUTE(BLACK)
|
||||
|
||||
MENU "OPCIONES"
|
||||
COMMAND "Adicionar"
|
||||
"<Esc> Adiciona Registro <Supr> Cancela Operacion"
|
||||
HELP 5
|
||||
LET INT_FLAG = FALSE
|
||||
CLEAR FORM
|
||||
LET INT_FLAG = FALSE
|
||||
CALL tepcad021()
|
||||
COMMAND "Consultar-modificar"
|
||||
"<Esc> Realiza Busqueda <Supr> Cancela Operacion"
|
||||
HELP 6
|
||||
CALL tepcmf021()
|
||||
COMMAND "Salir" "Retorna Menu Anterior"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcad021()
|
||||
DEFINE fech_ant CHAR(8)
|
||||
# WHENEVER ERROR CONTINUE
|
||||
MESSAGE ""
|
||||
## Captura los datos que va a contener el registro
|
||||
|
||||
INPUT BY NAME comisiones.*
|
||||
{ON KEY (CONTROL-W)
|
||||
CASE
|
||||
WHEN INFIELD (cod_vend)
|
||||
CALL consulta_empleados2()
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
|
||||
IF NOT int_flag THEN
|
||||
LET comisiones.cod_vend = transportista.cod_transp
|
||||
LET comisiones.sec_vend = transportista.sec_transp
|
||||
DISPLAY transportista.cod_transp TO cod_vend
|
||||
DISPLAY transportista.sec_transp TO sec_vend
|
||||
DISPLAY descrip6 TO descrip6
|
||||
NEXT FIELD cod_n
|
||||
END IF
|
||||
LET int_flag = FALSE
|
||||
|
||||
WHEN INFIELD (sec_vend)
|
||||
CALL consulta_empleados2()
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
|
||||
IF NOT int_flag THEN
|
||||
LET comisiones.cod_vend = transportista.cod_transp
|
||||
LET comisiones.sec_vend = transportista.sec_transp
|
||||
DISPLAY transportista.cod_transp TO cod_vend
|
||||
DISPLAY transportista.sec_transp TO sec_vend
|
||||
DISPLAY descrip6 TO descrip6
|
||||
NEXT FIELD cod_n
|
||||
END IF
|
||||
LET int_flag = FALSE
|
||||
|
||||
WHEN INFIELD (cod_n)
|
||||
CALL busca_pt()
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_n
|
||||
END IF
|
||||
|
||||
IF NOT int_flag THEN
|
||||
LET comisiones.cod_n = pterminado.cod_n
|
||||
LET comisiones.cod_grupo = pterminado.cod_grupo
|
||||
LET comisiones.cod_tipo = pterminado.cod_tipo
|
||||
LET comisiones.cod_sec = pterminado.cod_sec
|
||||
DISPLAY pterminado.cod_n TO cod_n
|
||||
DISPLAY pterminado.cod_grupo TO cod_grupo
|
||||
DISPLAY pterminado.cod_tipo TO cod_tipo
|
||||
DISPLAY pterminado.cod_sec TO cod_sec
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
LET int_flag = FALSE
|
||||
|
||||
WHEN INFIELD (cod_grupo)
|
||||
CALL busca_pt()
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_grupo
|
||||
END IF
|
||||
|
||||
IF NOT int_flag THEN
|
||||
LET comisiones.cod_n = pterminado.cod_n
|
||||
LET comisiones.cod_grupo = pterminado.cod_grupo
|
||||
LET comisiones.cod_tipo = pterminado.cod_tipo
|
||||
LET comisiones.cod_sec = pterminado.cod_sec
|
||||
DISPLAY pterminado.cod_n TO cod_n
|
||||
DISPLAY pterminado.cod_grupo TO cod_grupo
|
||||
DISPLAY pterminado.cod_tipo TO cod_tipo
|
||||
DISPLAY pterminado.cod_sec TO cod_sec
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
LET int_flag = FALSE
|
||||
|
||||
WHEN INFIELD (cod_tipo)
|
||||
CALL busca_pt()
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_tipo
|
||||
END IF
|
||||
|
||||
IF NOT int_flag THEN
|
||||
LET comisiones.cod_n = pterminado.cod_n
|
||||
LET comisiones.cod_grupo = pterminado.cod_grupo
|
||||
LET comisiones.cod_tipo = pterminado.cod_tipo
|
||||
LET comisiones.cod_sec = pterminado.cod_sec
|
||||
DISPLAY pterminado.cod_n TO cod_n
|
||||
DISPLAY pterminado.cod_grupo TO cod_grupo
|
||||
DISPLAY pterminado.cod_tipo TO cod_tipo
|
||||
DISPLAY pterminado.cod_sec TO cod_sec
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
LET int_flag = FALSE
|
||||
|
||||
WHEN INFIELD (cod_sec)
|
||||
CALL busca_pt()
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_sec
|
||||
END IF
|
||||
|
||||
IF NOT int_flag THEN
|
||||
LET comisiones.cod_n = pterminado.cod_n
|
||||
LET comisiones.cod_grupo = pterminado.cod_grupo
|
||||
LET comisiones.cod_tipo = pterminado.cod_tipo
|
||||
LET comisiones.cod_sec = pterminado.cod_sec
|
||||
DISPLAY pterminado.cod_n TO cod_n
|
||||
DISPLAY pterminado.cod_grupo TO cod_grupo
|
||||
DISPLAY pterminado.cod_tipo TO cod_tipo
|
||||
DISPLAY pterminado.cod_sec TO cod_sec
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
LET int_flag = FALSE
|
||||
END CASE
|
||||
}
|
||||
AFTER FIELD cod_vend
|
||||
IF comisiones.cod_vend = 0 or
|
||||
comisiones.cod_vend is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
|
||||
AFTER FIELD sec_vend
|
||||
IF comisiones.sec_vend = 0 or
|
||||
comisiones.sec_vend is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
ELSE
|
||||
SELECT i.nom1_emp, i.apell1_emp INTO descrip1, descrip2
|
||||
FROM adtb00003 i
|
||||
WHERE i.num_emp = comisiones.cod_vend AND i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
LET descrip6 = descrip1 clipped," ",descrip2 clipped
|
||||
DISPLAY descrip6 TO descrip6
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
END IF
|
||||
|
||||
## Verifica que el codigo no exista en el catalogo de comisiones. Si existe,
|
||||
## entonces despliega los datos del registro existente.
|
||||
AFTER FIELD cod_sec
|
||||
SELECT i.descrip_esp INTO descrip1
|
||||
FROM intb00001 i
|
||||
WHERE i.cod_n = comisiones.cod_n AND
|
||||
i.cod_grupo = comisiones.cod_grupo AND
|
||||
i.cod_tipo = comisiones.cod_tipo AND
|
||||
i.cod_sec = comisiones.cod_sec and
|
||||
i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 26
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_n
|
||||
END IF
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
SELECT * INTO comisiones.* FROM vetb00011 WHERE
|
||||
cod_vend = comisiones.cod_vend AND
|
||||
sec_vend = comisiones.sec_vend AND
|
||||
cod_n = comisiones.cod_n AND
|
||||
cod_grupo = comisiones.cod_grupo AND
|
||||
cod_tipo = comisiones.cod_tipo AND
|
||||
cod_sec = comisiones.cod_sec
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status != NOTFOUND THEN
|
||||
IF comisiones.status_t = "E" THEN
|
||||
LET numero_msg = 36
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones.porc_ventas,
|
||||
comisiones.porc_cobros,
|
||||
comisiones.us_crea,
|
||||
comisiones.fech_crea,
|
||||
comisiones.us_mod,
|
||||
comisiones.fech_mod
|
||||
|
||||
LET numero_msg = 12
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
ELSE
|
||||
INITIALIZE comisiones.porc_ventas,
|
||||
comisiones.porc_cobros,
|
||||
comisiones.us_crea,
|
||||
comisiones.fech_crea,
|
||||
comisiones.us_mod,
|
||||
comisiones.fech_mod TO NULL
|
||||
|
||||
DISPLAY BY NAME comisiones.porc_ventas,
|
||||
comisiones.porc_cobros,
|
||||
comisiones.us_crea,
|
||||
comisiones.fech_crea,
|
||||
comisiones.us_mod,
|
||||
comisiones.fech_mod
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
AFTER FIELD porc_ventas
|
||||
IF comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
AFTER FIELD porc_cobros
|
||||
IF comisiones.porc_cobros IS NULL THEN
|
||||
LET comisiones.porc_cobros = 0
|
||||
END IF
|
||||
|
||||
AFTER INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
IF comisiones.cod_vend = 0 or
|
||||
comisiones.cod_vend is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
|
||||
IF comisiones.sec_vend = 0 or
|
||||
comisiones.sec_vend is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
ELSE
|
||||
SELECT i.nom1_emp, i.apell1_emp INTO descrip1, descrip2
|
||||
FROM adtb00003 i
|
||||
WHERE i.num_emp = comisiones.cod_vend AND i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
LET descrip6 = descrip1 clipped," ",descrip2 clipped
|
||||
DISPLAY descrip6 TO descrip6
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
END IF
|
||||
|
||||
IF comisiones.cod_n IS NULL OR
|
||||
comisiones.cod_n = 0 THEN
|
||||
LET numero_msg = 60
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_n
|
||||
END IF
|
||||
|
||||
## Verifica que el codigo no exista en el catalogo de comisiones. Si existe,
|
||||
## entonces despliega los datos del registro existente.
|
||||
|
||||
IF ( comisiones.cod_n = 0 AND comisiones.cod_grupo = 0 AND
|
||||
comisiones.cod_tipo = 0 AND comisiones.cod_sec = 0 ) THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_n
|
||||
ELSE
|
||||
SELECT i.descrip_esp INTO descrip1
|
||||
FROM intb00001 i
|
||||
WHERE i.cod_n = comisiones.cod_n AND
|
||||
i.cod_grupo = comisiones.cod_grupo AND
|
||||
i.cod_tipo = comisiones.cod_tipo AND
|
||||
i.cod_sec = comisiones.cod_sec and
|
||||
i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 26
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_n
|
||||
END IF
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
END IF
|
||||
|
||||
SELECT * INTO comisiones.* FROM vetb00011 WHERE
|
||||
cod_vend = comisiones.cod_vend AND
|
||||
sec_vend = comisiones.sec_vend AND
|
||||
cod_n = comisiones.cod_n AND
|
||||
cod_grupo = comisiones.cod_grupo AND
|
||||
cod_tipo = comisiones.cod_tipo AND
|
||||
cod_sec = comisiones.cod_sec
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status != NOTFOUND THEN
|
||||
IF comisiones.status_t = "E" THEN
|
||||
LET numero_msg = 36
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones.porc_ventas,
|
||||
comisiones.porc_cobros,
|
||||
comisiones.us_crea,
|
||||
comisiones.fech_crea,
|
||||
comisiones.us_mod,
|
||||
comisiones.fech_mod
|
||||
|
||||
LET numero_msg = 12
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
IF comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
IF comisiones.porc_cobros IS NULL THEN
|
||||
LET comisiones.porc_cobros = 0
|
||||
END IF
|
||||
|
||||
# Valida que el codigo del articulo no sea cero. Si no es cero, adiciona el
|
||||
# registro en la tabla, de lo contrario, presenta mensaje de error y acepta
|
||||
# el codigo de nuevo.
|
||||
|
||||
{ IF (comisiones.cod_n = 0 AND
|
||||
comisiones.cod_grupo = 0 AND
|
||||
comisiones.cod_tipo = 0 AND
|
||||
comisiones.cod_sec = 0 ) OR
|
||||
(comisiones.cod_vend = 0 AND
|
||||
comisiones.sec_vend = 0 ) OR
|
||||
comisiones.porc_ventas = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
ELSE
|
||||
} INSERT INTO vetb00011 VALUES (comisiones.cod_vend,
|
||||
comisiones.sec_vend,
|
||||
comisiones.cod_n,
|
||||
comisiones.cod_grupo,
|
||||
comisiones.cod_tipo,
|
||||
comisiones.cod_sec,
|
||||
comisiones.porc_ventas,
|
||||
comisiones.porc_cobros,
|
||||
null, USER, CURRENT, null, null)
|
||||
|
||||
# Verifica el Status que retorna luego de insertar el registro en la tabla.
|
||||
# Si el Status es diferente de cero quiere decir que hubo problemas durante
|
||||
# la creacion del registro, entonces despliega un mensaje de alerta para que
|
||||
# el usuario sepa que hubo problemas en la creacion del registro.
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET numero_msg = 1
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
{ END IF
|
||||
}
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcmf021()
|
||||
## Aqui se prepara para la captura del criterio de seleccion
|
||||
MESSAGE ""
|
||||
CLEAR FORM
|
||||
CONSTRUCT criterio ON vetb00011.* FROM vetb00011.*
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET SELEC = " SELECT UNIQUE * FROM vetb00011 WHERE ",
|
||||
" status_t is null AND ",
|
||||
criterio clipped,
|
||||
" ORDER BY 1,2,3,4,5,6"
|
||||
PREPARE busca FROM selec
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DECLARE datos SCROLL CURSOR WITH HOLD FOR busca
|
||||
OPEN datos
|
||||
|
||||
FETCH FIRST datos INTO comisiones.*
|
||||
IF status >= 0 THEN
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
RETURN
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones.*
|
||||
CALL busca_vendedor2()
|
||||
CALL busca_nombre_articulo2()
|
||||
|
||||
MENU "OPCIONES "
|
||||
COMMAND "Siguiente"
|
||||
"Presenta en pantalla el proximo registro encontrado"
|
||||
FETCH NEXT datos INTO comisiones.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones.*
|
||||
CALL busca_vendedor2()
|
||||
CALL busca_nombre_articulo2()
|
||||
|
||||
COMMAND "Anterior"
|
||||
"Presenta en pantalla el registro anterior encontrado"
|
||||
FETCH PREVIOUS datos INTO comisiones.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones.*
|
||||
CALL busca_vendedor2()
|
||||
CALL busca_nombre_articulo2()
|
||||
|
||||
COMMAND "Primero"
|
||||
"Presenta en pantalla el primer registro encontrado"
|
||||
FETCH FIRST datos INTO comisiones.*
|
||||
|
||||
DISPLAY BY NAME comisiones.*
|
||||
CALL busca_vendedor2()
|
||||
CALL busca_nombre_articulo2()
|
||||
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Ultimo"
|
||||
"Presenta en pantalla el ultimo registro encontrado"
|
||||
FETCH LAST datos INTO comisiones.*
|
||||
|
||||
DISPLAY BY NAME comisiones.*
|
||||
CALL busca_vendedor2()
|
||||
CALL busca_nombre_articulo2()
|
||||
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Escoger"
|
||||
"<Esc> Actualiza Registro <Supr> Cancela Operacion"
|
||||
|
||||
INPUT BY NAME comisiones.porc_ventas,
|
||||
comisiones.porc_cobros WITHOUT DEFAULTS
|
||||
|
||||
AFTER FIELD porc_ventas
|
||||
IF comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
AFTER FIELD porc_cobros
|
||||
IF (comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0) AND
|
||||
(comisiones.porc_cobros IS NULL OR
|
||||
comisiones.porc_cobros = 0) THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
AFTER INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
IF comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
IF (comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0) AND
|
||||
(comisiones.porc_cobros IS NULL OR
|
||||
comisiones.porc_cobros = 0) THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
UPDATE vetb00011 SET porc_ventas = comisiones.porc_ventas,
|
||||
porc_cobros = comisiones.porc_cobros,
|
||||
us_mod = USER,
|
||||
fech_mod = CURRENT
|
||||
WHERE
|
||||
sec_vend = comisiones.sec_vend AND
|
||||
cod_n = comisiones.cod_n AND
|
||||
cod_grupo = comisiones.cod_grupo AND
|
||||
cod_tipo = comisiones.cod_tipo AND
|
||||
cod_sec = comisiones.cod_sec
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
LET numero_msg = 13
|
||||
CALL msg(numero_msg)
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
|
||||
COMMAND KEY ("L") "eLiminar"
|
||||
"Elimina registro que esta en la pantalla"
|
||||
UPDATE vetb00011 SET status_t = "E"
|
||||
WHERE cod_vend = comisiones.cod_vend AND
|
||||
sec_vend = comisiones.sec_vend AND
|
||||
cod_n = comisiones.cod_n AND
|
||||
cod_grupo = comisiones.cod_grupo AND
|
||||
cod_tipo = comisiones.cod_tipo AND
|
||||
cod_sec = comisiones.cod_sec
|
||||
|
||||
LET numero_msg = 39
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Retornar"
|
||||
"Retorna al menu anterior"
|
||||
CLEAR FORM
|
||||
# CALL ayuda()
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION busca_vendedor2()
|
||||
# Esta funcion busca el nombre del vendedor y lo despliega en pantalla
|
||||
# Esta funcion es valida solamente para la consulta-modificacion.
|
||||
|
||||
SELECT i.nom1_emp, i.apell1_emp, i.status_t
|
||||
INTO descrip1, descrip2, status_reg
|
||||
FROM adtb00003 i
|
||||
WHERE i.num_emp = comisiones.sec_vend and i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
ELSE
|
||||
IF status_reg = "E" THEN
|
||||
LET numero_msg = 67
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
END IF
|
||||
LET descrip6 = descrip1 clipped," ",descrip2 clipped
|
||||
DISPLAY descrip6 TO descrip6
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION busca_nombre_articulo2()
|
||||
# Esta funcion busca el nombre del articulo y lo despliega en pantalla
|
||||
# Esta funcion es valida solamente para la consulta-modificacion.
|
||||
|
||||
SELECT i.descrip_esp, i.status_t INTO descrip1, status_reg
|
||||
FROM intb00001 i
|
||||
WHERE i.cod_n = comisiones.cod_n AND
|
||||
i.cod_grupo = comisiones.cod_grupo AND
|
||||
i.cod_tipo = comisiones.cod_tipo AND
|
||||
i.cod_sec = comisiones.cod_sec
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 26
|
||||
CALL msg(numero_msg)
|
||||
ELSE
|
||||
IF status_reg = "E" THEN
|
||||
LET numero_msg = 44
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
END IF
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION consulta_empleados2()
|
||||
OPEN WINDOW busqueda AT 7,12 WITH FORM "tefmwd001"
|
||||
ATTRIBUTE (BORDER,FORM LINE FIRST + 2,COMMENT LINE LAST,MESSAGE LINE LAST)
|
||||
|
||||
LET int_flag = false
|
||||
CONSTRUCT criterio ON a.nom1_emp FROM descrip6
|
||||
|
||||
LET selec2 = "SELECT a.num_emp, a.nom1_emp, a.apell1_emp ",
|
||||
"FROM adtb00003 a ",
|
||||
"WHERE a.status_t is null AND ",criterio clipped," ORDER BY 1,2 "
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
GO TO salir_consulta_e
|
||||
END IF
|
||||
|
||||
PREPARE busca_empleados FROM selec2
|
||||
IF status >= 0 THEN
|
||||
IF status = notfound THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
END IF
|
||||
END IF
|
||||
|
||||
DECLARE buscar_empleados CURSOR FOR busca_empleados
|
||||
LET idx = 1
|
||||
|
||||
FOREACH buscar_empleados INTO arr_empleados[idx].*
|
||||
IF status = NOTFOUND THEN
|
||||
EXIT FOREACH
|
||||
END IF
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
EXIT FOREACH
|
||||
END IF
|
||||
|
||||
LET empleados[idx].cod_emp = arr_empleados[idx].cod_emp
|
||||
LET empleados[idx].descrip6 =
|
||||
arr_empleados[idx].nom_emp clipped," ",arr_empleados[idx].apell_emp clipped
|
||||
LET idx = idx + 1
|
||||
END FOREACH
|
||||
|
||||
CALL set_count(idx-1)
|
||||
MESSAGE " <Esc> Selecciona Empleado donde esta el cursor"
|
||||
DISPLAY ARRAY empleados TO s_empleados.*
|
||||
LET curr1 = arr_curr()
|
||||
|
||||
LET transportista.cod_transp = empleados[curr1].cod_emp
|
||||
LET descrip6 = empleados[curr1].descrip6
|
||||
|
||||
LABEL salir_consulta_e:
|
||||
CLOSE WINDOW busqueda
|
||||
|
||||
END FUNCTION
|
||||
|
||||
@@ -0,0 +1,792 @@
|
||||
{
|
||||
------------------------------------------------------------------
|
||||
PROGRAMA : TEPRMT021
|
||||
OBJETIVO : Capturar, Modificar, Eliminar registros de la
|
||||
Tabla de Comisiones.
|
||||
PROGRAMADOR : Lic. Abner Montalvo Zapata
|
||||
FECHA REALIZACION : Diciembre 2, 1992.
|
||||
------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
FUNCTION teprmt021()
|
||||
CLEAR SCREEN
|
||||
OPTIONS
|
||||
FORM LINE 9,
|
||||
ERROR LINE 23,
|
||||
MESSAGE LINE 24,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmmt021 FROM "tefmmt003"
|
||||
DISPLAY FORM tefmmt021
|
||||
CALL pantalla()
|
||||
# CALL ayuda()
|
||||
DISPLAY "teprmt021" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Mantenimiento de Comisiones por Vendedor" at 6,20 ATTRIBUTE(BLACK)
|
||||
|
||||
MENU "OPCIONES"
|
||||
COMMAND "Adicionar"
|
||||
"<Esc> Adiciona Registro <Supr> Cancela Operacion"
|
||||
HELP 5
|
||||
LET INT_FLAG = FALSE
|
||||
CLEAR FORM
|
||||
LET INT_FLAG = FALSE
|
||||
CALL tepcad021()
|
||||
COMMAND "Consultar-modificar"
|
||||
"<Esc> Realiza Busqueda <Supr> Cancela Operacion"
|
||||
HELP 6
|
||||
CALL tepcmf021()
|
||||
COMMAND "Salir" "Retorna Menu Anterior"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcad021()
|
||||
DEFINE fech_ant CHAR(8)
|
||||
# WHENEVER ERROR CONTINUE
|
||||
MESSAGE ""
|
||||
## Captura los datos que va a contener el registro
|
||||
|
||||
INPUT BY NAME comisiones.*
|
||||
{ON KEY (CONTROL-W)
|
||||
CASE
|
||||
WHEN INFIELD (cod_vend)
|
||||
CALL consulta_empleados2()
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
|
||||
IF NOT int_flag THEN
|
||||
LET comisiones.cod_vend = transportista.cod_transp
|
||||
LET comisiones.sec_vend = transportista.sec_transp
|
||||
DISPLAY transportista.cod_transp TO cod_vend
|
||||
DISPLAY transportista.sec_transp TO sec_vend
|
||||
DISPLAY descrip6 TO descrip6
|
||||
NEXT FIELD cod_n
|
||||
END IF
|
||||
LET int_flag = FALSE
|
||||
|
||||
WHEN INFIELD (sec_vend)
|
||||
CALL consulta_empleados2()
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
|
||||
IF NOT int_flag THEN
|
||||
LET comisiones.cod_vend = transportista.cod_transp
|
||||
LET comisiones.sec_vend = transportista.sec_transp
|
||||
DISPLAY transportista.cod_transp TO cod_vend
|
||||
DISPLAY transportista.sec_transp TO sec_vend
|
||||
DISPLAY descrip6 TO descrip6
|
||||
NEXT FIELD cod_n
|
||||
END IF
|
||||
LET int_flag = FALSE
|
||||
|
||||
WHEN INFIELD (cod_n)
|
||||
CALL busca_pt()
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_n
|
||||
END IF
|
||||
|
||||
IF NOT int_flag THEN
|
||||
LET comisiones.cod_n = pterminado.cod_n
|
||||
LET comisiones.cod_grupo = pterminado.cod_grupo
|
||||
LET comisiones.cod_tipo = pterminado.cod_tipo
|
||||
LET comisiones.cod_sec = pterminado.cod_sec
|
||||
DISPLAY pterminado.cod_n TO cod_n
|
||||
DISPLAY pterminado.cod_grupo TO cod_grupo
|
||||
DISPLAY pterminado.cod_tipo TO cod_tipo
|
||||
DISPLAY pterminado.cod_sec TO cod_sec
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
LET int_flag = FALSE
|
||||
|
||||
WHEN INFIELD (cod_grupo)
|
||||
CALL busca_pt()
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_grupo
|
||||
END IF
|
||||
|
||||
IF NOT int_flag THEN
|
||||
LET comisiones.cod_n = pterminado.cod_n
|
||||
LET comisiones.cod_grupo = pterminado.cod_grupo
|
||||
LET comisiones.cod_tipo = pterminado.cod_tipo
|
||||
LET comisiones.cod_sec = pterminado.cod_sec
|
||||
DISPLAY pterminado.cod_n TO cod_n
|
||||
DISPLAY pterminado.cod_grupo TO cod_grupo
|
||||
DISPLAY pterminado.cod_tipo TO cod_tipo
|
||||
DISPLAY pterminado.cod_sec TO cod_sec
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
LET int_flag = FALSE
|
||||
|
||||
WHEN INFIELD (cod_tipo)
|
||||
CALL busca_pt()
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_tipo
|
||||
END IF
|
||||
|
||||
IF NOT int_flag THEN
|
||||
LET comisiones.cod_n = pterminado.cod_n
|
||||
LET comisiones.cod_grupo = pterminado.cod_grupo
|
||||
LET comisiones.cod_tipo = pterminado.cod_tipo
|
||||
LET comisiones.cod_sec = pterminado.cod_sec
|
||||
DISPLAY pterminado.cod_n TO cod_n
|
||||
DISPLAY pterminado.cod_grupo TO cod_grupo
|
||||
DISPLAY pterminado.cod_tipo TO cod_tipo
|
||||
DISPLAY pterminado.cod_sec TO cod_sec
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
LET int_flag = FALSE
|
||||
|
||||
WHEN INFIELD (cod_sec)
|
||||
CALL busca_pt()
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_sec
|
||||
END IF
|
||||
|
||||
IF NOT int_flag THEN
|
||||
LET comisiones.cod_n = pterminado.cod_n
|
||||
LET comisiones.cod_grupo = pterminado.cod_grupo
|
||||
LET comisiones.cod_tipo = pterminado.cod_tipo
|
||||
LET comisiones.cod_sec = pterminado.cod_sec
|
||||
DISPLAY pterminado.cod_n TO cod_n
|
||||
DISPLAY pterminado.cod_grupo TO cod_grupo
|
||||
DISPLAY pterminado.cod_tipo TO cod_tipo
|
||||
DISPLAY pterminado.cod_sec TO cod_sec
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
LET int_flag = FALSE
|
||||
END CASE
|
||||
}
|
||||
AFTER FIELD cod_vend
|
||||
IF comisiones.cod_vend = 0 or
|
||||
| The symbol 'comisiones.cod_vend' does not represent a defined variable.
|
||||
| See error number -4369.
|
||||
comisiones.cod_vend is null THEN
|
||||
| The symbol 'comisiones.cod_vend' does not represent a defined variable.
|
||||
| See error number -4369.
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
|
||||
AFTER FIELD sec_vend
|
||||
IF comisiones.sec_vend = 0 or
|
||||
comisiones.sec_vend is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
ELSE
|
||||
SELECT i.nom1_emp, i.apell1_emp INTO descrip1, descrip2
|
||||
FROM adtb00003 i
|
||||
WHERE i.num_emp = comisiones.cod_vend AND i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
LET descrip6 = descrip1 clipped," ",descrip2 clipped
|
||||
DISPLAY descrip6 TO descrip6
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
END IF
|
||||
|
||||
## Verifica que el codigo no exista en el catalogo de comisiones. Si existe,
|
||||
## entonces despliega los datos del registro existente.
|
||||
AFTER FIELD cod_sec
|
||||
SELECT i.descrip_esp INTO descrip1
|
||||
FROM intb00001 i
|
||||
WHERE i.cod_n = comisiones.cod_n AND
|
||||
i.cod_grupo = comisiones.cod_grupo AND
|
||||
i.cod_tipo = comisiones.cod_tipo AND
|
||||
i.cod_sec = comisiones.cod_sec and
|
||||
i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 26
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_n
|
||||
END IF
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
SELECT * INTO comisiones.* FROM vetb00011 WHERE
|
||||
cod_vend = comisiones.cod_vend AND
|
||||
sec_vend = comisiones.sec_vend AND
|
||||
cod_n = comisiones.cod_n AND
|
||||
cod_grupo = comisiones.cod_grupo AND
|
||||
cod_tipo = comisiones.cod_tipo AND
|
||||
cod_sec = comisiones.cod_sec
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status != NOTFOUND THEN
|
||||
IF comisiones.status_t = "E" THEN
|
||||
LET numero_msg = 36
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones.porc_ventas,
|
||||
comisiones.porc_cobros,
|
||||
comisiones.us_crea,
|
||||
comisiones.fech_crea,
|
||||
comisiones.us_mod,
|
||||
comisiones.fech_mod
|
||||
|
||||
LET numero_msg = 12
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
ELSE
|
||||
INITIALIZE comisiones.porc_ventas,
|
||||
comisiones.porc_cobros,
|
||||
comisiones.us_crea,
|
||||
comisiones.fech_crea,
|
||||
comisiones.us_mod,
|
||||
comisiones.fech_mod TO NULL
|
||||
|
||||
DISPLAY BY NAME comisiones.porc_ventas,
|
||||
comisiones.porc_cobros,
|
||||
comisiones.us_crea,
|
||||
comisiones.fech_crea,
|
||||
comisiones.us_mod,
|
||||
comisiones.fech_mod
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
AFTER FIELD porc_ventas
|
||||
IF comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
AFTER FIELD porc_cobros
|
||||
IF comisiones.porc_cobros IS NULL THEN
|
||||
LET comisiones.porc_cobros = 0
|
||||
END IF
|
||||
|
||||
AFTER INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
IF comisiones.cod_vend = 0 or
|
||||
| The symbol 'comisiones.cod_vend' does not represent a defined variable.
|
||||
| See error number -4369.
|
||||
comisiones.cod_vend is null THEN
|
||||
| The symbol 'comisiones.cod_vend' does not represent a defined variable.
|
||||
| See error number -4369.
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
|
||||
IF comisiones.sec_vend = 0 or
|
||||
comisiones.sec_vend is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD sec_vend
|
||||
ELSE
|
||||
SELECT i.nom1_emp, i.apell1_emp INTO descrip1, descrip2
|
||||
FROM adtb00003 i
|
||||
WHERE i.num_emp = comisiones.cod_vend AND i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
LET descrip6 = descrip1 clipped," ",descrip2 clipped
|
||||
DISPLAY descrip6 TO descrip6
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
END IF
|
||||
|
||||
IF comisiones.cod_n IS NULL OR
|
||||
comisiones.cod_n = 0 THEN
|
||||
LET numero_msg = 60
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_n
|
||||
END IF
|
||||
|
||||
## Verifica que el codigo no exista en el catalogo de comisiones. Si existe,
|
||||
## entonces despliega los datos del registro existente.
|
||||
|
||||
IF ( comisiones.cod_n = 0 AND comisiones.cod_grupo = 0 AND
|
||||
comisiones.cod_tipo = 0 AND comisiones.cod_sec = 0 ) THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_n
|
||||
ELSE
|
||||
SELECT i.descrip_esp INTO descrip1
|
||||
FROM intb00001 i
|
||||
WHERE i.cod_n = comisiones.cod_n AND
|
||||
i.cod_grupo = comisiones.cod_grupo AND
|
||||
i.cod_tipo = comisiones.cod_tipo AND
|
||||
i.cod_sec = comisiones.cod_sec and
|
||||
i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 26
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_n
|
||||
END IF
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
END IF
|
||||
|
||||
SELECT * INTO comisiones.* FROM vetb00011 WHERE
|
||||
cod_vend = comisiones.cod_vend AND
|
||||
sec_vend = comisiones.sec_vend AND
|
||||
cod_n = comisiones.cod_n AND
|
||||
cod_grupo = comisiones.cod_grupo AND
|
||||
cod_tipo = comisiones.cod_tipo AND
|
||||
cod_sec = comisiones.cod_sec
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status != NOTFOUND THEN
|
||||
IF comisiones.status_t = "E" THEN
|
||||
LET numero_msg = 36
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones.porc_ventas,
|
||||
comisiones.porc_cobros,
|
||||
comisiones.us_crea,
|
||||
comisiones.fech_crea,
|
||||
comisiones.us_mod,
|
||||
comisiones.fech_mod
|
||||
|
||||
LET numero_msg = 12
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
IF comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
IF comisiones.porc_cobros IS NULL THEN
|
||||
LET comisiones.porc_cobros = 0
|
||||
END IF
|
||||
|
||||
# Valida que el codigo del articulo no sea cero. Si no es cero, adiciona el
|
||||
# registro en la tabla, de lo contrario, presenta mensaje de error y acepta
|
||||
# el codigo de nuevo.
|
||||
|
||||
{ IF (comisiones.cod_n = 0 AND
|
||||
comisiones.cod_grupo = 0 AND
|
||||
comisiones.cod_tipo = 0 AND
|
||||
comisiones.cod_sec = 0 ) OR
|
||||
(comisiones.cod_vend = 0 AND
|
||||
comisiones.sec_vend = 0 ) OR
|
||||
comisiones.porc_ventas = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
ELSE
|
||||
} INSERT INTO vetb00011 VALUES (comisiones.cod_vend,
|
||||
comisiones.sec_vend,
|
||||
comisiones.cod_n,
|
||||
comisiones.cod_grupo,
|
||||
comisiones.cod_tipo,
|
||||
comisiones.cod_sec,
|
||||
comisiones.porc_ventas,
|
||||
comisiones.porc_cobros,
|
||||
null, USER, CURRENT, null, null)
|
||||
|
||||
# Verifica el Status que retorna luego de insertar el registro en la tabla.
|
||||
# Si el Status es diferente de cero quiere decir que hubo problemas durante
|
||||
# la creacion del registro, entonces despliega un mensaje de alerta para que
|
||||
# el usuario sepa que hubo problemas en la creacion del registro.
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET numero_msg = 1
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD cod_vend
|
||||
{ END IF
|
||||
}
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION tepcmf021()
|
||||
## Aqui se prepara para la captura del criterio de seleccion
|
||||
MESSAGE ""
|
||||
CLEAR FORM
|
||||
CONSTRUCT criterio ON vetb00011.* FROM vetb00011.*
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET SELEC = " SELECT UNIQUE * FROM vetb00011 WHERE ",
|
||||
" status_t is null AND ",
|
||||
criterio clipped,
|
||||
" ORDER BY 1,2,3,4,5,6"
|
||||
PREPARE busca FROM selec
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DECLARE datos SCROLL CURSOR WITH HOLD FOR busca
|
||||
OPEN datos
|
||||
|
||||
FETCH FIRST datos INTO comisiones.*
|
||||
IF status >= 0 THEN
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
RETURN
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones.*
|
||||
CALL busca_vendedor2()
|
||||
CALL busca_nombre_articulo2()
|
||||
|
||||
MENU "OPCIONES "
|
||||
COMMAND "Siguiente"
|
||||
"Presenta en pantalla el proximo registro encontrado"
|
||||
FETCH NEXT datos INTO comisiones.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones.*
|
||||
CALL busca_vendedor2()
|
||||
CALL busca_nombre_articulo2()
|
||||
|
||||
COMMAND "Anterior"
|
||||
"Presenta en pantalla el registro anterior encontrado"
|
||||
FETCH PREVIOUS datos INTO comisiones.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
DISPLAY BY NAME comisiones.*
|
||||
CALL busca_vendedor2()
|
||||
CALL busca_nombre_articulo2()
|
||||
|
||||
COMMAND "Primero"
|
||||
"Presenta en pantalla el primer registro encontrado"
|
||||
FETCH FIRST datos INTO comisiones.*
|
||||
|
||||
DISPLAY BY NAME comisiones.*
|
||||
CALL busca_vendedor2()
|
||||
CALL busca_nombre_articulo2()
|
||||
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Ultimo"
|
||||
"Presenta en pantalla el ultimo registro encontrado"
|
||||
FETCH LAST datos INTO comisiones.*
|
||||
|
||||
DISPLAY BY NAME comisiones.*
|
||||
CALL busca_vendedor2()
|
||||
CALL busca_nombre_articulo2()
|
||||
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Escoger"
|
||||
"<Esc> Actualiza Registro <Supr> Cancela Operacion"
|
||||
|
||||
INPUT BY NAME comisiones.porc_ventas,
|
||||
comisiones.porc_cobros WITHOUT DEFAULTS
|
||||
|
||||
AFTER FIELD porc_ventas
|
||||
IF comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
AFTER FIELD porc_cobros
|
||||
IF (comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0) AND
|
||||
(comisiones.porc_cobros IS NULL OR
|
||||
comisiones.porc_cobros = 0) THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
AFTER INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
IF comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0 THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
IF (comisiones.porc_ventas IS NULL OR
|
||||
comisiones.porc_ventas = 0) AND
|
||||
(comisiones.porc_cobros IS NULL OR
|
||||
comisiones.porc_cobros = 0) THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD porc_ventas
|
||||
END IF
|
||||
|
||||
UPDATE vetb00011 SET porc_ventas = comisiones.porc_ventas,
|
||||
porc_cobros = comisiones.porc_cobros,
|
||||
us_mod = USER,
|
||||
fech_mod = CURRENT
|
||||
WHERE
|
||||
sec_vend = comisiones.sec_vend AND
|
||||
cod_n = comisiones.cod_n AND
|
||||
cod_grupo = comisiones.cod_grupo AND
|
||||
cod_tipo = comisiones.cod_tipo AND
|
||||
cod_sec = comisiones.cod_sec
|
||||
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
LET numero_msg = 13
|
||||
CALL msg(numero_msg)
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
|
||||
COMMAND KEY ("L") "eLiminar"
|
||||
"Elimina registro que esta en la pantalla"
|
||||
UPDATE vetb00011 SET status_t = "E"
|
||||
WHERE cod_vend = comisiones.cod_vend AND
|
||||
sec_vend = comisiones.sec_vend AND
|
||||
cod_n = comisiones.cod_n AND
|
||||
cod_grupo = comisiones.cod_grupo AND
|
||||
cod_tipo = comisiones.cod_tipo AND
|
||||
cod_sec = comisiones.cod_sec
|
||||
|
||||
LET numero_msg = 39
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Retornar"
|
||||
"Retorna al menu anterior"
|
||||
CLEAR FORM
|
||||
# CALL ayuda()
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION busca_vendedor2()
|
||||
# Esta funcion busca el nombre del vendedor y lo despliega en pantalla
|
||||
# Esta funcion es valida solamente para la consulta-modificacion.
|
||||
|
||||
SELECT i.nom1_emp, i.apell1_emp, i.status_t
|
||||
INTO descrip1, descrip2, status_reg
|
||||
FROM adtb00003 i
|
||||
WHERE i.num_emp = comisiones.sec_vend and i.status_t is null
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 68
|
||||
CALL msg(numero_msg)
|
||||
ELSE
|
||||
IF status_reg = "E" THEN
|
||||
LET numero_msg = 67
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
END IF
|
||||
LET descrip6 = descrip1 clipped," ",descrip2 clipped
|
||||
DISPLAY descrip6 TO descrip6
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION busca_nombre_articulo2()
|
||||
# Esta funcion busca el nombre del articulo y lo despliega en pantalla
|
||||
# Esta funcion es valida solamente para la consulta-modificacion.
|
||||
|
||||
SELECT i.descrip_esp, i.status_t INTO descrip1, status_reg
|
||||
FROM intb00001 i
|
||||
WHERE i.cod_n = comisiones.cod_n AND
|
||||
i.cod_grupo = comisiones.cod_grupo AND
|
||||
i.cod_tipo = comisiones.cod_tipo AND
|
||||
i.cod_sec = comisiones.cod_sec
|
||||
|
||||
IF status >= 0 THEN
|
||||
IF status = NOTFOUND THEN
|
||||
LET numero_msg = 26
|
||||
CALL msg(numero_msg)
|
||||
ELSE
|
||||
IF status_reg = "E" THEN
|
||||
LET numero_msg = 44
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
END IF
|
||||
DISPLAY descrip1 TO descrip_esp
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
RETURN
|
||||
END IF
|
||||
END IF
|
||||
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION consulta_empleados2()
|
||||
OPEN WINDOW busqueda AT 7,12 WITH FORM "tefmwd001"
|
||||
ATTRIBUTE (BORDER,FORM LINE FIRST + 2,COMMENT LINE LAST,MESSAGE LINE LAST)
|
||||
|
||||
LET int_flag = false
|
||||
CONSTRUCT criterio ON a.nom1_emp FROM descrip6
|
||||
|
||||
LET selec2 = "SELECT a.num_emp, a.nom1_emp, a.apell1_emp ",
|
||||
"FROM adtb00003 a ",
|
||||
"WHERE a.status_t is null AND ",criterio clipped," ORDER BY 1,2 "
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
GO TO salir_consulta_e
|
||||
END IF
|
||||
|
||||
PREPARE busca_empleados FROM selec2
|
||||
IF status >= 0 THEN
|
||||
IF status = notfound THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
ELSE
|
||||
CALL integridad()
|
||||
IF bandera = 1 THEN
|
||||
LET bandera = 0
|
||||
END IF
|
||||
END IF
|
||||
|
||||
DECLARE buscar_empleados CURSOR FOR busca_empleados
|
||||
LET idx = 1
|
||||
|
||||
FOREACH buscar_empleados INTO arr_empleados[idx].*
|
||||
IF status = NOTFOUND THEN
|
||||
EXIT FOREACH
|
||||
END IF
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
EXIT FOREACH
|
||||
END IF
|
||||
|
||||
LET empleados[idx].cod_emp = arr_empleados[idx].cod_emp
|
||||
LET empleados[idx].descrip6 =
|
||||
arr_empleados[idx].nom_emp clipped," ",arr_empleados[idx].apell_emp clipped
|
||||
LET idx = idx + 1
|
||||
END FOREACH
|
||||
|
||||
CALL set_count(idx-1)
|
||||
MESSAGE " <Esc> Selecciona Empleado donde esta el cursor"
|
||||
DISPLAY ARRAY empleados TO s_empleados.*
|
||||
LET curr1 = arr_curr()
|
||||
|
||||
LET transportista.cod_transp = empleados[curr1].cod_emp
|
||||
LET descrip6 = empleados[curr1].descrip6
|
||||
|
||||
LABEL salir_consulta_e:
|
||||
CLOSE WINDOW busqueda
|
||||
|
||||
END FUNCTION
|
||||
|
||||
@@ -0,0 +1,138 @@
|
||||
{
|
||||
------------------------------------------------------------------------
|
||||
PROGRAMA : TEPRMT022
|
||||
OBJETIVO : ASIGNAR COMISION DE UN VENDEDOR A OTRO
|
||||
PROGRAMADOR : JUAN F. SOTO
|
||||
FECHA : JUNIO 6, 1997.
|
||||
------------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS
|
||||
"teprgb000.4gl"
|
||||
|
||||
FUNCTION teprmt022()
|
||||
DEFINE vende_de,vende_a SMALLINT,
|
||||
nombre,apellido CHAR(20),
|
||||
nombre1,nombre2 CHAR(40)
|
||||
|
||||
OPTIONS
|
||||
ERROR LINE 24,
|
||||
FORM LINE 8
|
||||
|
||||
CALL pantalla()
|
||||
DISPLAY "Asignar Comision De Un Vendedor A Otro" AT 6,20 ATTRIBUTE(BLACK)
|
||||
|
||||
OPEN FORM tefmmt022 FROM "tefmmt022"
|
||||
DISPLAY FORM tefmmt022
|
||||
|
||||
INPUT BY NAME vende_de,vende_a
|
||||
|
||||
AFTER FIELD vende_de
|
||||
IF vende_de IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD vende_de
|
||||
END IF
|
||||
SELECT nom1_emp,apell1_emp INTO nombre,apellido
|
||||
FROM adtb00003
|
||||
WHERE num_emp = vende_de
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD vende_de
|
||||
END IF
|
||||
LET nombre1 = nombre CLIPPED," ",apellido
|
||||
DISPLAY BY NAME nombre1
|
||||
|
||||
AFTER FIELD vende_a
|
||||
IF vende_a IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD vende_a
|
||||
END IF
|
||||
LET nombre = NULL
|
||||
LET apellido = NULL
|
||||
|
||||
SELECT nom1_emp,apell1_emp INTO nombre,apellido
|
||||
FROM adtb00003
|
||||
WHERE num_emp = vende_a
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD vende_a
|
||||
END IF
|
||||
|
||||
LET nombre2 = nombre CLIPPED," ",apellido
|
||||
DISPLAY BY NAME nombre2
|
||||
AFTER INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
|
||||
DISPLAY "En Proceso... Por Favor Espere" AT 16,10
|
||||
|
||||
CREATE TEMP TABLE tetmp1
|
||||
(
|
||||
sec_vend smallint,
|
||||
cod_n smallint,
|
||||
cod_grupo smallint,
|
||||
cod_tipo smallint,
|
||||
cod_sec smallint,
|
||||
porc_ventas decimal(8,4),
|
||||
porc_cobros decimal(8,4),
|
||||
status_t char(1),
|
||||
us_crea char(9),
|
||||
fech_crea datetime year to minute,
|
||||
us_mod char(9),
|
||||
fech_mod datetime year to minute
|
||||
);
|
||||
|
||||
SELECT COUNT(*) INTO regi FROM cctb00008
|
||||
WHERE sec_vend = vende_de
|
||||
|
||||
DECLARE busca CURSOR FOR
|
||||
SELECT a.* FROM cctb00008 a
|
||||
WHERE
|
||||
a.sec_vend = vende_de
|
||||
|
||||
LET p_param = "S"
|
||||
FOREACH busca INTO comisiones.*
|
||||
CALL termometro(regi,p_param)
|
||||
LET p_param = "N"
|
||||
|
||||
SELECT UNIQUE sec_vend FROM cctb00008
|
||||
WHERE sec_vend = vende_a AND
|
||||
cod_n = comisiones.cod_n AND
|
||||
cod_grupo = comisiones.cod_grupo AND
|
||||
cod_tipo = comisiones.cod_tipo AND
|
||||
cod_sec = comisiones.cod_sec
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
|
||||
INSERT INTO tetmp1 SELECT *FROM cctb00008
|
||||
WHERE sec_vend = vende_de AND
|
||||
cod_n = comisiones.cod_n AND
|
||||
cod_grupo = comisiones.cod_grupo AND
|
||||
cod_tipo = comisiones.cod_tipo AND
|
||||
cod_sec = comisiones.cod_sec
|
||||
UPDATE tetmp1 SET sec_vend = vende_a
|
||||
INSERT INTO cctb00008 SELECT *FROM tetmp1
|
||||
WHERE sec_vend = vende_a AND
|
||||
cod_n = comisiones.cod_n AND
|
||||
cod_grupo = comisiones.cod_grupo AND
|
||||
cod_tipo = comisiones.cod_tipo AND
|
||||
cod_sec = comisiones.cod_sec
|
||||
END IF
|
||||
|
||||
END FOREACH
|
||||
LET numero_msg = 1
|
||||
CALL msg(numero_msg)
|
||||
|
||||
END FUNCTION
|
||||
|
||||
@@ -0,0 +1,264 @@
|
||||
{
|
||||
-------------------------------------------------------------------------------
|
||||
PROGRAMA : TEPRRP001
|
||||
OBJETIVO : Validacion de Depositos Por Banco
|
||||
PROGRAMADOR : Tadeo A. Ferreras
|
||||
FECHA REALIZACION : Sept. 28, 1993
|
||||
-------------------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
DEFINE fecha1,fecha2,fecha_corte DATE ,
|
||||
opt5 CHAR(1)
|
||||
|
||||
##### Definicion de las variables del reporte
|
||||
DEFINE deposito1 RECORD
|
||||
num_doc SMALLINT,
|
||||
cuenta_no CHAR(8),
|
||||
descripcion CHAR(46),
|
||||
cta_banco CHAR(13),
|
||||
procedencia SMALLINT,
|
||||
descrip2 CHAR(30),
|
||||
fecha DATE,
|
||||
monto DECIMAL(12,2)
|
||||
END RECORD
|
||||
|
||||
###### Funcion de busqueda de informteion
|
||||
FUNCTION teprrp001()
|
||||
|
||||
# WHENEVER ERROR CONTINUE
|
||||
|
||||
OPTIONS
|
||||
FORM LINE 8,
|
||||
ERROR LINE 23,
|
||||
COMMENT LINE 21,
|
||||
PROMPT LINE 14
|
||||
|
||||
OPEN FORM tefmrp001 FROM "tefmrp001"
|
||||
DISPLAY FORM tefmrp001
|
||||
CALL pantalla()
|
||||
DISPLAY "teprrp001" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Validacion de Depositos Por Banco" AT 6,24 ATTRIBUTE(BLACK)
|
||||
|
||||
LET tipo_papel = 1
|
||||
CALL msgrp000(tipo_papel)
|
||||
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
||||
|
||||
# Creando el criterio de busqueda de informteion
|
||||
|
||||
INPUT BY NAME fecha1,fecha2
|
||||
ON KEY(CONTROL-P)
|
||||
CALL busca_printer() RETURNING imprime,letras.*,archivo
|
||||
|
||||
AFTER FIELD fecha1
|
||||
IF fecha1 IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha1
|
||||
END IF
|
||||
|
||||
AFTER FIELD fecha2
|
||||
IF fecha2 IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha2
|
||||
END IF
|
||||
|
||||
IF fecha1 > fecha2 THEN
|
||||
LET numero_msg = 189
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha1
|
||||
END IF
|
||||
END INPUT
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
CONSTRUCT criterio ON c.cuenta_no,c.num_doc,c.procedencia
|
||||
FROM cuenta_no,num_doc,procedencia
|
||||
ON KEY(CONTROL-P)
|
||||
CALL busca_printer() RETURNING imprime,letras.*,archivo
|
||||
|
||||
AFTER CONSTRUCT
|
||||
EXIT CONSTRUCT
|
||||
END CONSTRUCT
|
||||
|
||||
LET parametro = "D"
|
||||
CALL elijeimpresion(parametro) RETURNING orden,destino,letras.*
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
##### Selecionando la prima del dolar actual
|
||||
|
||||
LET selec =
|
||||
"SELECT c.num_doc,c.cuenta_no,a.descripcion,c.cta_banco,c.procedencia, ",
|
||||
" b.descripcion,c.fecha,c.monto ",
|
||||
"FROM tetb00001 c,cgtb00001 a,tetb00002 b ",
|
||||
"WHERE a.cuenta_no = c.cuenta_no AND c.status_t IS NULL AND ",
|
||||
" c.procedencia = b.procedencia AND b.status_t IS NULL AND ",
|
||||
" c.fecha BETWEEN ? AND ? AND ",criterio CLIPPED
|
||||
|
||||
DISPLAY "<< Buscando Informacion ... Espere Por Favor. >>" AT 19,14
|
||||
ATTRIBUTE (REVERSE,BOLD)
|
||||
|
||||
PREPARE comando FROM selec
|
||||
DECLARE busca1 CURSOR FOR comando
|
||||
OPEN busca1 USING fecha1,fecha2
|
||||
|
||||
START REPORT deposito1s TO archivo
|
||||
|
||||
DISPLAY " " AT 19,14
|
||||
DISPLAY "<< Reporte Generandose ... Por Favor Espere. >>"
|
||||
AT 19,14 ATTRIBUTE (REVERSE)
|
||||
|
||||
WHILE STATUS != NOTFOUND
|
||||
FETCH busca1 INTO deposito1.*
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
EXIT WHILE
|
||||
END IF
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DISPLAY deposito1.num_doc AT 21,20
|
||||
DISPLAY deposito1.cuenta_no AT 21,35
|
||||
|
||||
OUTPUT TO REPORT deposito1s(deposito1.*)
|
||||
END WHILE
|
||||
FINISH REPORT deposito1s
|
||||
#RUN imprime
|
||||
CALL fdestino(destino,archivo,imprime)
|
||||
CLEAR SCREEN
|
||||
END FUNCTION
|
||||
|
||||
#### Funcion que genera el reporte
|
||||
REPORT deposito1s(x)
|
||||
DEFINE x RECORD
|
||||
num_doc INTEGER,
|
||||
cuenta_no CHAR(8),
|
||||
descripcion CHAR(46),
|
||||
cta_banco CHAR(13),
|
||||
procedencia SMALLINT,
|
||||
descrip2 CHAR(30),
|
||||
fecha DATE,
|
||||
monto DECIMAL(12,2)
|
||||
END RECORD
|
||||
DEFINE descr CHAR(30)
|
||||
|
||||
DEFINE hora CHAR(5)
|
||||
DEFINE fecha5 DATE
|
||||
DEFINE dias INTEGER
|
||||
DEFINE tasa,deprec DECIMAL(8,2)
|
||||
DEFINE valor_libro,depr_teum,total1 DECIMAL(12,2)
|
||||
DEFINE total2,total3,total4,total5 DECIMAL(12,2)
|
||||
|
||||
OUTPUT
|
||||
TOP MARGIN 0
|
||||
LEFT MARGIN 0
|
||||
BOTTOM MARGIN 2
|
||||
|
||||
##### Sorteando la salida de la informteion
|
||||
|
||||
ORDER BY x.cuenta_no,x.procedencia,x.num_doc
|
||||
|
||||
FORMAT
|
||||
PAGE HEADER
|
||||
|
||||
LET hora = time
|
||||
|
||||
PRINT COLUMN 1, letras.comp_on,letras.negrillas_on
|
||||
PRINT COLUMN 1, "teprrp001",
|
||||
COLUMN 20, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
||||
COLUMN 78, "Pag. ",pageno USING "###"
|
||||
PRINT COLUMN 20, " Sistema de Tesoreria ",
|
||||
COLUMN 78, today using "dd/mm/yyyy"
|
||||
PRINT COLUMN 20, " Validacion de Depositos Por Bancos ",
|
||||
COLUMN 81, hora
|
||||
PRINT COLUMN 31, "Del ",fecha1 USING "dd/mm/yyyy"," Al ",
|
||||
fecha2 USING "dd/mm/yyyy" #,letras.normal,
|
||||
#letras.comp_on
|
||||
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"--------------------------------------------"
|
||||
|
||||
PRINT COLUMN 1, "Banco",
|
||||
COLUMN 60, "Procedencia",
|
||||
COLUMN 91, "Cta. Banco",
|
||||
COLUMN 107, "Num. Dcto.",
|
||||
COLUMN 122, "Fecha",
|
||||
COLUMN 136, "Monto"
|
||||
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"--------------------------------------------"
|
||||
, letras.negrillas_off
|
||||
|
||||
BEFORE GROUP OF x.cuenta_no
|
||||
LET total1 = 0
|
||||
|
||||
PRINT COLUMN 1,letras.negrillas_on
|
||||
PRINT COLUMN 1,x.cuenta_no," ",x.descripcion;
|
||||
|
||||
BEFORE GROUP OF x.procedencia
|
||||
LET total2 = 0
|
||||
PRINT COLUMN 60,letras.negrillas_off,x.procedencia USING "&",
|
||||
" ",x.descrip2;
|
||||
|
||||
ON EVERY ROW
|
||||
IF x.monto IS NULL THEN
|
||||
LET x.monto = 0
|
||||
END IF
|
||||
|
||||
IF total3 IS NULL THEN
|
||||
LET total3 = 0
|
||||
END IF
|
||||
|
||||
LET total1 = total1 + x.monto
|
||||
LET total2 = total2 + x.monto
|
||||
LET total3 = total3 + x.monto
|
||||
|
||||
PRINT COLUMN 91,x.cta_banco,
|
||||
COLUMN 109,x.num_doc USING "&&&&&&",
|
||||
COLUMN 121,x.fecha USING "dd/mm/yyyy",
|
||||
COLUMN 130,x.monto USING "###,###,###.##"
|
||||
|
||||
#### Acumulando los totales de las columnas por cuenta
|
||||
|
||||
AFTER GROUP OF x.procedencia
|
||||
PRINT COLUMN 1,letras.negrillas_on
|
||||
PRINT COLUMN 105,"Total Por Procedencia :",
|
||||
COLUMN 130,total2 USING "###,###,###.##"
|
||||
PRINT COLUMN 1,letras.negrillas_off
|
||||
LET Total2 = 0
|
||||
|
||||
AFTER GROUP OF x.cuenta_no
|
||||
PRINT COLUMN 1,letras.negrillas_on
|
||||
PRINT COLUMN 105,"Total Por Cuenta :",
|
||||
COLUMN 130,total1 USING "###,###,###.##"
|
||||
PRINT COLUMN 1,letras.negrillas_off
|
||||
LET Total1 = 0
|
||||
|
||||
ON LAST ROW
|
||||
PRINT COLUMN 1,letras.negrillas_on
|
||||
PRINT COLUMN 105,"Total General :",
|
||||
COLUMN 132,total3 USING "###,###,###.##"
|
||||
PRINT COLUMN 1,letras.normal,letras.negrillas_off
|
||||
LET total1 = 0
|
||||
LET total2 = 0
|
||||
LET total3 = 0
|
||||
END REPORT
|
||||
|
||||
@@ -0,0 +1,264 @@
|
||||
{
|
||||
-------------------------------------------------------------------------------
|
||||
PROGRAMA : TEPRRP001
|
||||
OBJETIVO : Validacion de Depositos Por Banco
|
||||
PROGRAMADOR : Tadeo A. Ferreras
|
||||
FECHA REALIZACION : Sept. 28, 1993
|
||||
-------------------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
DEFINE fecha1,fecha2,fecha_corte DATE ,
|
||||
opt5 CHAR(1)
|
||||
|
||||
##### Definicion de las variables del reporte
|
||||
DEFINE deposito1 RECORD
|
||||
num_doc SMALLINT,
|
||||
cuenta_no CHAR(8),
|
||||
descripcion CHAR(46),
|
||||
cta_banco CHAR(13),
|
||||
procedencia SMALLINT,
|
||||
descrip2 CHAR(30),
|
||||
fecha DATE,
|
||||
monto DECIMAL(12,2)
|
||||
END RECORD
|
||||
|
||||
###### Funcion de busqueda de informteion
|
||||
FUNCTION teprrp001()
|
||||
|
||||
# WHENEVER ERROR CONTINUE
|
||||
|
||||
OPTIONS
|
||||
FORM LINE 8,
|
||||
ERROR LINE 23,
|
||||
COMMENT LINE 21,
|
||||
PROMPT LINE 14
|
||||
|
||||
OPEN FORM tefmrp001 FROM "tefmrp001"
|
||||
DISPLAY FORM tefmrp001
|
||||
CALL pantalla()
|
||||
DISPLAY "teprrp001" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Validacion de Depositos Por Banco" AT 6,24 ATTRIBUTE(BLACK)
|
||||
|
||||
LET tipo_papel = 1
|
||||
CALL msgrp000(tipo_papel)
|
||||
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
||||
|
||||
# Creando el criterio de busqueda de informteion
|
||||
|
||||
INPUT BY NAME fecha1,fecha2
|
||||
ON KEY(CONTROL-P)
|
||||
CALL busca_printer() RETURNING imprime,letras.*,archivo
|
||||
|
||||
AFTER FIELD fecha1
|
||||
IF fecha1 IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha1
|
||||
END IF
|
||||
|
||||
AFTER FIELD fecha2
|
||||
IF fecha2 IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha2
|
||||
END IF
|
||||
|
||||
IF fecha1 > fecha2 THEN
|
||||
LET numero_msg = 189
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha1
|
||||
END IF
|
||||
END INPUT
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
CONSTRUCT criterio ON c.cuenta_no,c.num_doc,c.procedencia
|
||||
FROM cuenta_no,num_doc,procedencia
|
||||
ON KEY(CONTROL-P)
|
||||
CALL busca_printer() RETURNING imprime,letras.*,archivo
|
||||
|
||||
AFTER CONSTRUCT
|
||||
EXIT CONSTRUCT
|
||||
END CONSTRUCT
|
||||
|
||||
LET parametro = "D"
|
||||
CALL elijeimpresion(parametro) RETURNING orden,destino,letras.*
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
##### Selecionando la prima del dolar actual
|
||||
|
||||
LET selec =
|
||||
"SELECT c.num_doc,c.cuenta_no,a.descripcion,c.cta_banco,c.procedencia, ",
|
||||
" b.descripcion,c.fecha,c.monto ",
|
||||
"FROM tetb00001 c,cgtb00001 a,tetb00002 b ",
|
||||
"WHERE a.cuenta_no = c.cuenta_no AND c.status_t IS NULL AND ",
|
||||
" c.procedencia = b.procedencia AND b.status_t IS NULL AND ",
|
||||
" c.fecha BETWEEN ? AND ? AND ",criterio CLIPPED
|
||||
|
||||
DISPLAY "<< Buscando Informacion ... Espere Por Favor. >>" AT 19,14
|
||||
ATTRIBUTE (REVERSE,BOLD)
|
||||
|
||||
PREPARE comando FROM selec
|
||||
DECLARE busca1 CURSOR FOR comando
|
||||
OPEN busca1 USING fecha1,fecha2
|
||||
|
||||
START REPORT deposito1s TO archivo
|
||||
|
||||
DISPLAY " " AT 19,14
|
||||
DISPLAY "<< Reporte Generandose ... Por Favor Espere. >>"
|
||||
AT 19,14 ATTRIBUTE (REVERSE)
|
||||
|
||||
WHILE STATUS != NOTFOUND
|
||||
FETCH busca1 INTO deposito1.*
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
EXIT WHILE
|
||||
END IF
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DISPLAY deposito1.num_doc AT 21,20
|
||||
DISPLAY deposito1.cuenta_no AT 21,35
|
||||
|
||||
OUTPUT TO REPORT deposito1s(deposito1.*)
|
||||
END WHILE
|
||||
FINISH REPORT deposito1s
|
||||
#RUN imprime
|
||||
CALL fdestino(destino,archivo,imprime)
|
||||
CLEAR SCREEN
|
||||
END FUNCTION
|
||||
|
||||
#### Funcion que genera el reporte
|
||||
REPORT deposito1s(x)
|
||||
DEFINE x RECORD
|
||||
num_doc INTEGER,
|
||||
cuenta_no CHAR(8),
|
||||
descripcion CHAR(46),
|
||||
cta_banco CHAR(13),
|
||||
procedencia SMALLINT,
|
||||
descrip2 CHAR(30),
|
||||
fecha DATE,
|
||||
monto DECIMAL(12,2)
|
||||
END RECORD
|
||||
DEFINE descr CHAR(30)
|
||||
|
||||
DEFINE hora CHAR(5)
|
||||
DEFINE fecha5 DATE
|
||||
DEFINE dias INTEGER
|
||||
DEFINE tasa,deprec DECIMAL(8,2)
|
||||
DEFINE valor_libro,depr_teum,total1 DECIMAL(12,2)
|
||||
DEFINE total2,total3,total4,total5 DECIMAL(12,2)
|
||||
|
||||
OUTPUT
|
||||
TOP MARGIN 0
|
||||
LEFT MARGIN 0
|
||||
BOTTOM MARGIN 2
|
||||
|
||||
##### Sorteando la salida de la informteion
|
||||
|
||||
ORDER BY x.cuenta_no,x.procedencia,x.num_doc
|
||||
|
||||
FORMAT
|
||||
PAGE HEADER
|
||||
|
||||
LET hora = time
|
||||
|
||||
PRINT COLUMN 1, letras.comp_on,letras.negrillas_on
|
||||
PRINT COLUMN 1, "teprrp001",
|
||||
COLUMN 20, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
||||
COLUMN 78, "Pag. ",pageno USING "###"
|
||||
PRINT COLUMN 20, " Sistema de Tesoreria ",
|
||||
COLUMN 78, today using "dd/mm/yy"
|
||||
PRINT COLUMN 20, " Validacion de Depositos Por Bancos ",
|
||||
COLUMN 81, hora
|
||||
PRINT COLUMN 31, "Del ",fecha1 USING "dd/mm/yy"," Al ",
|
||||
fecha2 USING "dd/mm/yy" #,letras.normal,
|
||||
#letras.comp_on
|
||||
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"--------------------------------------------"
|
||||
|
||||
PRINT COLUMN 1, "Banco",
|
||||
COLUMN 60, "Procedencia",
|
||||
COLUMN 91, "Cta. Banco",
|
||||
COLUMN 107, "Num. Dcto.",
|
||||
COLUMN 122, "Fecha",
|
||||
COLUMN 136, "Monto"
|
||||
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"--------------------------------------------"
|
||||
, letras.negrillas_off
|
||||
|
||||
BEFORE GROUP OF x.cuenta_no
|
||||
LET total1 = 0
|
||||
|
||||
PRINT COLUMN 1,letras.negrillas_on
|
||||
PRINT COLUMN 1,x.cuenta_no," ",x.descripcion;
|
||||
|
||||
BEFORE GROUP OF x.procedencia
|
||||
LET total2 = 0
|
||||
PRINT COLUMN 60,letras.negrillas_off,x.procedencia USING "&",
|
||||
" ",x.descrip2;
|
||||
|
||||
ON EVERY ROW
|
||||
IF x.monto IS NULL THEN
|
||||
LET x.monto = 0
|
||||
END IF
|
||||
|
||||
IF total3 IS NULL THEN
|
||||
LET total3 = 0
|
||||
END IF
|
||||
|
||||
LET total1 = total1 + x.monto
|
||||
LET total2 = total2 + x.monto
|
||||
LET total3 = total3 + x.monto
|
||||
|
||||
PRINT COLUMN 91,x.cta_banco,
|
||||
COLUMN 109,x.num_doc USING "&&&&&&",
|
||||
COLUMN 121,x.fecha USING "dd/mm/yy",
|
||||
COLUMN 130,x.monto USING "###,###,###.##"
|
||||
|
||||
#### Acumulando los totales de las columnas por cuenta
|
||||
|
||||
AFTER GROUP OF x.procedencia
|
||||
PRINT COLUMN 1,letras.negrillas_on
|
||||
PRINT COLUMN 105,"Total Por Procedencia :",
|
||||
COLUMN 130,total2 USING "###,###,###.##"
|
||||
PRINT COLUMN 1,letras.negrillas_off
|
||||
LET Total2 = 0
|
||||
|
||||
AFTER GROUP OF x.cuenta_no
|
||||
PRINT COLUMN 1,letras.negrillas_on
|
||||
PRINT COLUMN 105,"Total Por Cuenta :",
|
||||
COLUMN 130,total1 USING "###,###,###.##"
|
||||
PRINT COLUMN 1,letras.negrillas_off
|
||||
LET Total1 = 0
|
||||
|
||||
ON LAST ROW
|
||||
PRINT COLUMN 1,letras.negrillas_on
|
||||
PRINT COLUMN 105,"Total General :",
|
||||
COLUMN 132,total3 USING "###,###,###.##"
|
||||
PRINT COLUMN 1,letras.normal,letras.negrillas_off
|
||||
LET total1 = 0
|
||||
LET total2 = 0
|
||||
LET total3 = 0
|
||||
END REPORT
|
||||
|
||||
@@ -0,0 +1,520 @@
|
||||
{
|
||||
-------------------------------------------------------------------------------
|
||||
PROGRAMA : TEPRRP002
|
||||
OBJETIVO : Estado De Cuentas
|
||||
PROGRAMADOR : Ing. Juan F. Soto
|
||||
FECHA REALIZACION : Junio 1, 1993
|
||||
-------------------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
DEFINE opt CHAR(1)
|
||||
DEFINE prima DECIMAL(10,2)
|
||||
DEFINE mov CHAR(1)
|
||||
DEFINE idx_1, idx_2, idx_3 SMALLINT
|
||||
DEFINE fecha_inicial, fecha_final DATE
|
||||
DEFINE salir, salir1, salir3, tipo_venta CHAR(1)
|
||||
DEFINE selec4,selec5, selec6 CHAR(1500)
|
||||
|
||||
DEFINE tot_gen1 RECORD
|
||||
totald DECIMAL(10,2),
|
||||
totalc DECIMAL(10,2),
|
||||
totalg DECIMAL(10,2)
|
||||
END RECORD
|
||||
|
||||
DEFINE clientes RECORD
|
||||
tipo_cliente SMALLINT,
|
||||
sec_cliente SMALLINT,
|
||||
valor DECIMAL(12,2)
|
||||
END RECORD
|
||||
|
||||
DEFINE mvtos RECORD
|
||||
tipo_cliente SMALLINT,
|
||||
sec_cliente SMALLINT,
|
||||
tipo_doc CHAR(2),
|
||||
num_doc INTEGER,
|
||||
fecha_doc DATE,
|
||||
aplica_a INTEGER,
|
||||
valor DECIMAL(10,2),
|
||||
monto_desc LIKE cctb00001.monto_desc,
|
||||
cliente CHAR(6) ,
|
||||
balance DECIMAL(12,2)
|
||||
END RECORD
|
||||
|
||||
FUNCTION teprrp002()
|
||||
|
||||
# WHENEVER ERROR CONTINUE
|
||||
|
||||
OPTIONS
|
||||
FORM LINE 8,
|
||||
ERROR LINE 23,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmrp002 FROM "tefmrp002"
|
||||
DISPLAY FORM tefmrp002
|
||||
CALL pantalla()
|
||||
DISPLAY "teprrp002" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY " Estado Cuentas " AT 6,32 ATTRIBUTE(BLACK)
|
||||
|
||||
LET tipo_papel = 1
|
||||
CALL msgrp000(tipo_papel)
|
||||
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
||||
|
||||
CONSTRUCT criterio ON a.tipo_cliente,a.sec_cliente FROM
|
||||
tipo_cliente, sec_cliente
|
||||
|
||||
INPUT BY NAME prima,fecha_inicial,fecha_final
|
||||
ON KEY(CONTROL-P)
|
||||
CALL busca_printer() RETURNING imprime,letras.*,archivo
|
||||
|
||||
AFTER FIELD fecha_inicial
|
||||
IF fecha_inicial is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_inicial
|
||||
END IF
|
||||
|
||||
BEFORE FIELD fecha_final
|
||||
LET fecha_final = today
|
||||
|
||||
AFTER FIELD fecha_final
|
||||
IF fecha_final is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_final
|
||||
END IF
|
||||
|
||||
IF fecha_final < fecha_inicial THEN
|
||||
LET numero_msg = 86
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_final
|
||||
END IF
|
||||
|
||||
AFTER INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
IF fecha_inicial is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_inicial
|
||||
END IF
|
||||
|
||||
IF fecha_final is null THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_final
|
||||
END IF
|
||||
|
||||
IF fecha_final < fecha_inicial THEN
|
||||
LET numero_msg = 86
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_final
|
||||
END IF
|
||||
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
LET parametro = "D"
|
||||
CALL elijeimpresion(parametro) RETURNING orden,destino,letras.*
|
||||
# Busca Balances de los clientes
|
||||
|
||||
LET selec5 =
|
||||
"SELECT a.tipo_cliente,a.sec_cliente,sum(a.valor+a.monto_desc) ",
|
||||
"FROM cctb00001 a ",
|
||||
"WHERE ",criterio clipped," AND a.status_t is null AND a.fecha_orig < ? ",
|
||||
"GROUP BY 1,2 ORDER BY 1,2 "
|
||||
|
||||
DISPLAY "<< Buscando Informacion ... Espere Por Favor. >>" AT 19,14
|
||||
ATTRIBUTE (REVERSE,BOLD)
|
||||
|
||||
PREPARE b_balance FROM selec5
|
||||
DECLARE c_balance SCROLL CURSOR FOR b_balance
|
||||
OPEN c_balance USING fecha_inicial
|
||||
|
||||
# Busca los documentos que esten en el rango de fechas especificado
|
||||
|
||||
LET selec4 =
|
||||
"SELECT a.tipo_cliente, a.sec_cliente, a.tipo_doc, a.num_doc, ",
|
||||
" a.fecha_orig, a.aplica_a, a.valor, a.monto_desc ",
|
||||
"FROM cctb00001 a ",
|
||||
"WHERE ",criterio clipped," AND a.status_t IS NULL AND ",
|
||||
" a.fecha_orig between ? AND ? ",
|
||||
"ORDER BY 1,2,6,5 "
|
||||
|
||||
DISPLAY "<< Buscando Informacion ... Espere Por Favor. >>" AT 19,14
|
||||
ATTRIBUTE (REVERSE,BOLD)
|
||||
|
||||
DISPLAY "<< Buscando los Movimientos del Rango >>" AT 20,14
|
||||
ATTRIBUTE (REVERSE,BOLD)
|
||||
|
||||
PREPARE movi FROM selec4
|
||||
DECLARE mvtos_cli SCROLL CURSOR FOR movi
|
||||
OPEN mvtos_cli USING fecha_inicial,fecha_final
|
||||
|
||||
DISPLAY " " AT 20,14
|
||||
|
||||
START REPORT report14 TO archivo
|
||||
|
||||
DISPLAY " " AT 19,14
|
||||
DISPLAY "<< Reporte Generandose ... Por Favor Espere. >>"
|
||||
AT 19,14 ATTRIBUTE (REVERSE)
|
||||
|
||||
|
||||
LET idx_1 = 1
|
||||
LET salir = "N"
|
||||
WHILE salir != "S"
|
||||
FETCH ABSOLUTE idx_1 mvtos_cli INTO mvtos.*
|
||||
|
||||
IF status = NOTFOUND THEN
|
||||
LET salir = "S"
|
||||
EXIT WHILE
|
||||
END IF
|
||||
|
||||
IF int_flag THEN
|
||||
LET salir = "S"
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
FINISH REPORT report14
|
||||
EXIT WHILE
|
||||
END IF
|
||||
|
||||
LET idx_1 = idx_1 + 1
|
||||
LET mvtos.cliente = mvtos.tipo_cliente using "&&",
|
||||
mvtos.sec_cliente using "&&&&"
|
||||
|
||||
LET mvtos.balance = 0
|
||||
LET idx_2 = 1
|
||||
LET salir1 = "N"
|
||||
WHILE salir1 != "S"
|
||||
FETCH ABSOLUTE idx_2 c_balance INTO clientes.*
|
||||
IF status = notfound THEN
|
||||
LET idx_2 = 1
|
||||
LET salir1 = "S"
|
||||
EXIT WHILE
|
||||
END IF
|
||||
|
||||
|
||||
LET idx_2 = idx_2 + 1
|
||||
IF mvtos.tipo_cliente = clientes.tipo_cliente AND
|
||||
mvtos.sec_cliente = clientes.sec_cliente THEN
|
||||
|
||||
LET idx_2 = 1
|
||||
LET mvtos.balance = clientes.valor
|
||||
EXIT WHILE
|
||||
END IF
|
||||
END WHILE
|
||||
# DISPLAY mvtos.cliente AT 13,1
|
||||
IF prima is not null THEN
|
||||
LET mvtos.valor = mvtos.valor * prima
|
||||
LET mvtos.monto_desc = mvtos.monto_desc * prima
|
||||
LET mvtos.balance = mvtos.balance * prima
|
||||
END IF
|
||||
|
||||
DISPLAY mvtos.cliente AT 21,20
|
||||
DISPLAY mvtos.tipo_doc AT 21,35
|
||||
DISPLAY mvtos.num_doc AT 21,38
|
||||
|
||||
OUTPUT TO REPORT report14(mvtos.*)
|
||||
END WHILE
|
||||
|
||||
FINISH REPORT report14
|
||||
#IF not int_flag THEN
|
||||
# LET int_flag = false
|
||||
# FINISH REPORT report14
|
||||
PROMPT "Desea Imprimir Reporte [S/N].....?" FOR CHAR opt
|
||||
|
||||
LET opt = UPSHIFT(opt)
|
||||
IF opt = "S" THEN
|
||||
#RUN imprime
|
||||
CALL fdestino(destino,archivo,imprime)
|
||||
END IF
|
||||
#END IF
|
||||
|
||||
CLEAR SCREEN
|
||||
END FUNCTION
|
||||
|
||||
REPORT report14(x)
|
||||
DEFINE x RECORD
|
||||
tipo_cliente SMALLINT,
|
||||
sec_cliente SMALLINT,
|
||||
tipo_doc CHAR(2),
|
||||
num_doc INTEGER,
|
||||
fecha_doc DATE,
|
||||
aplica_a INTEGER,
|
||||
valor DECIMAL(10,2),
|
||||
monto_desc LIKE cctb00001.monto_desc,
|
||||
cliente CHAR(6) ,
|
||||
balance DECIMAL(12,2)
|
||||
END RECORD
|
||||
|
||||
DEFINE dias SMALLINT
|
||||
DEFINE p_calle,p_descrip CHAR(30)
|
||||
DEFINE p_casa,p_zona,p_numero CHAR(10)
|
||||
DEFINE hora CHAR(5)
|
||||
DEFINE tipo CHAR(2)
|
||||
DEFINE imp_cli CHAR(1)
|
||||
DEFINE credito, debito, tcredito, tdebito, tbalance,
|
||||
limite, b_balance, v1_30, v31_45, v46_60, vm_60,p_valor DECIMAL(12,2)
|
||||
OUTPUT
|
||||
TOP MARGIN 0
|
||||
LEFT MARGIN 0
|
||||
BOTTOM MARGIN 2
|
||||
PAGE LENGTH 33
|
||||
|
||||
ORDER BY x.cliente,x.aplica_a,x.fecha_doc
|
||||
|
||||
FORMAT
|
||||
PAGE HEADER
|
||||
LET hora = time
|
||||
|
||||
PRINT COLUMN 1, letras.comp_on
|
||||
# PRINT COLUMN 1, letras.doce, letras.negrillas_on
|
||||
PRINT COLUMN 1, "teprrp002",
|
||||
COLUMN 31, "R A Y - O - V A C D O M I N I C A N A, S. A.",
|
||||
COLUMN 103, "Pag.",
|
||||
COLUMN 108, pageno using "###"
|
||||
PRINT COLUMN 43, "Sistema de Tesoreria",
|
||||
COLUMN 101, today using "dd/mm/yyyy"
|
||||
|
||||
PRINT COLUMN 44, " Estado de Cuenta ",
|
||||
COLUMN 106, hora
|
||||
|
||||
PRINT COLUMN 47, " Al ", fecha_final using "dd/mm/yyyy"
|
||||
# , letras.negrillas_off
|
||||
|
||||
IF prima is null THEN
|
||||
PRINT COLUMN 53, "RD$"
|
||||
ELSE
|
||||
PRINT COLUMN 53, "US$"
|
||||
END IF
|
||||
|
||||
SKIP 1 LINES
|
||||
|
||||
BEFORE GROUP OF x.cliente
|
||||
LET v1_30 = 0
|
||||
LET v31_45 = 0
|
||||
LET v46_60 = 0
|
||||
LET vm_60 = 0
|
||||
|
||||
IF tdebito IS NULL THEN
|
||||
LET tdebito = 0
|
||||
END IF
|
||||
|
||||
IF tcredito IS NULL THEN
|
||||
LET tcredito = 0
|
||||
END IF
|
||||
|
||||
IF tbalance IS NULL THEN
|
||||
LET tbalance = 0
|
||||
END IF
|
||||
|
||||
SELECT b.nombre,b.limite_credito,b.zona_postal,b.num_rnc,
|
||||
c.calle,c.casa_num,d.descrip
|
||||
INTO descrip1,limite,p_zona,p_numero,p_calle,p_casa,
|
||||
p_descrip
|
||||
FROM vetb00004 b ,vetb00005 c,vetb00008 d
|
||||
WHERE x.tipo_cliente = b.tipo_cliente and
|
||||
x.sec_cliente = b.sec_cliente and
|
||||
b.tipo_cliente = c.tipo_cliente and
|
||||
b.sec_cliente = c.sec_cliente and
|
||||
b.cod_zona = d.cod_zona and
|
||||
b.status_t is null
|
||||
|
||||
IF x.balance IS NULL THEN
|
||||
LET x.balance = 0
|
||||
END IF
|
||||
|
||||
IF limite IS NULL THEN
|
||||
LET limite = 0
|
||||
END IF
|
||||
|
||||
IF prima is not null THEN
|
||||
PRINT COLUMN 1,"Prima: ", prima using "###.##"
|
||||
END IF
|
||||
|
||||
PRINT COLUMN 1,
|
||||
"--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"-----------"
|
||||
,letras.negrillas_on
|
||||
|
||||
PRINT COLUMN 1, "Cliente:",
|
||||
COLUMN 10, x.tipo_cliente using "&&","-",
|
||||
x.sec_cliente using "&&&&",
|
||||
COLUMN 18, descrip1 clipped,
|
||||
COLUMN 49, "Limite Credito",
|
||||
COLUMN 64, limite using "####,###,###.##",
|
||||
COLUMN 81, "Balance Al: ", fecha_inicial using "dd/mm/yyyy"
|
||||
|
||||
PRINT COLUMN 10, p_calle clipped," ",p_casa,
|
||||
COLUMN 24, "RNC: ", p_numero,
|
||||
COLUMN 91, x.balance using "####,###,###.##"
|
||||
PRINT COLUMN 10, p_descrip,
|
||||
COLUMN 22, "ZONA POSTAL: ",p_zona,letras.negrillas_off
|
||||
|
||||
PRINT COLUMN 1,
|
||||
"--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"-----------"
|
||||
|
||||
LET b_balance = x.balance
|
||||
|
||||
# SKIP 1 LINE
|
||||
|
||||
PRINT COLUMN 4, "D O C U M E N T O",
|
||||
COLUMN 29, "A F E C T A"
|
||||
|
||||
PRINT COLUMN 1, "|----------------------|",
|
||||
COLUMN 27, "|---------------|"
|
||||
|
||||
PRINT COLUMN 3, "Numero",
|
||||
COLUMN 11, "Tipo",
|
||||
COLUMN 17, "Fecha",
|
||||
COLUMN 29, "Numero",
|
||||
COLUMN 38, "Tipo",
|
||||
COLUMN 63, "D E B I T O",
|
||||
COLUMN 80, "C R E D I T O",
|
||||
COLUMN 99, "B A L A N C E"
|
||||
|
||||
PRINT COLUMN 1,
|
||||
"--------------------------------------------------",
|
||||
"--------------------------------------------------" ,
|
||||
"-----------"
|
||||
|
||||
LET debito = 0
|
||||
LET credito = 0
|
||||
|
||||
|
||||
ON EVERY ROW
|
||||
|
||||
# IF x.fecha_doc >= fecha_inicial AND
|
||||
# x.fecha_doc <= fecha_final THEN
|
||||
{
|
||||
SELECT UNIQUE tipo_doc
|
||||
INTO tipo
|
||||
FROM cctb00001
|
||||
WHERE num_doc = x.num_doc #aplica_a
|
||||
}
|
||||
|
||||
PRINT COLUMN 3, x.num_doc using "######",
|
||||
COLUMN 12, x.tipo_doc,
|
||||
COLUMN 16, x.fecha_doc using "dd/mm/yyyy",
|
||||
COLUMN 28, x.aplica_a using "######",
|
||||
COLUMN 39, tipo;
|
||||
|
||||
LET b_balance = b_balance + (x.valor + x.monto_desc)
|
||||
|
||||
IF x.valor >= 0 THEN
|
||||
PRINT COLUMN 59, x.valor using "####,###,###.##",
|
||||
COLUMN 97, b_balance using "####,###,###.##"
|
||||
LET debito = debito + x.valor
|
||||
ELSE
|
||||
PRINT COLUMN 78, x.valor + x.monto_desc using "####,###,###.##",
|
||||
COLUMN 97, b_balance using "####,###,###.##"
|
||||
LET credito = credito + (x.valor + x.monto_desc)
|
||||
END IF
|
||||
|
||||
# END IF
|
||||
|
||||
AFTER GROUP OF x.aplica_a
|
||||
LET p_valor = GROUP SUM(x.valor+x.monto_desc)
|
||||
|
||||
IF p_valor > 0 THEN
|
||||
|
||||
LET dias = fecha_inicial - x.fecha_doc
|
||||
|
||||
IF dias < 31 THEN
|
||||
LET v1_30 = p_valor + v1_30
|
||||
END IF
|
||||
|
||||
IF dias > 30 and dias < 46 THEN
|
||||
LET v31_45 = p_valor + v31_45
|
||||
END IF
|
||||
|
||||
IF dias > 45 and dias < 61 THEN
|
||||
LET v46_60 = p_valor + v46_60
|
||||
END IF
|
||||
|
||||
IF dias > 60 THEN
|
||||
LET vm_60 = vm_60 + p_valor
|
||||
END IF
|
||||
END IF
|
||||
|
||||
PAGE TRAILER
|
||||
PRINT COLUMN 1, "ANALISIS POR ANTIGUEDAD",letras.negrillas_on,
|
||||
COLUMN 33, "1 a 30",
|
||||
COLUMN 47, "31 a 45",
|
||||
COLUMN 59, "46 a 60",
|
||||
COLUMN 70, "Mas de 60",letras.negrillas_off
|
||||
|
||||
PRINT COLUMN 1, "DE SU APRECIADA CUENTA: ",
|
||||
COLUMN 26, v1_30 using "##,###,###.##",
|
||||
COLUMN 41, v31_45 using "##,###,###.##",
|
||||
COLUMN 51, v46_60 using "##,###,###.##",
|
||||
COLUMN 61, vm_60 using "##,###,###.##"
|
||||
|
||||
PRINT COLUMN 1, "NOTA: LE ROGAMOS REVISAR ESTE ESTADO Y NOTIFICAR A NUESTRO ",
|
||||
"DEPARTAMENTO DE CONTABILIDAD SOBRE CUALQUIER "
|
||||
PRINT COLUMN 1, "DISCREPANCIA O REPARO, A LA MAYOR BREVEDAD POSIBLE."
|
||||
PRINT COLUMN 1, "APRECIAMOS SU RESPUESTA, POR TANTO, QUEDAREMOS AGRADECIDOS"
|
||||
," POR SU ATENCION, SERVANSE USAR LA COPIA DE ESTE ESTADO"
|
||||
PRINT COLUMN 1, "PARA SU CONFIRMACION."
|
||||
SKIP 1 LINE
|
||||
PRINT COLUMN 10, letras.negrillas_on,
|
||||
"NOMENCLATURA: PG- PAGOS FT- FACTURAS ND- NOTA DE DEBITO NC- NOTA CREDITO",
|
||||
" DE- DEVOLUCIONES",
|
||||
letras.negrillas_off
|
||||
{ AFTER GROUP OF x.cliente
|
||||
|
||||
IF imp_cli = "S" THEN
|
||||
SKIP 1 LINE
|
||||
PRINT
|
||||
COLUMN 1, letras.negrillas_on,
|
||||
COLUMN 27, "Total Cliente",
|
||||
COLUMN 59, debito using "####,###,###.##",
|
||||
COLUMN 78, credito using "####,###,###.##",
|
||||
COLUMN 97, b_balance using "####,###,###.##"
|
||||
|
||||
PRINT COLUMN 59, "===============",
|
||||
COLUMN 78, "===============",
|
||||
COLUMN 97, "==============="
|
||||
, letras.negrillas_off
|
||||
|
||||
PRINT COLUMN 1,
|
||||
"--------------------------------------------------",
|
||||
"--------------------------------------------------" ,
|
||||
"-----------"
|
||||
|
||||
LET tcredito = tcredito + credito
|
||||
LET tdebito = tdebito + debito
|
||||
LET tbalance = tbalance + b_balance
|
||||
LET credito = 0
|
||||
LET debito = 0
|
||||
LET x.balance = 0
|
||||
|
||||
END IF}
|
||||
|
||||
{ ON LAST ROW
|
||||
SKIP 1 LINE
|
||||
PRINT
|
||||
COLUMN 1, letras.negrillas_on,
|
||||
COLUMN 27, "Total General",
|
||||
COLUMN 59, tdebito using "####,###,###.##",
|
||||
COLUMN 78, tcredito using "####,###,###.##",
|
||||
COLUMN 97, tbalance using "####,###,###.##"
|
||||
# , letras.negrillas_off
|
||||
|
||||
LET tot_gen1.totald = tdebito
|
||||
LET tot_gen1.totalc = tcredito
|
||||
LET tot_gen1.totalg = tbalance
|
||||
|
||||
|
||||
PRINT normall
|
||||
# PRINT normal }
|
||||
|
||||
END REPORT
|
||||
|
||||
@@ -0,0 +1,260 @@
|
||||
{
|
||||
-------------------------------------------------------------------------------
|
||||
PROGRAMA : VEPRRP003
|
||||
OBJETIVO : Comisiones por Ventas
|
||||
PROGRAMADOR : Juan Fco. Soto
|
||||
FECHA REALIZACION : Mayo 27, 1993
|
||||
-------------------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
DEFINE mes SMALLINT
|
||||
DEFINE cod_cia SMALLINT
|
||||
FUNCTION teprrp003()
|
||||
|
||||
DEFINE vendedor RECORD
|
||||
cod_vend SMALLINT,
|
||||
sec_vend SMALLINT,
|
||||
fecha_factura DATE,
|
||||
factura INTEGER,
|
||||
cod_n SMALLINT,
|
||||
cod_grupo SMALLINT,
|
||||
cod_tipo SMALLINT,
|
||||
cod_sec SMALLINT,
|
||||
cantidad INTEGER ,
|
||||
porc_venta DECIMAL(10,4),
|
||||
precio DECIMAL(10,2),
|
||||
descrip_esp CHAR(30),
|
||||
nombre_vend CHAR(30),
|
||||
apellido_vend CHAR(30) ,
|
||||
vende CHAR(6)
|
||||
END RECORD
|
||||
|
||||
#WHENEVER ERROR CONTINUE
|
||||
|
||||
OPTIONS
|
||||
FORM LINE 8,
|
||||
ERROR LINE 23,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmrp003 FROM "tefmrp003"
|
||||
DISPLAY FORM tefmrp003
|
||||
CALL pantalla()
|
||||
DISPLAY "teprrp003" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY " Comision por Ventas " AT 6,29 ATTRIBUTE(BLACK)
|
||||
|
||||
LET tipo_papel = 1
|
||||
CALL msgrp000(tipo_papel)
|
||||
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
||||
|
||||
INPUT BY NAME cod_cia,mes
|
||||
ON KEY(CONTROL-P)
|
||||
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
||||
AFTER INPUT
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
|
||||
CONSTRUCT criterio ON a.cod_vend, a.sec_vend,a.ventas,b.cod_n,b.cod_grupo,
|
||||
b.cod_tipo,b.cod_sec
|
||||
FROM cod_vend,sec_vend,ventas,cod_n,cod_grupo,cod_tipo,
|
||||
cod_sec
|
||||
ON KEY(CONTROL-P)
|
||||
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
||||
AFTER CONSTRUCT
|
||||
EXIT CONSTRUCT
|
||||
END CONSTRUCT
|
||||
|
||||
LET parametro = "D"
|
||||
CALL elijeimpresion(parametro) RETURNING orden,destino,letras.*
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
START REPORT comision TO "oscar" #archivo
|
||||
|
||||
DISPLAY " " AT 19,14
|
||||
DISPLAY "<< Buscando Las Informaciones... Espere Por Favor >>" AT 19,14
|
||||
|
||||
LET selec =
|
||||
"SELECT a.cod_vend,a.sec_vend,a.fecha_factura,a.factura,b.cod_n, ",
|
||||
" b.cod_grupo,b.cod_tipo,b.cod_sec,b.cantidad,d.porc_ventas, ",
|
||||
" b.precio ",
|
||||
"FROM vetb00002 a,vetb00003 b,vetb00011 d, prdtable c ",
|
||||
"WHERE a.fecha_factura between c.fecha_inicio AND c.fecha_corte AND ",
|
||||
" a.factura=b.factura AND c.mes=? AND a.cod_vend=d.cod_vend AND ",
|
||||
" a.sec_vend = d.sec_vend AND b.cod_n = d.cod_n AND ",
|
||||
" b.cod_grupo = d.cod_grupo AND b.cod_tipo = d.cod_tipo AND ",
|
||||
" b.cod_sec = d.cod_sec AND a.cod_cia = ? AND ",criterio clipped,
|
||||
" AND a.status_t is null ORDER BY 1,2,4"
|
||||
|
||||
PREPARE b_vende FROM selec
|
||||
DECLARE c_vende CURSOR FOR b_vende
|
||||
OPEN c_vende USING mes,cod_cia
|
||||
|
||||
DISPLAY " " AT 19,14
|
||||
DISPLAY "<< Reporte Generandose... Espere Por Favor >>" AT 19,14
|
||||
|
||||
WHILE STATUS != NOTFOUND
|
||||
FETCH c_vende INTO vendedor.*
|
||||
IF status = notfound THEN
|
||||
EXIT WHILE
|
||||
END IF
|
||||
SELECT a.descrip_esp INTO vendedor.descrip_esp FROM intb00001 a
|
||||
WHERE a.cod_n = vendedor.cod_n and a.cod_grupo = vendedor.cod_grupo and
|
||||
a.cod_tipo = vendedor.cod_tipo and a.cod_sec = vendedor.cod_sec
|
||||
|
||||
SELECT a.nom_emp,a.apell_emp
|
||||
INTO vendedor.nombre_vend,vendedor.apellido_vend
|
||||
FROM adtb00003 a
|
||||
WHERE a.cod_emp = vendedor.cod_vend and a.cod_emp_sec = vendedor.sec_vend
|
||||
|
||||
LET vendedor.vende = vendedor.cod_vend using "&&",
|
||||
vendedor.sec_vend using "&&&&"
|
||||
|
||||
OUTPUT TO REPORT comision (vendedor.*)
|
||||
END WHILE
|
||||
|
||||
FINISH REPORT comision
|
||||
#RUN imprime
|
||||
#CALL fdestino(destino,archivo,imprime)
|
||||
CLEAR SCREEN
|
||||
END FUNCTION
|
||||
REPORT comision(x)
|
||||
DEFINE x RECORD
|
||||
cod_vend SMALLINT,
|
||||
sec_vend SMALLINT,
|
||||
fecha_factura DATE,
|
||||
factura INTEGER,
|
||||
cod_n SMALLINT,
|
||||
cod_grupo SMALLINT,
|
||||
cod_tipo SMALLINT,
|
||||
cod_sec SMALLINT,
|
||||
cantidad INTEGER ,
|
||||
porc_venta DECIMAL(10,4),
|
||||
precio DECIMAL(10,2),
|
||||
descrip_esp CHAR(30),
|
||||
nombre_vend CHAR(30),
|
||||
apellido_vend CHAR(30) ,
|
||||
vendedor CHAR(6)
|
||||
END RECORD
|
||||
|
||||
DEFINE nombre_mes CHAR(10)
|
||||
DEFINE total_clientes INTEGER
|
||||
DEFINE hora CHAR(5)
|
||||
DEFINE i SMALLINT
|
||||
DEFINE porc DECIMAL(10,4)
|
||||
DEFINE total_gen,total_vend,valor_pagar DECIMAL(12,2)
|
||||
|
||||
OUTPUT
|
||||
TOP MARGIN 0
|
||||
LEFT MARGIN 0
|
||||
BOTTOM MARGIN 4
|
||||
|
||||
ORDER BY x.vendedor,x.factura
|
||||
|
||||
FORMAT
|
||||
PAGE HEADER
|
||||
LET hora = time
|
||||
CALL meses()
|
||||
LET nombre_mes = mes1[mes]
|
||||
|
||||
PRINT COLUMN 1, letras.doce, letras.negrillas_on
|
||||
PRINT COLUMN 1, "teprrp003",
|
||||
COLUMN 27, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
||||
COLUMN 92, "Pag. ",pageno using "###"
|
||||
PRINT COLUMN 41, "Sistema de Ventas ",
|
||||
COLUMN 90, today using "dd/mm/yyyy"
|
||||
PRINT COLUMN 34, "Relacion comision por Vendedor",
|
||||
COLUMN 95, hora, letras.negrillas_off
|
||||
|
||||
PRINT COLUMN 40, letras.doble_on,nombre_mes,letras.doble_off
|
||||
IF cod_cia = 1 THEN
|
||||
PRINT COLUMN 1, "Rayovac Dominicana"
|
||||
ELSE
|
||||
PRINT COLUMN 1, "Distribuidora Dominicana de Pilas"
|
||||
END IF
|
||||
|
||||
SKIP 1 LINES
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"--------------------"
|
||||
PRINT COLUMN 93, "COMISION"
|
||||
|
||||
PRINT COLUMN 2, "FACTURA",
|
||||
COLUMN 10, "FECHA",
|
||||
COLUMN 20, "PRODUCTO",
|
||||
COLUMN 66, "PRECIO",
|
||||
COLUMN 75, "UNIDADES",
|
||||
COLUMN 84, "COMISION",
|
||||
COLUMN 93, "A PAGAR"
|
||||
|
||||
PRINT COLUMN 1,
|
||||
"--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"--------------------"
|
||||
|
||||
IF total_gen is null THEN
|
||||
LET total_gen = 0
|
||||
END IF
|
||||
SKIP 1 LINE
|
||||
BEFORE GROUP OF x.vendedor
|
||||
LET total_vend = 0
|
||||
PRINT COLUMN 1,letras.doble_on,"VENDEDOR : ",
|
||||
x.nombre_vend clipped," ",
|
||||
x.apellido_vend clipped, letras.doble_off
|
||||
|
||||
SKIP 1 LINE
|
||||
ON EVERY ROW
|
||||
|
||||
IF cod_cia = 1 THEN
|
||||
LET valor_pagar = x.cantidad * x.porc_venta
|
||||
LET porc = x.porc_venta
|
||||
ELSE
|
||||
LET valor_pagar = (x.cantidad * x.precio) * (x.porc_venta / 100)
|
||||
LET porc = x.porc_venta / 100
|
||||
END IF
|
||||
|
||||
PRINT COLUMN 1, x.factura using "&&&&&&",
|
||||
COLUMN 9, x.fecha_factura using "dd/mm/yyyy",
|
||||
COLUMN 20, x.cod_n using "&","-",x.cod_grupo using "&","-",
|
||||
x.cod_tipo using "&&","-",x.cod_sec using "&&&",
|
||||
" ",x.descrip_esp," ";
|
||||
IF cod_cia = 2 THEN
|
||||
PRINT COLUMN 63, x.cantidad * x.precio using "##,###,###";
|
||||
END IF
|
||||
|
||||
PRINT COLUMN 74, x.cantidad using "###,###",
|
||||
COLUMN 84, porc using "###.####",
|
||||
COLUMN 91, valor_pagar using "###,###.##"
|
||||
|
||||
LET total_vend = valor_pagar + total_vend
|
||||
|
||||
AFTER GROUP OF x.vendedor
|
||||
PRINT COLUMN 91, "----------"
|
||||
PRINT COLUMN 50, "Total A Pagar: ",
|
||||
COLUMN 91, total_vend using "###,###.##"
|
||||
SKIP 1 LINE
|
||||
LET total_gen = total_gen + total_vend
|
||||
LET total_vend = 0
|
||||
AFTER GROUP OF x.factura
|
||||
SKIP 1 LINE
|
||||
END REPORT
|
||||
|
||||
FUNCTION meses()
|
||||
|
||||
LET mes1[1] = "Enero"
|
||||
LET mes1[2] = "Febrero"
|
||||
LET mes1[3] = "Marzo"
|
||||
LET mes1[4] = "Abril"
|
||||
LET mes1[5] = "Mayo"
|
||||
LET mes1[6] = "Junio"
|
||||
LET mes1[7] = "Julio"
|
||||
LET mes1[8] = "Agosto"
|
||||
LET mes1[9] = "Septiembre"
|
||||
LET mes1[10] = "Octubre"
|
||||
LET mes1[11] = "Noviembre"
|
||||
LET mes1[12] = "Diciembre"
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,273 @@
|
||||
{
|
||||
-------------------------------------------------------------------------------
|
||||
PROGRAMA : VEPRRP003
|
||||
OBJETIVO : Comisiones por Ventas
|
||||
PROGRAMADOR : Juan Fco. Soto
|
||||
FECHA REALIZACION : Mayo 27, 1993
|
||||
-------------------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
DEFINE mes SMALLINT,
|
||||
ano CHAR(4)
|
||||
DEFINE cod_cia SMALLINT
|
||||
FUNCTION teprrp003()
|
||||
|
||||
DEFINE vendedor RECORD
|
||||
cod_vend SMALLINT,
|
||||
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),
|
||||
porc_venta DECIMAL(10,4),
|
||||
descrip_esp CHAR(30),
|
||||
nombre_vend CHAR(30),
|
||||
apellido_vend CHAR(30),
|
||||
vende CHAR(6)
|
||||
END RECORD
|
||||
|
||||
#WHENEVER ERROR CONTINUE
|
||||
|
||||
OPTIONS
|
||||
FORM LINE 8,
|
||||
ERROR LINE 23,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmrp003 FROM "tefmrp003"
|
||||
DISPLAY FORM tefmrp003
|
||||
CALL pantalla()
|
||||
DISPLAY "teprrp003" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY " Comision por Ventas " AT 6,29 ATTRIBUTE(BLACK)
|
||||
|
||||
LET tipo_papel = 1
|
||||
CALL msgrp000(tipo_papel)
|
||||
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
||||
|
||||
INPUT BY NAME cod_cia,mes,ano
|
||||
ON KEY(CONTROL-P)
|
||||
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
||||
AFTER INPUT
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
|
||||
CONSTRUCT criterio ON a.cod_vend, a.sec_vend,a.ventas,b.cod_n,b.cod_grupo,
|
||||
b.cod_tipo,b.cod_sec
|
||||
FROM cod_vend,sec_vend,ventas,cod_n,cod_grupo,cod_tipo,
|
||||
cod_sec
|
||||
ON KEY(CONTROL-P)
|
||||
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
||||
AFTER CONSTRUCT
|
||||
EXIT CONSTRUCT
|
||||
END CONSTRUCT
|
||||
|
||||
LET parametro = "D"
|
||||
CALL elijeimpresion(parametro) RETURNING orden,destino,letras.*
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
START REPORT comision TO archivo
|
||||
|
||||
DISPLAY " " AT 19,14
|
||||
DISPLAY "<< Buscando Las Informaciones... Espere Por Favor >>" AT 19,14
|
||||
|
||||
LET selec =
|
||||
"SELECT a.cod_vend,a.sec_vend,a.fecha_factura,a.factura,b.cod_n, ",
|
||||
" b.cod_grupo,b.cod_tipo,b.cod_sec,b.cantidad,",
|
||||
" b.precio ",
|
||||
"FROM vetb00002 a,vetb00003 b,prdtable c ",
|
||||
"WHERE a.fecha_factura between c.fecha_inicio AND c.fecha_corte AND ",
|
||||
" a.factura=b.factura AND c.mes=? AND a.cod_cia = ? AND ",criterio clipped,
|
||||
" AND a.status_t is null AND c.ano = ? ORDER BY 1,2,4"
|
||||
|
||||
PREPARE b_vende FROM selec
|
||||
DECLARE c_vende CURSOR FOR b_vende
|
||||
OPEN c_vende USING mes,cod_cia,ano
|
||||
|
||||
DISPLAY " " AT 19,14
|
||||
DISPLAY "<< Reporte Generandose... Espere Por Favor >>" AT 19,14
|
||||
|
||||
WHILE STATUS != NOTFOUND
|
||||
FETCH c_vende INTO vendedor.*
|
||||
IF status = notfound THEN
|
||||
EXIT WHILE
|
||||
END IF
|
||||
|
||||
SELECT a.porc_ventas
|
||||
INTO vendedor.porc_venta
|
||||
FROM vetb00011 a
|
||||
WHERE a.sec_vend = vendedor.sec_vend
|
||||
AND a.cod_n = vendedor.cod_n
|
||||
AND a.cod_grupo = vendedor.cod_grupo
|
||||
AND a.cod_sec = vendedor.cod_sec
|
||||
AND a.status_t IS NULL
|
||||
|
||||
SELECT a.descrip_esp INTO vendedor.descrip_esp FROM intb00001 a
|
||||
WHERE a.cod_n = vendedor.cod_n and a.cod_grupo = vendedor.cod_grupo and
|
||||
a.cod_tipo = vendedor.cod_tipo and a.cod_sec = vendedor.cod_sec
|
||||
|
||||
SELECT a.nom1_emp,a.apell1_emp
|
||||
INTO vendedor.nombre_vend,vendedor.apellido_vend
|
||||
FROM adtb00003 a
|
||||
WHERE a.num_emp = vendedor.sec_vend
|
||||
|
||||
LET vendedor.vende = vendedor.cod_vend using "&&",
|
||||
vendedor.sec_vend using "&&&&"
|
||||
|
||||
OUTPUT TO REPORT comision (vendedor.*)
|
||||
END WHILE
|
||||
|
||||
FINISH REPORT comision
|
||||
#RUN imprime
|
||||
CALL fdestino(destino,archivo,imprime)
|
||||
CLEAR SCREEN
|
||||
END FUNCTION
|
||||
REPORT comision(x)
|
||||
DEFINE x RECORD
|
||||
cod_vend SMALLINT,
|
||||
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),
|
||||
porc_venta DECIMAL(10,4),
|
||||
descrip_esp CHAR(30),
|
||||
nombre_vend CHAR(30),
|
||||
apellido_vend CHAR(30) ,
|
||||
vendedor CHAR(6)
|
||||
END RECORD
|
||||
|
||||
DEFINE nombre_mes CHAR(10)
|
||||
DEFINE total_clientes INTEGER
|
||||
DEFINE hora CHAR(5)
|
||||
DEFINE i SMALLINT
|
||||
DEFINE porc DECIMAL(10,4)
|
||||
DEFINE total_gen,total_vend,valor_pagar DECIMAL(12,2)
|
||||
|
||||
OUTPUT
|
||||
TOP MARGIN 0
|
||||
LEFT MARGIN 0
|
||||
BOTTOM MARGIN 4
|
||||
|
||||
ORDER BY x.vendedor,x.factura
|
||||
|
||||
FORMAT
|
||||
PAGE HEADER
|
||||
LET hora = time
|
||||
CALL meses()
|
||||
LET nombre_mes = mes1[mes]
|
||||
|
||||
PRINT COLUMN 1, letras.doce, letras.negrillas_on
|
||||
PRINT COLUMN 1, "teprrp003",
|
||||
COLUMN 27, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
||||
COLUMN 92, "Pag. ",pageno using "###"
|
||||
PRINT COLUMN 41, "Sistema de Ventas ",
|
||||
COLUMN 90, today using "dd/mm/yyyy"
|
||||
PRINT COLUMN 34, "Relacion comision por Vendedor",
|
||||
COLUMN 95, hora, letras.negrillas_off
|
||||
|
||||
PRINT COLUMN 40, letras.doble_on,nombre_mes,letras.doble_off
|
||||
IF cod_cia = 1 THEN
|
||||
PRINT COLUMN 1, "Rayovac Dominicana"
|
||||
ELSE
|
||||
PRINT COLUMN 1, "Productos Importados" #"Distribuidora Dominicana de Pilas"
|
||||
END IF
|
||||
|
||||
SKIP 1 LINES
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"--------------------"
|
||||
PRINT COLUMN 93, "COMISION"
|
||||
|
||||
PRINT COLUMN 2, "FACTURA",
|
||||
COLUMN 10, "FECHA",
|
||||
COLUMN 20, "PRODUCTO",
|
||||
COLUMN 66, "PRECIO",
|
||||
COLUMN 75, "UNIDADES",
|
||||
COLUMN 84, "COMISION",
|
||||
COLUMN 93, "A PAGAR"
|
||||
|
||||
PRINT COLUMN 1,
|
||||
"--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"--------------------"
|
||||
|
||||
IF total_gen is null THEN
|
||||
LET total_gen = 0
|
||||
END IF
|
||||
SKIP 1 LINE
|
||||
BEFORE GROUP OF x.vendedor
|
||||
LET total_vend = 0
|
||||
PRINT COLUMN 1,letras.doble_on,"VENDEDOR : ",
|
||||
x.nombre_vend clipped," ",
|
||||
x.apellido_vend clipped, letras.doble_off
|
||||
|
||||
SKIP 1 LINE
|
||||
ON EVERY ROW
|
||||
|
||||
# display "porciento ",x.porc_venta
|
||||
|
||||
IF cod_cia = 1 THEN
|
||||
LET valor_pagar = x.cantidad * x.porc_venta
|
||||
LET porc = x.porc_venta
|
||||
ELSE
|
||||
LET valor_pagar = (x.cantidad * x.precio) * (x.porc_venta / 100)
|
||||
LET porc = x.porc_venta / 100
|
||||
END IF
|
||||
{
|
||||
display "valor_pagar ",valor_pagar
|
||||
display "porc ",porc
|
||||
}
|
||||
PRINT COLUMN 1, x.factura using "&&&&&&",
|
||||
COLUMN 9, x.fecha_factura using "dd/mm/yyyy",
|
||||
COLUMN 20, x.cod_n using "&","-",x.cod_grupo using "&","-",
|
||||
x.cod_tipo using "&&","-",x.cod_sec using "&&&",
|
||||
" ",x.descrip_esp," ";
|
||||
IF cod_cia = 2 THEN
|
||||
PRINT COLUMN 63, x.cantidad * x.precio using "##,###,###";
|
||||
END IF
|
||||
|
||||
PRINT COLUMN 74, x.cantidad using "###,###",
|
||||
COLUMN 84, porc using "###.####",
|
||||
COLUMN 91, valor_pagar using "###,###.##"
|
||||
|
||||
LET total_vend = valor_pagar + total_vend
|
||||
|
||||
AFTER GROUP OF x.vendedor
|
||||
PRINT COLUMN 91, "----------"
|
||||
PRINT COLUMN 50, "Total A Pagar: ",
|
||||
COLUMN 91, total_vend using "###,###.##"
|
||||
SKIP 1 LINE
|
||||
LET total_gen = total_gen + total_vend
|
||||
LET total_vend = 0
|
||||
AFTER GROUP OF x.factura
|
||||
SKIP 1 LINE
|
||||
END REPORT
|
||||
|
||||
FUNCTION meses()
|
||||
|
||||
LET mes1[1] = "Enero"
|
||||
LET mes1[2] = "Febrero"
|
||||
LET mes1[3] = "Marzo"
|
||||
LET mes1[4] = "Abril"
|
||||
LET mes1[5] = "Mayo"
|
||||
LET mes1[6] = "Junio"
|
||||
LET mes1[7] = "Julio"
|
||||
LET mes1[8] = "Agosto"
|
||||
LET mes1[9] = "Septiembre"
|
||||
LET mes1[10] = "Octubre"
|
||||
LET mes1[11] = "Noviembre"
|
||||
LET mes1[12] = "Diciembre"
|
||||
END FUNCTION
|
||||
@@ -0,0 +1,235 @@
|
||||
{
|
||||
-------------------------------------------------------------------------------
|
||||
PROGRAMA : TEPRRP004
|
||||
OBJETIVO : Comisiones por Cobro
|
||||
PROGRAMADOR : Juan Fco. Sotot
|
||||
FECHA REALIZACION : Mayo 28, 1993
|
||||
-------------------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
|
||||
DEFINE mes SMALLINT,
|
||||
ano CHAR(4)
|
||||
DEFINE cod_cia SMALLINT
|
||||
FUNCTION teprrp004()
|
||||
|
||||
DEFINE vendedor RECORD
|
||||
recibo INTEGER,
|
||||
cod_vend SMALLINT,
|
||||
sec_vend SMALLINT,
|
||||
fecha_recibo DATE,
|
||||
fecha_factura DATE,
|
||||
factura INTEGER,
|
||||
monto DECIMAL(12,2),
|
||||
porc_venta DECIMAL(10,4),
|
||||
nombre_vend CHAR(30),
|
||||
apellido_vend CHAR(30) ,
|
||||
vende CHAR(6)
|
||||
END RECORD
|
||||
|
||||
#WHENEVER ERROR CONTINUE
|
||||
|
||||
OPTIONS
|
||||
FORM LINE 8,
|
||||
ERROR LINE 23,
|
||||
COMMENT LINE 21
|
||||
|
||||
OPEN FORM tefmrp004 FROM "tefmrp004"
|
||||
DISPLAY FORM tefmrp004
|
||||
CALL pantalla()
|
||||
DISPLAY "teprrp004" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY " Comision por Cobros " AT 6,29 ATTRIBUTE(BLACK)
|
||||
|
||||
LET tipo_papel = 1
|
||||
CALL msgrp000(tipo_papel)
|
||||
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
||||
|
||||
INPUT BY NAME cod_cia,mes,ano
|
||||
|
||||
CONSTRUCT criterio ON e.cod_emp , e.cod_emp_sec
|
||||
FROM cod_vend, sec_vend
|
||||
ON KEY(CONTROL-P)
|
||||
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
||||
AFTER CONSTRUCT
|
||||
EXIT CONSTRUCT
|
||||
END CONSTRUCT
|
||||
LET parametro = "D"
|
||||
CALL elijeimpresion(parametro) RETURNING orden,destino,letras.*
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
START REPORT cobros TO archivo
|
||||
|
||||
DISPLAY " " AT 19,14
|
||||
DISPLAY "<< Buscando Las Informaciones... Espere Por Favor >>" AT 19,14
|
||||
|
||||
LET selec =
|
||||
"SELECT e.num_doc,e.cod_emp,e.cod_emp_sec,e.fecha_orig,a.fecha_factura, ",
|
||||
" a.factura,e.valor ",
|
||||
"FROM vetb00002 a, prdtable c,cctb00001 e ",
|
||||
"WHERE e.fecha_orig between c.fecha_inicio and c.fecha_corte and ",
|
||||
" a.factura = e.aplica_a and e.tipo_doc = 'PG' and ",
|
||||
" c.mes = ? and a.cod_cia = ? and ",criterio clipped,
|
||||
" and a.ventas = '1' and a.status_t is null and c.ano = ? "
|
||||
|
||||
PREPARE b_vende FROM selec
|
||||
DECLARE c_vende CURSOR FOR b_vende
|
||||
OPEN c_vende USING mes,cod_cia,ano
|
||||
|
||||
DISPLAY " " AT 19,14
|
||||
DISPLAY "<< Reporte Generandose... Espere Por Favor >>" AT 19,14
|
||||
|
||||
WHILE STATUS != NOTFOUND
|
||||
FETCH c_vende INTO vendedor.*
|
||||
IF status = notfound THEN
|
||||
EXIT WHILE
|
||||
END IF
|
||||
|
||||
IF cod_cia = 1 THEN
|
||||
SELECT max(a.porc_cobros) INTO vendedor.porc_venta FROM vetb00011 a
|
||||
WHERE a.cod_n = 3 and a.sec_vend = vendedor.sec_vend and a.status_t is null
|
||||
ELSE
|
||||
SELECT unique max(a.porc_cobros) INTO vendedor.porc_venta FROM vetb00011 a
|
||||
WHERE a.cod_n = 6 and a.sec_vend = vendedor.sec_vend and a.status_t is null
|
||||
|
||||
LET vendedor.porc_venta = vendedor.porc_venta / 100
|
||||
END IF
|
||||
|
||||
SELECT nom1_emp,apell1_emp INTO vendedor.nombre_vend,vendedor.apellido_vend
|
||||
FROM adtb00003
|
||||
WHERE num_emp = vendedor.sec_vend
|
||||
|
||||
IF vendedor.porc_venta IS NULL THEN
|
||||
LET vendedor.porc_venta = 0
|
||||
END IF
|
||||
|
||||
LET vendedor.vende = vendedor.cod_vend using "&&",
|
||||
vendedor.sec_vend using "&&&&"
|
||||
|
||||
OUTPUT TO REPORT cobros (vendedor.*)
|
||||
END WHILE
|
||||
|
||||
FINISH REPORT cobros
|
||||
#RUN imprime
|
||||
CALL fdestino(destino,archivo,imprime)
|
||||
CLEAR SCREEN
|
||||
END FUNCTION
|
||||
|
||||
REPORT cobros(x)
|
||||
DEFINE x RECORD
|
||||
recibo INTEGER,
|
||||
cod_vend SMALLINT,
|
||||
sec_vend SMALLINT,
|
||||
fecha_recibo DATE,
|
||||
fecha_factura DATE,
|
||||
factura INTEGER,
|
||||
monto DECIMAL(12,2),
|
||||
porc_venta DECIMAL(10,4),
|
||||
nombre_vend CHAR(30),
|
||||
apellido_vend CHAR(30) ,
|
||||
vende CHAR(6)
|
||||
END RECORD
|
||||
|
||||
DEFINE primera CHAR(1)
|
||||
DEFINE nombre_mes CHAR(10)
|
||||
DEFINE total_clientes INTEGER
|
||||
DEFINE hora CHAR(5)
|
||||
DEFINE i SMALLINT
|
||||
DEFINE porc,total_gen,total_vend,valor_pagar DECIMAL(12,2),
|
||||
fecha1,fecha2 DATE
|
||||
|
||||
OUTPUT
|
||||
TOP MARGIN 0
|
||||
LEFT MARGIN 0
|
||||
BOTTOM MARGIN 4
|
||||
|
||||
ORDER BY x.vende,x.recibo
|
||||
|
||||
FORMAT
|
||||
PAGE HEADER
|
||||
LET hora = time
|
||||
CALL meses()
|
||||
LET nombre_mes = mes1[mes]
|
||||
|
||||
PRINT COLUMN 1, letras.doce, letras.negrillas_on
|
||||
PRINT COLUMN 1, "teprrp004",
|
||||
COLUMN 27, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
||||
COLUMN 92, "Pag. ",pageno using "###"
|
||||
PRINT COLUMN 40, "Sistema de Tesoreria ",
|
||||
COLUMN 92, today using "dd/mm/yyyy"
|
||||
PRINT COLUMN 34, " Relacion comision por Cobros ",
|
||||
COLUMN 95, hora, letras.negrillas_off
|
||||
|
||||
PRINT COLUMN 40, letras.doble_on,nombre_mes,letras.doble_off
|
||||
|
||||
SELECT a.fecha_inicio,a.fecha_corte
|
||||
INTO fecha1,fecha2
|
||||
FROM prdtable a
|
||||
WHERE a.ano = ano
|
||||
AND a.mes = mes
|
||||
|
||||
SKIP 1 LINES
|
||||
IF cod_cia = 1 THEN
|
||||
PRINT COLUMN 1, "Rayovac Domincana",
|
||||
" Desde : ",fecha1 USING "dd/mm/yyyy",
|
||||
" Hasta : ",fecha2 USING "dd/mm/yyyy"
|
||||
ELSE
|
||||
PRINT COLUMN 1, "Distribuidora Dominicana de Pilas",
|
||||
" Desde : ",fecha1 USING "dd/mm/yyyy",
|
||||
" Hasta : ",fecha2 USING "dd/mm/yyyy"
|
||||
END IF
|
||||
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"--------------------"
|
||||
PRINT COLUMN 87, "COMISION"
|
||||
|
||||
PRINT COLUMN 2, "RECIBO",
|
||||
COLUMN 10, "FECHA",
|
||||
COLUMN 20, "APLICACION",
|
||||
COLUMN 66, "MONTO",
|
||||
COLUMN 75, "COMISION",
|
||||
COLUMN 87, "A PAGAR"
|
||||
|
||||
PRINT COLUMN 1,
|
||||
"--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"--------------------"
|
||||
|
||||
IF total_gen is null THEN
|
||||
LET total_gen = 0
|
||||
END IF
|
||||
SKIP 1 LINE
|
||||
BEFORE GROUP OF x.vende
|
||||
LET total_vend = 0
|
||||
PRINT COLUMN 1,letras.doble_on,"VENDEDOR : ",
|
||||
x.nombre_vend clipped," ",
|
||||
x.apellido_vend clipped, letras.doble_off
|
||||
SKIP 1 LINE
|
||||
|
||||
ON EVERY ROW
|
||||
LET valor_pagar = x.monto * x.porc_venta
|
||||
LET porc = x.porc_venta
|
||||
PRINT COLUMN 1, x.recibo using "&&&&&&",
|
||||
COLUMN 9, x.fecha_factura using "dd/mm/yyyy",
|
||||
COLUMN 20, x.factura using "&&&&&&",
|
||||
COLUMN 62, x.monto using "##,###,###.##",
|
||||
COLUMN 75, x.porc_venta using "###.####",
|
||||
COLUMN 85, valor_pagar using "###,###.##"
|
||||
|
||||
|
||||
LET total_vend = valor_pagar + total_vend
|
||||
|
||||
AFTER GROUP OF x.vende
|
||||
PRINT COLUMN 87, "----------"
|
||||
PRINT COLUMN 50, "Total A Pagar: ",
|
||||
COLUMN 87, total_vend using "###,###.##"
|
||||
LET total_gen = total_gen + total_vend
|
||||
LET total_vend = 0
|
||||
SKIP TO TOP OF PAGE
|
||||
END REPORT
|
||||
@@ -0,0 +1,292 @@
|
||||
{
|
||||
-------------------------------------------------------------------------------
|
||||
PROGRAMA : CCPRRP005
|
||||
OBJETIVO : Liquidacion Comision Por Cobros Plan Ranchero
|
||||
PROGRAMADOR : Juan Fco. Soto
|
||||
FECHA REALIZACION : Abril 06, 1995
|
||||
-------------------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS
|
||||
"teprgb000.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 teprrp005()
|
||||
#DEFINE imprime CHAR(1)
|
||||
|
||||
DEFINE vendedor RECORD
|
||||
cod_vend SMALLINT,
|
||||
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 tefmrp005 FROM "tefmrp005"
|
||||
DISPLAY FORM tefmrp005
|
||||
#CALL pantalla()
|
||||
DISPLAY "teprrp005" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Liquidacion Comision Por Cobro Plan Ranchero" AT 6,17 ATTRIBUTE(BLACK)
|
||||
|
||||
LET tipo_papel = 1
|
||||
CALL msgrp000(tipo_papel)
|
||||
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
||||
|
||||
INPUT BY NAME cod_cia,p_datos.*
|
||||
ON KEY(CONTROL-P)
|
||||
CALL busca_printer() RETURNING imprime,letras.*,archivo
|
||||
AFTER INPUT
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
|
||||
LET parametro = "D"
|
||||
CALL elijeimpresion(parametro) RETURNING orden,destino,letras.*
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
START REPORT reporte_5 TO 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,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 > "01011994")
|
||||
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
|
||||
|
||||
DISPLAY " "
|
||||
AT 19,14
|
||||
|
||||
DISPLAY "<< Reporte Generandose... Espere Por Favor >>"
|
||||
AT 19,14
|
||||
|
||||
FOREACH c_vende INTO vendedor.*,porciento,p_itbi,p_neto
|
||||
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_5 (vendedor.*,porc_rep,p_neto)
|
||||
|
||||
END FOREACH
|
||||
|
||||
FINISH REPORT reporte_5
|
||||
#RUN imprime
|
||||
CALL fdestino(destino,archivo,imprime)
|
||||
CLEAR SCREEN
|
||||
END FUNCTION
|
||||
|
||||
REPORT reporte_5(x,porc,p_neto1)
|
||||
DEFINE x RECORD
|
||||
cod_vend SMALLINT,
|
||||
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 doce CHAR(6)
|
||||
|
||||
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 hora = time
|
||||
|
||||
PRINT COLUMN 1, letras.doce, letras.negrillas_on
|
||||
PRINT COLUMN 1, "teprrp005",
|
||||
COLUMN 55, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
||||
COLUMN 148, "Pag. ",pageno using "###"
|
||||
PRINT COLUMN 55, " Sistema de Tesoreria",
|
||||
COLUMN 148, today using "dd/mm/yyyy"
|
||||
PRINT COLUMN 55, " Liquidacion Comision Por Cobro Plan Ranchero",
|
||||
COLUMN 151, hora
|
||||
PRINT COLUMN 1, letras.negrillas_off
|
||||
|
||||
IF cod_cia = 1 THEN
|
||||
PRINT COLUMN 1, "Rayovac Dominicana"
|
||||
ELSE
|
||||
PRINT COLUMN 1, "Distribuidora Dominicana de Pilas"
|
||||
END IF
|
||||
|
||||
PRINT COLUMN 1, "Del ",p_datos.fecha_in using "dd/mm/yyyy"," Al ",
|
||||
p_datos.fecha_fin using "dd/mm/yyyy"
|
||||
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------" ,
|
||||
"------------------------------------------------------"
|
||||
|
||||
PRINT COLUMN 20, "VALOR",
|
||||
COLUMN 80, "PORC.",
|
||||
COLUMN 92, "VALOR",
|
||||
COLUMN 101, "NUMERO",
|
||||
COLUMN 126, "VALOR",
|
||||
COLUMN 135, " 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 135, "REPRESENTA",
|
||||
COLUMN 148, "COMISION"
|
||||
|
||||
PRINT COLUMN 1,
|
||||
"--------------------------------------------------",
|
||||
"--------------------------------------------------" ,
|
||||
"------------------------------------------------------"
|
||||
|
||||
SKIP 1 LINE
|
||||
BEFORE GROUP OF x.vendedor
|
||||
LET t_valor = 0
|
||||
LET t_valor1 = 0
|
||||
PRINT COLUMN 1,letras.doble_on,"VENDEDOR : ",
|
||||
x.nombre_vend clipped," ",
|
||||
x.apellido_vend clipped, letras.doble_off
|
||||
SKIP 1 LINE
|
||||
BEFORE GROUP OF x.factura
|
||||
|
||||
PRINT COLUMN 1, x.fecha_factura using "dd/mm/yyyy",
|
||||
COLUMN 12, 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/yyyy",
|
||||
COLUMN 120, x.valor_c using "##,###,###.##",
|
||||
COLUMN 134, valor USING "##,###.##",
|
||||
COLUMN 146, 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,letras.negrillas_on
|
||||
|
||||
PRINT COLUMN 10, "TOTAL VENDEDOR --> ",
|
||||
COLUMN 87, GROUP SUM(x.precio) USING "###,###,###.##",
|
||||
COLUMN 130, t_valor1 USING "##,###,###.##",
|
||||
COLUMN 146, t_valor USING "##,###,###.##"
|
||||
|
||||
PRINT COLUMN 1,letras.negrillas_off
|
||||
END REPORT
|
||||
@@ -0,0 +1,180 @@
|
||||
{
|
||||
-------------------------------------------------------------------------------
|
||||
PROGRAMA : TEPRRP006
|
||||
OBJETIVO : COMISION CKS. DEVUELTOS
|
||||
PROGRAMADOR : Tadeo A. Ferreras F.
|
||||
FECHA REALIZACION : Junio 7, 1995
|
||||
-------------------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "teprgb000.4gl"
|
||||
DEFINE datos_k RECORD
|
||||
cod_cia LIKE vetb00002.cod_cia,
|
||||
factura LIKE vetb00002.factura,
|
||||
monto LIKE vetb00002.neto,
|
||||
numero LIKE cctb00001.num_doc,
|
||||
sec_vend LIKE cctb00001.cod_emp_sec,
|
||||
tipo_cliente LIKE cctb00001.tipo_cliente,
|
||||
sec_cliente LIKE cctb00001.sec_cliente,
|
||||
valor LIKE cctb00001.valor
|
||||
END RECORD
|
||||
|
||||
FUNCTION teprrp006()
|
||||
DEFINE p_cia,p_vende SMALLINT
|
||||
OPTIONS
|
||||
FORM LINE 8,
|
||||
ERROR LINE 24
|
||||
|
||||
OPEN FORM tefmrp006 FROM "tefmrp006"
|
||||
DISPLAY FORM tefmrp006
|
||||
|
||||
LET tipo_papel = 1
|
||||
CALL msgrp000(tipo_papel)
|
||||
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
||||
|
||||
INPUT BY NAME rango.*
|
||||
ON KEY(CONTROL-P)
|
||||
|
||||
CALL busca_printer() RETURNING imprime,letras.*,archivo
|
||||
|
||||
AFTER FIELD fech_fi
|
||||
IF rango.fech_fi <= rango.fech_in THEN
|
||||
LET numero_msg = 51
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fech_in
|
||||
END IF
|
||||
AFTER INPUT
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
LET parametro = "D"
|
||||
CALL elijeimpresion(parametro) RETURNING orden,destino,letras.*
|
||||
|
||||
DISPLAY "<<< Buscando Informacion... Espere Por Favor" AT 19,14
|
||||
|
||||
START REPORT ckdevuelve TO archivo
|
||||
|
||||
# Busca los cheques devueltos de cuentas por cobrar
|
||||
DECLARE busca CURSOR FOR
|
||||
SELECT UNIQUE b.cod_cia,b.factura,b.neto,a.num_doc,a.cod_emp_sec,
|
||||
a.tipo_cliente,a.sec_cliente,a.valor
|
||||
FROM cctb00001 a,vetb00002 b
|
||||
WHERE (a.cod_emp_sec = a.cod_emp_sec and
|
||||
a.fecha_orig between rango.fech_in and rango.fech_fi and
|
||||
a.tipo_doc = "ND" and a.valor_cheque is not null) and
|
||||
(a.aplica_a = b.factura) and a.status_t is null
|
||||
ORDER BY 5,4,2
|
||||
|
||||
FOREACH busca INTO datos_k.*
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
FINISH REPORT ckdevuelve
|
||||
END IF
|
||||
|
||||
LET p_cia = datos_k.cod_cia
|
||||
LET p_vende = datos_k.sec_vend
|
||||
OUTPUT TO REPORT ckdevuelve(p_cia,p_vende)
|
||||
END FOREACH
|
||||
|
||||
FINISH REPORT ckdevuelve
|
||||
#RUN imprime
|
||||
CALL fdestino(destino,archivo,imprime)
|
||||
END FUNCTION
|
||||
|
||||
REPORT ckdevuelve(cia,vende)
|
||||
|
||||
DEFINE cia,vende SMALLINT,
|
||||
porc_dev DECIMAL(10,4),
|
||||
nomb1,nomb2 CHAR(20),
|
||||
nombre_cliente CHAR(30),
|
||||
t_porc DECIMAL(10,2),
|
||||
doce CHAR(3)
|
||||
|
||||
OUTPUT
|
||||
TOP MARGIN 0
|
||||
LEFT MARGIN 0
|
||||
|
||||
FORMAT
|
||||
|
||||
PAGE HEADER
|
||||
LET doce = ASCII 30
|
||||
PRINT COLUMN 1, letras.doce
|
||||
PRINT COLUMN 1, "teprrp006",
|
||||
COLUMN 27, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
||||
COLUMN 94, "Pag. ",pageno using "###"
|
||||
PRINT COLUMN 27, " Sistema de Tesoreria ",
|
||||
COLUMN 94, today using "dd/mm/yyyy"
|
||||
PRINT COLUMN 27, " Comision Cheques Devueltos",
|
||||
COLUMN 94, time
|
||||
SKIP 1 LINES
|
||||
PRINT "Rango: Del ",rango.fech_in USING "dd/mm/yyyy",
|
||||
" Al ",rango.fech_fi USING "dd/mm/yyyy"
|
||||
PRINT "--------------------------------------------------------",
|
||||
"---------------------------------------------"
|
||||
SKIP 1 LINES
|
||||
|
||||
BEFORE GROUP OF vende
|
||||
SELECT nom1_emp,apell1_emp INTO nomb1,nomb2 FROM adtb00003
|
||||
WHERE num_emp = vende
|
||||
|
||||
PRINT COLUMN 1, "VENDEDOR: ",vende using "&&&"," ",
|
||||
nomb1 clipped," ",nomb2
|
||||
SKIP 1 LINE
|
||||
PRINT COLUMN 80, "VALOR"
|
||||
|
||||
PRINT COLUMN 1, "DOCUMENTO",
|
||||
COLUMN 15,"CLIENTE",
|
||||
COLUMN 54, "FACTURA",
|
||||
COLUMN 68, "MONTO",
|
||||
COLUMN 80,"S/ITBI",
|
||||
COLUMN 92, "%",
|
||||
COLUMN 94,"COMISION"
|
||||
SKIP 1 LINE
|
||||
ON EVERY ROW
|
||||
|
||||
IF cia = 1 THEN
|
||||
SELECT unique a.porc_cobros INTO porc_dev FROM vetb00011 a
|
||||
WHERE a.sec_vend = datos_k.sec_vend and a.cod_n = 3 and
|
||||
a.status_t is null
|
||||
ELSE
|
||||
SELECT unique a.porc_cobros INTO porc_dev FROM vetb00011 a
|
||||
WHERE a.sec_vend = datos_k.sec_vend and a.cod_n in (6,9) and
|
||||
a.status_t is null
|
||||
END IF
|
||||
|
||||
SELECT nombre INTO nombre_cliente FROM vetb00004
|
||||
WHERE tipo_cliente = datos_k.tipo_cliente and
|
||||
sec_cliente = datos_k.sec_cliente
|
||||
|
||||
|
||||
PRINT COLUMN 1, datos_k.numero using "&&&&&&",
|
||||
COLUMN 15, datos_k.tipo_cliente using "&&","-",
|
||||
datos_k.sec_cliente using "&&&&"," ",
|
||||
nombre_cliente,
|
||||
COLUMN 54, datos_k.factura using "&&&&&&",
|
||||
COLUMN 63, datos_k.valor using "###,###.##",
|
||||
COLUMN 73, datos_k.valor/1.08 using "##,###,###.##",
|
||||
COLUMN 88, porc_dev using "##.####",
|
||||
COLUMN 96, (datos_k.valor/1.08) * porc_dev using "###.##"
|
||||
|
||||
IF t_porc is null THEN
|
||||
LET t_porc = 0
|
||||
END IF
|
||||
LET t_porc = t_porc + ((datos_k.valor/1.08) * porc_dev)
|
||||
AFTER GROUP OF vende
|
||||
PRINT COLUMN 73, "-------------",
|
||||
COLUMN 94, "--------"
|
||||
|
||||
PRINT COLUMN 15, "TOTAL VENDEDOR: ",
|
||||
COLUMN 73, GROUP SUM(datos_k.valor/1.08) using "##,###,###.##",
|
||||
COLUMN 93, t_porc using "##,###.##"
|
||||
LET t_porc = 0
|
||||
PRINT "--------------------------------------------------------",
|
||||
"---------------------------------------------"
|
||||
END REPORT
|
||||
@@ -0,0 +1,357 @@
|
||||
{
|
||||
==============================================================================
|
||||
PROGRAMA : TEPRRP007
|
||||
SISTEMA : Sistema de Tesoreria
|
||||
Objetivo : Relacion de Cheque Emitidos
|
||||
PROGRAMADOR : Tadeo A. Ferreras
|
||||
FECHA : Diciembre 05, 1995
|
||||
==============================================================================
|
||||
}
|
||||
GLOBALS
|
||||
"teprgb000.4gl"
|
||||
|
||||
DEFINE datos_7 RECORD
|
||||
cuenta_no CHAR(8),
|
||||
cheque_no INTEGER,
|
||||
fecha DATE,
|
||||
portador CHAR(30),
|
||||
monto DECIMAL(12,2),
|
||||
status_t CHAR(1),
|
||||
codigo INTEGER,
|
||||
descripcion CHAR(30)
|
||||
|
||||
END RECORD
|
||||
DEFINE fecha_inicial,fecha_final DATE
|
||||
DEFINE tasa DECIMAL(7,3)
|
||||
DEFINE salir CHAR(1)
|
||||
|
||||
FUNCTION teprrp007()
|
||||
LET int_flag = FALSE
|
||||
|
||||
OPTIONS
|
||||
FORM LINE 8
|
||||
|
||||
OPEN FORM tefmrp007 FROM "tefmrp007"
|
||||
DISPLAY FORM tefmrp007
|
||||
DISPLAY "teprrp007" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Relacion de Cheques Emitidos" AT 6,26 ATTRIBUTE(BLACK)
|
||||
|
||||
LET tipo_papel = 1
|
||||
CALL msgrp000(tipo_papel)
|
||||
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
||||
|
||||
INPUT BY NAME fecha_inicial,fecha_final,tasa
|
||||
ON KEY(CONTROL-P)
|
||||
CALL busca_printer() RETURNING imprime,letras.*,archivo
|
||||
|
||||
AFTER FIELD fecha_inicial
|
||||
IF fecha_inicial IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_inicial
|
||||
END IF
|
||||
|
||||
AFTER FIELD fecha_final
|
||||
IF fecha_final IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_final
|
||||
END IF
|
||||
|
||||
IF fecha_inicial > fecha_final THEN
|
||||
LET numero_msg = 51
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_inicial
|
||||
END IF
|
||||
END INPUT
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
CONSTRUCT criterio ON a.cuenta_no,a.cheque_no FROM cuenta_no,cheque_no
|
||||
ON KEY(CONTROL-P)
|
||||
CALL busca_printer() RETURNING imprime,letras.*,archivo
|
||||
AFTER CONSTRUCT
|
||||
EXIT CONSTRUCT
|
||||
END CONSTRUCT
|
||||
{
|
||||
LET parametro = "D"
|
||||
CALL elijeimpresion(parametro) RETURNING orden,destino,letras.*
|
||||
}
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET selec =
|
||||
"SELECT UNIQUE a.cuenta_no,a.cheque_no,a.fecha,a.portador,a.monto, ",
|
||||
" a.status_t ",
|
||||
# " a.status_t,b.codigo,c.descripcion ",
|
||||
# "FROM cgtb00005 a, tetb00006 b, tetb00003 c ",
|
||||
"FROM cgtb00005 a, tetb00006 b ",
|
||||
"WHERE ",criterio CLIPPED," AND (a.fecha BETWEEN ? AND ?) AND ",
|
||||
" a.cuenta_no = b.banco AND ",
|
||||
" a.cheque_no = b.cheque_no ",
|
||||
# " a.cheque_no = b.cheque_no AND ",
|
||||
# " b.codigo = c.codigo ",
|
||||
"ORDER BY 1,2"
|
||||
|
||||
DISPLAY "<<<Buscando Informacion... Espere por Favor>>>" AT 19,14
|
||||
ATTRIBUTE(YELLOW)
|
||||
|
||||
PREPARE comando FROM selec
|
||||
DECLARE busco CURSOR FOR comando
|
||||
OPEN busco USING fecha_inicial,fecha_final
|
||||
|
||||
START REPORT cheque_e TO archivo
|
||||
CALL defecto(impresor) RETURNING imprime1,letras.*,archivo
|
||||
|
||||
START REPORT cheque_e2 TO archivo #"lptmp"
|
||||
DISPLAY "<<<Reporte Generandose... Espere por Favor>>>" AT 19,14
|
||||
ATTRIBUTE(YELLOW)
|
||||
|
||||
LET salir = "N"
|
||||
WHILE salir != "S"
|
||||
FETCH busco INTO datos_7.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET salir = "S"
|
||||
EXIT WHILE
|
||||
END IF
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET datos_7.codigo = 0
|
||||
LET datos_7.descripcion = " "
|
||||
|
||||
SELECT c.codigo, c.descripcion INTO
|
||||
datos_7.codigo, datos_7.descripcion
|
||||
FROM tetb00003 c, tetb00006 d
|
||||
WHERE c.codigo = d.codigo AND
|
||||
d.banco = datos_7.cuenta_no AND
|
||||
d.cheque_no = datos_7.cheque_no AND
|
||||
c.status_t IS NULL AND
|
||||
d.status_t IS NULL
|
||||
|
||||
DISPLAY datos_7.cuenta_no AT 21,30
|
||||
DISPLAY datos_7.cheque_no AT 21,40
|
||||
|
||||
IF datos_7.status_t = "N" THEN
|
||||
LET datos_7.monto = 0
|
||||
LET datos_7.portador = "NULO"
|
||||
END IF
|
||||
|
||||
IF datos_7.cuenta_no = 1113 THEN
|
||||
LET datos_7.monto = datos_7.monto * tasa
|
||||
END IF
|
||||
|
||||
OUTPUT TO REPORT cheque_e(datos_7.*)
|
||||
OUTPUT TO REPORT cheque_e2(datos_7.*)
|
||||
END WHILE
|
||||
FINISH REPORT cheque_e
|
||||
RUN imprime
|
||||
|
||||
FINISH REPORT cheque_e2
|
||||
RUN imprime1
|
||||
#CALL fdestino(destino,archivo,imprime)
|
||||
#RUN "type lptmp > \\ROVDOM2\contabi"
|
||||
#RUN "copy lptmp > \\ROVDOM2\contabi"
|
||||
CLEAR SCREEN
|
||||
END FUNCTION
|
||||
|
||||
REPORT cheque_e(x)
|
||||
DEFINE x RECORD
|
||||
cuenta_no CHAR(8),
|
||||
cheque_no INTEGER,
|
||||
fecha DATE,
|
||||
portador CHAR(30),
|
||||
monto DECIMAL(12,2),
|
||||
status_t CHAR(1),
|
||||
codigo INTEGER,
|
||||
descripcion CHAR(30)
|
||||
END RECORD
|
||||
|
||||
## DEFINICION DE LAS VARIABLES DE IMPRESION
|
||||
DEFINE numero_ch CHAR(9),
|
||||
descripcion CHAR(30),
|
||||
detalle1 CHAR(40),
|
||||
detalle2 CHAR(37)
|
||||
|
||||
DEFINE hora CHAR(5)
|
||||
|
||||
OUTPUT
|
||||
## DEFINICION DE LOS MARGENES DE IMPRESION
|
||||
TOP MARGIN 0
|
||||
LEFT MARGIN 0
|
||||
BOTTOM MARGIN 3
|
||||
|
||||
FORMAT
|
||||
PAGE HEADER
|
||||
|
||||
LET hora = time
|
||||
## AQUI SE INDICA LA IMPRESION DE LOS ENCABEZADOS
|
||||
PRINT COLUMN 1, letras.negrillas_on,letras.doce,letras.comp_on
|
||||
PRINT COLUMN 1, "teprrp007",
|
||||
COLUMN 48, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
||||
COLUMN 135, "Pag. ",pageno using "###"
|
||||
PRINT COLUMN 48, " Sistema de Tesoreria",
|
||||
COLUMN 135, today using "dd/mm/yyyy"
|
||||
PRINT COLUMN 48, " Relacion Cheques Emitidos",
|
||||
COLUMN 138, hora
|
||||
SKIP 1 LINE
|
||||
PRINT COLUMN 1, "FECHA: Del ",fecha_inicial USING "dd/mm/yyyy",
|
||||
" Al ",fecha_final USING "dd/mm/yyyy"
|
||||
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"------------------------------------------"
|
||||
|
||||
PRINT COLUMN 1, "Cheque",
|
||||
COLUMN 8, "Fecha",
|
||||
COLUMN 17, "Beneficiario",
|
||||
COLUMN 48, "Concepto",
|
||||
COLUMN 125, "Part",
|
||||
COLUMN 138, "Valor"
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"------------------------------------------"
|
||||
|
||||
PRINT letras.negrillas_off
|
||||
## AQUI SE INDICA LA IMPRESION DEL DETALLE
|
||||
BEFORE GROUP OF x.cuenta_no
|
||||
|
||||
SELECT a.descripcion INTO descripcion FROM cgtb00001 a
|
||||
WHERE a.cuenta_no = x.cuenta_no
|
||||
|
||||
PRINT COLUMN 1, letras.negrillas_on
|
||||
PRINT COLUMN 1, "Banco: ", x.cuenta_no CLIPPED," ",
|
||||
descripcion CLIPPED," ",letras.negrillas_off;
|
||||
|
||||
IF x.cuenta_no = 1103 THEN
|
||||
PRINT " ( Tasa US$ : ",tasa USING "##.####"," )"
|
||||
ELSE
|
||||
PRINT " "
|
||||
END IF
|
||||
|
||||
BEFORE GROUP OF x.cheque_no
|
||||
|
||||
LET numero_ch = NULL
|
||||
LET detalle1 = NULL
|
||||
LET detalle2 = NULL
|
||||
IF x.status_t = "N" THEN
|
||||
LET detalle1 = "CHEQUE ANULADO"
|
||||
LET detalle2 = " "
|
||||
ELSE
|
||||
LET numero_ch = NULL
|
||||
LET numero_ch = "CK.",x.cheque_no USING "&&&&&&"
|
||||
SELECT UNIQUE a.detalle_1,a.detalle_2[1,37]
|
||||
INTO detalle1,detalle2
|
||||
FROM cgtb00004 a
|
||||
WHERE a.tipo=2 AND a.cuenta_no=x.cuenta_no AND a.ref = numero_ch
|
||||
AND a.detalles matches x.cuenta_no AND a.status_t IS NULL
|
||||
END IF
|
||||
|
||||
ON EVERY ROW
|
||||
|
||||
PRINT COLUMN 1, x.cheque_no USING "#####","|",
|
||||
x.fecha USING "dd/mm/yyyy","|",
|
||||
COLUMN 17, x.portador,"|",
|
||||
COLUMN 48, detalle1,detalle2,"|",
|
||||
COLUMN 126, x.codigo USING "&&", "|",
|
||||
COLUMN 129, x.monto USING "###,###,###.##"
|
||||
|
||||
AFTER GROUP OF x.cuenta_no
|
||||
PRINT COLUMN 129, "--------------"
|
||||
PRINT COLUMN 1, "Total Cheque(s) --> ", GROUP COUNT(*)
|
||||
USING "<<<,<<<",
|
||||
COLUMN 129, GROUP SUM(x.monto) USING "###,###,###.##"
|
||||
|
||||
ON LAST ROW
|
||||
PRINT COLUMN 129, "--------------"
|
||||
PRINT COLUMN 1, "Total Cheque(s) --> ", COUNT (*) USING "<<<,<<<",
|
||||
COLUMN 129, SUM(x.monto) USING "###,###,###.##"
|
||||
PRINT COLUMN 129, "=============="
|
||||
|
||||
PRINT letras.normal #comp_off
|
||||
END REPORT
|
||||
|
||||
REPORT cheque_e2(x)
|
||||
DEFINE x RECORD
|
||||
cuenta_no CHAR(8),
|
||||
cheque_no INTEGER,
|
||||
fecha DATE,
|
||||
portador CHAR(30),
|
||||
monto DECIMAL(12,2),
|
||||
status_t CHAR(1),
|
||||
codigo INTEGER,
|
||||
descripcion CHAR(30)
|
||||
END RECORD
|
||||
|
||||
## DEFINICION DE LAS VARIABLES DE IMPRESION
|
||||
DEFINE numero_ch CHAR(9),
|
||||
descripcion CHAR(30),
|
||||
detalle1 CHAR(40),
|
||||
detalle2 CHAR(37)
|
||||
|
||||
DEFINE hora CHAR(5)
|
||||
|
||||
OUTPUT
|
||||
## DEFINICION DE LOS MARGENES DE IMPRESION
|
||||
TOP MARGIN 0
|
||||
LEFT MARGIN 0
|
||||
BOTTOM MARGIN 3
|
||||
|
||||
ORDER BY x.codigo
|
||||
|
||||
FORMAT
|
||||
PAGE HEADER
|
||||
|
||||
LET hora = time
|
||||
## AQUI SE INDICA LA IMPRESION DE LOS ENCABEZADOS
|
||||
PRINT COLUMN 1, letras.negrillas_on,letras.doce,letras.comp_on
|
||||
PRINT COLUMN 1, "teprrp007",
|
||||
COLUMN 48, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
||||
COLUMN 135, "Pag. ",pageno using "###"
|
||||
PRINT COLUMN 48, " Sistema de Tesoreria",
|
||||
COLUMN 135, today using "dd/mm/yyyy"
|
||||
PRINT COLUMN 50, "Resumen por Partidas de Cheques Emitidos",
|
||||
COLUMN 138, hora
|
||||
SKIP 1 LINE
|
||||
PRINT COLUMN 1, "FECHA: Del ",fecha_inicial USING "dd/mm/yyyy",
|
||||
" Al ",fecha_final USING "dd/mm/yyyy"
|
||||
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"------------------------------------------"
|
||||
|
||||
PRINT COLUMN 1, "Partida",
|
||||
COLUMN 40, "Valor"
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"------------------------------------------"
|
||||
|
||||
PRINT letras.negrillas_off
|
||||
|
||||
AFTER GROUP OF x.codigo
|
||||
PRINT COLUMN 1, x.codigo USING "&&"," ",
|
||||
x.descripcion,
|
||||
COLUMN 40, GROUP SUM(x.monto) USING "###,###,###.##"
|
||||
|
||||
ON LAST ROW
|
||||
PRINT COLUMN 39, "----------------"
|
||||
PRINT COLUMN 1, " Total General ",
|
||||
COLUMN 40, SUM(x.monto) USING "###,###,###.##"
|
||||
PRINT COLUMN 39, "================"
|
||||
|
||||
PRINT letras.normal #comp_off
|
||||
END REPORT
|
||||
@@ -0,0 +1,342 @@
|
||||
{
|
||||
==============================================================================
|
||||
PROGRAMA : TEPRRP007
|
||||
SISTEMA : Sistema de Tesoreria
|
||||
Objetivo : Relacion de Cheque Emitidos
|
||||
PROGRAMADOR : Tadeo A. Ferreras
|
||||
FECHA : Diciembre 05, 1995
|
||||
==============================================================================
|
||||
}
|
||||
GLOBALS
|
||||
"teprgb000.4gl"
|
||||
|
||||
DEFINE datos_7 RECORD
|
||||
cuenta_no CHAR(8),
|
||||
cheque_no INTEGER,
|
||||
fecha DATE,
|
||||
portador CHAR(30),
|
||||
monto DECIMAL(12,2),
|
||||
status_t CHAR(1),
|
||||
codigo INTEGER,
|
||||
descripcion CHAR(30)
|
||||
|
||||
END RECORD
|
||||
DEFINE fecha_inicial,fecha_final DATE
|
||||
DEFINE tasa DECIMAL(7,3)
|
||||
DEFINE salir CHAR(1)
|
||||
|
||||
FUNCTION teprrp007()
|
||||
LET int_flag = FALSE
|
||||
|
||||
OPTIONS
|
||||
FORM LINE 8
|
||||
|
||||
OPEN FORM tefmrp007 FROM "tefmrp007"
|
||||
DISPLAY FORM tefmrp007
|
||||
DISPLAY "teprrp007" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Relacion de Cheques Emitidos" AT 6,26 ATTRIBUTE(BLACK)
|
||||
|
||||
LET tipo_papel = 1
|
||||
CALL msgrp000(tipo_papel)
|
||||
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
||||
|
||||
INPUT BY NAME fecha_inicial,fecha_final,tasa
|
||||
ON KEY(CONTROL-P)
|
||||
CALL busca_printer() RETURNING imprime,letras.*,archivo
|
||||
|
||||
AFTER FIELD fecha_inicial
|
||||
IF fecha_inicial IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_inicial
|
||||
END IF
|
||||
|
||||
AFTER FIELD fecha_final
|
||||
IF fecha_final IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_final
|
||||
END IF
|
||||
|
||||
IF fecha_inicial > fecha_final THEN
|
||||
LET numero_msg = 51
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_inicial
|
||||
END IF
|
||||
END INPUT
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
CONSTRUCT criterio ON a.cuenta_no,a.cheque_no FROM cuenta_no,cheque_no
|
||||
ON KEY(CONTROL-P)
|
||||
CALL busca_printer() RETURNING imprime,letras.*,archivo
|
||||
AFTER CONSTRUCT
|
||||
EXIT CONSTRUCT
|
||||
END CONSTRUCT
|
||||
{
|
||||
LET parametro = "D"
|
||||
CALL elijeimpresion(parametro) RETURNING orden,destino,letras.*
|
||||
}
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET selec =
|
||||
"SELECT UNIQUE a.cuenta_no,a.cheque_no,a.fecha,a.portador,a.monto, ",
|
||||
" a.status_t,b.codigo,c.descripcion ",
|
||||
"FROM cgtb00005 a, tetb00006 b, outer tetb00003 c ",
|
||||
"WHERE ",criterio CLIPPED," AND (a.fecha BETWEEN ? AND ?) AND ",
|
||||
" a.cuenta_no = b.banco AND ",
|
||||
" a.cheque_no = b.cheque_no AND ",
|
||||
" b.codigo = c.codigo ",
|
||||
"ORDER BY 1,2"
|
||||
|
||||
DISPLAY "<<<Buscando Informacion... Espere por Favor>>>" AT 19,14
|
||||
ATTRIBUTE(BLUE)
|
||||
|
||||
PREPARE comando FROM selec
|
||||
DECLARE busco CURSOR FOR comando
|
||||
OPEN busco USING fecha_inicial,fecha_final
|
||||
|
||||
START REPORT cheque_e TO archivo
|
||||
CALL defecto(impresor) RETURNING imprime1,letras.*,archivo
|
||||
|
||||
START REPORT cheque_e2 TO archivo
|
||||
DISPLAY "<<<Reporte Generandose... Espere por Favor>>>" AT 19,14
|
||||
ATTRIBUTE(YELLOW)
|
||||
|
||||
LET salir = "N"
|
||||
WHILE salir != "S"
|
||||
FETCH busco INTO datos_7.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET salir = "S"
|
||||
EXIT WHILE
|
||||
END IF
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
DISPLAY datos_7.cuenta_no AT 21,30
|
||||
DISPLAY datos_7.cheque_no AT 21,40
|
||||
|
||||
IF datos_7.status_t = "N" THEN
|
||||
LET datos_7.monto = 0
|
||||
LET datos_7.portador = "NULO"
|
||||
END IF
|
||||
|
||||
IF datos_7.cuenta_no = 1113 THEN
|
||||
LET datos_7.monto = datos_7.monto * tasa
|
||||
END IF
|
||||
|
||||
OUTPUT TO REPORT cheque_e(datos_7.*)
|
||||
OUTPUT TO REPORT cheque_e2(datos_7.*)
|
||||
END WHILE
|
||||
FINISH REPORT cheque_e
|
||||
RUN imprime
|
||||
|
||||
FINISH REPORT cheque_e2
|
||||
RUN imprime1
|
||||
#CALL fdestino(destino,archivo,imprime)
|
||||
#RUN "type lptmp > \\ROVDOM2\contabi"
|
||||
#RUN "copy lptmp > \\ROVDOM2\contabi"
|
||||
CLEAR SCREEN
|
||||
END FUNCTION
|
||||
|
||||
REPORT cheque_e(x)
|
||||
DEFINE x RECORD
|
||||
cuenta_no CHAR(8),
|
||||
cheque_no INTEGER,
|
||||
fecha DATE,
|
||||
portador CHAR(30),
|
||||
monto DECIMAL(12,2),
|
||||
status_t CHAR(1),
|
||||
codigo INTEGER,
|
||||
descripcion CHAR(30)
|
||||
END RECORD
|
||||
|
||||
## DEFINICION DE LAS VARIABLES DE IMPRESION
|
||||
DEFINE numero_ch CHAR(9),
|
||||
descripcion CHAR(30),
|
||||
detalle1 CHAR(40),
|
||||
detalle2 CHAR(37)
|
||||
|
||||
DEFINE hora CHAR(5)
|
||||
|
||||
OUTPUT
|
||||
## DEFINICION DE LOS MARGENES DE IMPRESION
|
||||
TOP MARGIN 0
|
||||
LEFT MARGIN 0
|
||||
BOTTOM MARGIN 3
|
||||
|
||||
FORMAT
|
||||
PAGE HEADER
|
||||
|
||||
LET hora = time
|
||||
## AQUI SE INDICA LA IMPRESION DE LOS ENCABEZADOS
|
||||
PRINT COLUMN 1, letras.negrillas_on,letras.doce,letras.comp_on
|
||||
PRINT COLUMN 1, "teprrp007",
|
||||
COLUMN 48, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
||||
COLUMN 135, "Pag. ",pageno using "###"
|
||||
PRINT COLUMN 48, " Sistema de Tesoreria",
|
||||
COLUMN 135, today using "dd/mm/yyyy"
|
||||
PRINT COLUMN 48, " Relacion Cheques Emitidos",
|
||||
COLUMN 138, hora
|
||||
SKIP 1 LINE
|
||||
PRINT COLUMN 1, "FECHA: Del ",fecha_inicial USING "dd/mm/yyyy",
|
||||
" Al ",fecha_final USING "dd/mm/yyyy"
|
||||
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"------------------------------------------"
|
||||
|
||||
PRINT COLUMN 1, "Cheque",
|
||||
COLUMN 8, "Fecha",
|
||||
COLUMN 17, "Beneficiario",
|
||||
COLUMN 48, "Concepto",
|
||||
COLUMN 125, "Part",
|
||||
COLUMN 138, "Valor"
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"------------------------------------------"
|
||||
|
||||
PRINT letras.negrillas_off
|
||||
## AQUI SE INDICA LA IMPRESION DEL DETALLE
|
||||
BEFORE GROUP OF x.cuenta_no
|
||||
|
||||
SELECT a.descripcion INTO descripcion FROM cgtb00001 a
|
||||
WHERE a.cuenta_no = x.cuenta_no
|
||||
|
||||
PRINT COLUMN 1, letras.negrillas_on
|
||||
PRINT COLUMN 1, "Banco: ", x.cuenta_no CLIPPED," ",
|
||||
descripcion CLIPPED," ",letras.negrillas_off;
|
||||
|
||||
IF x.cuenta_no = 1103 THEN
|
||||
PRINT " ( Tasa US$ : ",tasa USING "##.####"," )"
|
||||
ELSE
|
||||
PRINT " "
|
||||
END IF
|
||||
|
||||
BEFORE GROUP OF x.cheque_no
|
||||
|
||||
LET numero_ch = NULL
|
||||
LET detalle1 = NULL
|
||||
LET detalle2 = NULL
|
||||
IF x.status_t = "N" THEN
|
||||
LET detalle1 = "CHEQUE ANULADO"
|
||||
LET detalle2 = " "
|
||||
ELSE
|
||||
LET numero_ch = NULL
|
||||
LET numero_ch = "CK.",x.cheque_no USING "&&&&&&"
|
||||
SELECT UNIQUE a.detalle_1,a.detalle_2[1,37]
|
||||
INTO detalle1,detalle2
|
||||
FROM cgtb00004 a
|
||||
WHERE a.tipo=2 AND a.cuenta_no=x.cuenta_no AND a.ref = numero_ch
|
||||
AND a.detalles matches x.cuenta_no AND a.status_t IS NULL
|
||||
END IF
|
||||
|
||||
ON EVERY ROW
|
||||
|
||||
PRINT COLUMN 1, x.cheque_no USING "#####","|",
|
||||
x.fecha USING "dd/mm/yyyy","|",
|
||||
COLUMN 17, x.portador,"|",
|
||||
COLUMN 48, detalle1,detalle2,"|",
|
||||
COLUMN 126, x.codigo USING "&&", "|",
|
||||
COLUMN 129, x.monto USING "###,###,###.##"
|
||||
|
||||
AFTER GROUP OF x.cuenta_no
|
||||
PRINT COLUMN 129, "--------------"
|
||||
PRINT COLUMN 1, "Total Cheque(s) --> ", GROUP COUNT(*)
|
||||
USING "<<<,<<<",
|
||||
COLUMN 129, GROUP SUM(x.monto) USING "###,###,###.##"
|
||||
|
||||
ON LAST ROW
|
||||
PRINT COLUMN 129, "--------------"
|
||||
PRINT COLUMN 1, "Total Cheque(s) --> ", COUNT (*) USING "<<<,<<<",
|
||||
COLUMN 129, SUM(x.monto) USING "###,###,###.##"
|
||||
PRINT COLUMN 129, "=============="
|
||||
|
||||
PRINT letras.normal #comp_off
|
||||
END REPORT
|
||||
|
||||
REPORT cheque_e2(x)
|
||||
DEFINE x RECORD
|
||||
cuenta_no CHAR(8),
|
||||
cheque_no INTEGER,
|
||||
fecha DATE,
|
||||
portador CHAR(30),
|
||||
monto DECIMAL(12,2),
|
||||
status_t CHAR(1),
|
||||
codigo INTEGER,
|
||||
descripcion CHAR(30)
|
||||
END RECORD
|
||||
|
||||
## DEFINICION DE LAS VARIABLES DE IMPRESION
|
||||
DEFINE numero_ch CHAR(9),
|
||||
descripcion CHAR(30),
|
||||
detalle1 CHAR(40),
|
||||
detalle2 CHAR(37)
|
||||
|
||||
DEFINE hora CHAR(5)
|
||||
|
||||
OUTPUT
|
||||
## DEFINICION DE LOS MARGENES DE IMPRESION
|
||||
TOP MARGIN 0
|
||||
LEFT MARGIN 0
|
||||
BOTTOM MARGIN 3
|
||||
|
||||
ORDER BY x.codigo
|
||||
|
||||
FORMAT
|
||||
PAGE HEADER
|
||||
|
||||
LET hora = time
|
||||
## AQUI SE INDICA LA IMPRESION DE LOS ENCABEZADOS
|
||||
PRINT COLUMN 1, letras.negrillas_on,letras.doce,letras.comp_on
|
||||
PRINT COLUMN 1, "teprrp007",
|
||||
COLUMN 48, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
||||
COLUMN 135, "Pag. ",pageno using "###"
|
||||
PRINT COLUMN 48, " Sistema de Tesoreria",
|
||||
COLUMN 135, today using "dd/mm/yyyy"
|
||||
PRINT COLUMN 50, "Resumen por Partidas de Cheques Emitidos",
|
||||
COLUMN 138, hora
|
||||
SKIP 1 LINE
|
||||
PRINT COLUMN 1, "FECHA: Del ",fecha_inicial USING "dd/mm/yyyy",
|
||||
" Al ",fecha_final USING "dd/mm/yyyy"
|
||||
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"------------------------------------------"
|
||||
|
||||
PRINT COLUMN 1, "Partida",
|
||||
COLUMN 40, "Valor"
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"------------------------------------------"
|
||||
|
||||
PRINT letras.negrillas_off
|
||||
|
||||
AFTER GROUP OF x.codigo
|
||||
PRINT COLUMN 1, x.codigo USING "&&"," ",
|
||||
x.descripcion,
|
||||
COLUMN 40, GROUP SUM(x.monto) USING "###,###,###.##"
|
||||
|
||||
ON LAST ROW
|
||||
PRINT COLUMN 39, "----------------"
|
||||
PRINT COLUMN 1, " Total General ",
|
||||
COLUMN 40, SUM(x.monto) USING "###,###,###.##"
|
||||
PRINT COLUMN 39, "================"
|
||||
|
||||
PRINT letras.normal #comp_off
|
||||
END REPORT
|
||||
@@ -0,0 +1,356 @@
|
||||
{
|
||||
==============================================================================
|
||||
PROGRAMA : TEPRRP007
|
||||
SISTEMA : Sistema de Tesoreria
|
||||
Objetivo : Relacion de Cheque Emitidos
|
||||
PROGRAMADOR : Tadeo A. Ferreras
|
||||
FECHA : Diciembre 05, 1995
|
||||
==============================================================================
|
||||
}
|
||||
GLOBALS
|
||||
"teprgb000.4gl"
|
||||
|
||||
DEFINE datos_7 RECORD
|
||||
cuenta_no CHAR(8),
|
||||
cheque_no INTEGER,
|
||||
fecha DATE,
|
||||
portador CHAR(30),
|
||||
monto DECIMAL(12,2),
|
||||
status_t CHAR(1),
|
||||
codigo INTEGER,
|
||||
descripcion CHAR(30)
|
||||
|
||||
END RECORD
|
||||
DEFINE fecha_inicial,fecha_final DATE
|
||||
DEFINE tasa DECIMAL(7,3)
|
||||
DEFINE salir CHAR(1)
|
||||
|
||||
FUNCTION teprrp007()
|
||||
LET int_flag = FALSE
|
||||
|
||||
OPTIONS
|
||||
FORM LINE 8
|
||||
|
||||
OPEN FORM tefmrp007 FROM "tefmrp007"
|
||||
DISPLAY FORM tefmrp007
|
||||
DISPLAY "teprrp007" AT 4,3 ATTRIBUTE(RED)
|
||||
DISPLAY "Relacion de Cheques Emitidos" AT 6,26 ATTRIBUTE(BLACK)
|
||||
|
||||
LET tipo_papel = 1
|
||||
CALL msgrp000(tipo_papel)
|
||||
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
||||
|
||||
INPUT BY NAME fecha_inicial,fecha_final,tasa
|
||||
ON KEY(CONTROL-P)
|
||||
CALL busca_printer() RETURNING imprime,letras.*,archivo
|
||||
|
||||
AFTER FIELD fecha_inicial
|
||||
IF fecha_inicial IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_inicial
|
||||
END IF
|
||||
|
||||
AFTER FIELD fecha_final
|
||||
IF fecha_final IS NULL THEN
|
||||
LET numero_msg = 16
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_final
|
||||
END IF
|
||||
|
||||
IF fecha_inicial > fecha_final THEN
|
||||
LET numero_msg = 51
|
||||
CALL msg(numero_msg)
|
||||
NEXT FIELD fecha_inicial
|
||||
END IF
|
||||
END INPUT
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
CONSTRUCT criterio ON a.cuenta_no,a.cheque_no FROM cuenta_no,cheque_no
|
||||
ON KEY(CONTROL-P)
|
||||
CALL busca_printer() RETURNING imprime,letras.*,archivo
|
||||
AFTER CONSTRUCT
|
||||
EXIT CONSTRUCT
|
||||
END CONSTRUCT
|
||||
LET parametro = "D"
|
||||
CALL elijeimpresion(parametro) RETURNING orden,destino,letras.*
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET selec =
|
||||
"SELECT UNIQUE a.cuenta_no,a.cheque_no,a.fecha,a.portador,a.monto, ",
|
||||
" a.status_t ",
|
||||
# " a.status_t,b.codigo,c.descripcion ",
|
||||
# "FROM cgtb00005 a, tetb00006 b, tetb00003 c ",
|
||||
"FROM cgtb00005 a, tetb00006 b ",
|
||||
"WHERE ",criterio CLIPPED," AND (a.fecha BETWEEN ? AND ?) AND ",
|
||||
" a.cuenta_no = b.banco AND ",
|
||||
" a.cheque_no = b.cheque_no ",
|
||||
# " a.cheque_no = b.cheque_no AND ",
|
||||
# " b.codigo = c.codigo ",
|
||||
"ORDER BY 1,2"
|
||||
|
||||
DISPLAY "<<<Buscando Informacion... Espere por Favor>>>" AT 19,14
|
||||
ATTRIBUTE(YELLOW)
|
||||
|
||||
PREPARE comando FROM selec
|
||||
DECLARE busco CURSOR FOR comando
|
||||
OPEN busco USING fecha_inicial,fecha_final
|
||||
|
||||
START REPORT cheque_e TO archivo
|
||||
CALL defecto(impresor) RETURNING imprime,letras.*,archivo
|
||||
|
||||
START REPORT cheque_e2 TO archivo #"lptmp"
|
||||
DISPLAY "<<<Reporte Generandose... Espere por Favor>>>" AT 19,14
|
||||
ATTRIBUTE(YELLOW)
|
||||
|
||||
LET salir = "N"
|
||||
WHILE salir != "S"
|
||||
FETCH busco INTO datos_7.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET salir = "S"
|
||||
EXIT WHILE
|
||||
END IF
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET datos_7.codigo = 0
|
||||
LET datos_7.descripcion = " "
|
||||
|
||||
SELECT c.codigo, c.descripcion INTO
|
||||
datos_7.codigo, datos_7.descripcion
|
||||
FROM tetb00003 c, tetb00006 d
|
||||
WHERE c.codigo = d.codigo AND
|
||||
d.banco = datos_7.cuenta_no AND
|
||||
d.cheque_no = datos_7.cheque_no AND
|
||||
c.status_t IS NULL AND
|
||||
d.status_t IS NULL
|
||||
|
||||
DISPLAY datos_7.cuenta_no AT 21,30
|
||||
DISPLAY datos_7.cheque_no AT 21,40
|
||||
|
||||
IF datos_7.status_t = "N" THEN
|
||||
LET datos_7.monto = 0
|
||||
LET datos_7.portador = "NULO"
|
||||
END IF
|
||||
|
||||
IF datos_7.cuenta_no = 1113 THEN
|
||||
LET datos_7.monto = datos_7.monto * tasa
|
||||
END IF
|
||||
|
||||
OUTPUT TO REPORT cheque_e(datos_7.*)
|
||||
OUTPUT TO REPORT cheque_e2(datos_7.*)
|
||||
END WHILE
|
||||
FINISH REPORT cheque_e
|
||||
RUN imprime
|
||||
|
||||
FINISH REPORT cheque_e2
|
||||
RUN imprime
|
||||
#CALL fdestino(destino,archivo,imprime)
|
||||
#RUN "type lptmp > \\ROVDOM2\contabi"
|
||||
#RUN "copy lptmp > \\ROVDOM2\contabi"
|
||||
CLEAR SCREEN
|
||||
END FUNCTION
|
||||
|
||||
REPORT cheque_e(x)
|
||||
DEFINE x RECORD
|
||||
cuenta_no CHAR(8),
|
||||
cheque_no INTEGER,
|
||||
fecha DATE,
|
||||
portador CHAR(30),
|
||||
monto DECIMAL(12,2),
|
||||
status_t CHAR(1),
|
||||
codigo INTEGER,
|
||||
descripcion CHAR(30)
|
||||
END RECORD
|
||||
|
||||
## DEFINICION DE LAS VARIABLES DE IMPRESION
|
||||
DEFINE numero_ch CHAR(9),
|
||||
descripcion CHAR(30),
|
||||
detalle1 CHAR(40),
|
||||
detalle2 CHAR(37)
|
||||
|
||||
DEFINE hora CHAR(5)
|
||||
|
||||
OUTPUT
|
||||
## DEFINICION DE LOS MARGENES DE IMPRESION
|
||||
TOP MARGIN 0
|
||||
LEFT MARGIN 0
|
||||
BOTTOM MARGIN 3
|
||||
|
||||
FORMAT
|
||||
PAGE HEADER
|
||||
|
||||
LET hora = time
|
||||
## AQUI SE INDICA LA IMPRESION DE LOS ENCABEZADOS
|
||||
PRINT COLUMN 1, letras.negrillas_on,letras.doce,letras.comp_on
|
||||
PRINT COLUMN 1, "teprrp007",
|
||||
COLUMN 48, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
||||
COLUMN 135, "Pag. ",pageno using "###"
|
||||
PRINT COLUMN 48, " Sistema de Tesoreria",
|
||||
COLUMN 135, today using "dd/mm/yy"
|
||||
PRINT COLUMN 48, " Relacion Cheques Emitidos",
|
||||
COLUMN 138, hora
|
||||
SKIP 1 LINE
|
||||
PRINT COLUMN 1, "FECHA: Del ",fecha_inicial USING "dd/mm/yy",
|
||||
" Al ",fecha_final USING "dd/mm/yy"
|
||||
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"------------------------------------------"
|
||||
|
||||
PRINT COLUMN 1, "Cheque",
|
||||
COLUMN 8, "Fecha",
|
||||
COLUMN 17, "Beneficiario",
|
||||
COLUMN 48, "Concepto",
|
||||
COLUMN 125, "Part",
|
||||
COLUMN 138, "Valor"
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"------------------------------------------"
|
||||
|
||||
PRINT letras.negrillas_off
|
||||
## AQUI SE INDICA LA IMPRESION DEL DETALLE
|
||||
BEFORE GROUP OF x.cuenta_no
|
||||
|
||||
SELECT a.descripcion INTO descripcion FROM cgtb00001 a
|
||||
WHERE a.cuenta_no = x.cuenta_no
|
||||
|
||||
PRINT COLUMN 1, letras.negrillas_on
|
||||
PRINT COLUMN 1, "Banco: ", x.cuenta_no CLIPPED," ",
|
||||
descripcion CLIPPED," ",letras.negrillas_off;
|
||||
|
||||
IF x.cuenta_no = 1103 THEN
|
||||
PRINT " ( Tasa US$ : ",tasa USING "##.####"," )"
|
||||
ELSE
|
||||
PRINT " "
|
||||
END IF
|
||||
|
||||
BEFORE GROUP OF x.cheque_no
|
||||
|
||||
LET numero_ch = NULL
|
||||
LET detalle1 = NULL
|
||||
LET detalle2 = NULL
|
||||
IF x.status_t = "N" THEN
|
||||
LET detalle1 = "CHEQUE ANULADO"
|
||||
LET detalle2 = " "
|
||||
ELSE
|
||||
LET numero_ch = NULL
|
||||
LET numero_ch = "CK.",x.cheque_no USING "&&&&&&"
|
||||
SELECT UNIQUE a.detalle_1,a.detalle_2[1,37]
|
||||
INTO detalle1,detalle2
|
||||
FROM cgtb00004 a
|
||||
WHERE a.tipo=2 AND a.cuenta_no=x.cuenta_no AND a.ref = numero_ch
|
||||
AND a.detalles matches x.cuenta_no AND a.status_t IS NULL
|
||||
END IF
|
||||
|
||||
ON EVERY ROW
|
||||
|
||||
PRINT COLUMN 1, x.cheque_no USING "#####","|",
|
||||
x.fecha USING "dd/mm/yy","|",
|
||||
COLUMN 17, x.portador,"|",
|
||||
COLUMN 48, detalle1,detalle2,"|",
|
||||
COLUMN 126, x.codigo USING "&&", "|",
|
||||
COLUMN 129, x.monto USING "###,###,###.##"
|
||||
|
||||
AFTER GROUP OF x.cuenta_no
|
||||
PRINT COLUMN 129, "--------------"
|
||||
PRINT COLUMN 1, "Total Cheque(s) --> ", GROUP COUNT(*)
|
||||
USING "<<<,<<<",
|
||||
COLUMN 129, GROUP SUM(x.monto) USING "###,###,###.##"
|
||||
|
||||
ON LAST ROW
|
||||
PRINT COLUMN 129, "--------------"
|
||||
PRINT COLUMN 1, "Total Cheque(s) --> ", COUNT (*) USING "<<<,<<<",
|
||||
COLUMN 129, SUM(x.monto) USING "###,###,###.##"
|
||||
PRINT COLUMN 129, "=============="
|
||||
|
||||
PRINT letras.normal #comp_off
|
||||
END REPORT
|
||||
|
||||
REPORT cheque_e2(x)
|
||||
DEFINE x RECORD
|
||||
cuenta_no CHAR(8),
|
||||
cheque_no INTEGER,
|
||||
fecha DATE,
|
||||
portador CHAR(30),
|
||||
monto DECIMAL(12,2),
|
||||
status_t CHAR(1),
|
||||
codigo INTEGER,
|
||||
descripcion CHAR(30)
|
||||
END RECORD
|
||||
|
||||
## DEFINICION DE LAS VARIABLES DE IMPRESION
|
||||
DEFINE numero_ch CHAR(9),
|
||||
descripcion CHAR(30),
|
||||
detalle1 CHAR(40),
|
||||
detalle2 CHAR(37)
|
||||
|
||||
DEFINE hora CHAR(5)
|
||||
|
||||
OUTPUT
|
||||
## DEFINICION DE LOS MARGENES DE IMPRESION
|
||||
TOP MARGIN 0
|
||||
LEFT MARGIN 0
|
||||
BOTTOM MARGIN 3
|
||||
|
||||
ORDER BY x.codigo
|
||||
|
||||
FORMAT
|
||||
PAGE HEADER
|
||||
|
||||
LET hora = time
|
||||
## AQUI SE INDICA LA IMPRESION DE LOS ENCABEZADOS
|
||||
PRINT COLUMN 1, letras.negrillas_on,letras.doce,letras.comp_on
|
||||
PRINT COLUMN 1, "teprrp007",
|
||||
COLUMN 48, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
||||
COLUMN 135, "Pag. ",pageno using "###"
|
||||
PRINT COLUMN 48, " Sistema de Tesoreria",
|
||||
COLUMN 135, today using "dd/mm/yy"
|
||||
PRINT COLUMN 50, "Resumen por Partidas de Cheques Emitidos",
|
||||
COLUMN 138, hora
|
||||
SKIP 1 LINE
|
||||
PRINT COLUMN 1, "FECHA: Del ",fecha_inicial USING "dd/mm/yy",
|
||||
" Al ",fecha_final USING "dd/mm/yy"
|
||||
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"------------------------------------------"
|
||||
|
||||
PRINT COLUMN 1, "Partida",
|
||||
COLUMN 40, "Valor"
|
||||
PRINT COLUMN 1, "--------------------------------------------------",
|
||||
"--------------------------------------------------",
|
||||
"------------------------------------------"
|
||||
|
||||
PRINT letras.negrillas_off
|
||||
|
||||
AFTER GROUP OF x.codigo
|
||||
PRINT COLUMN 1, x.codigo USING "&&"," ",
|
||||
x.descripcion,
|
||||
COLUMN 40, GROUP SUM(x.monto) USING "###,###,###.##"
|
||||
|
||||
ON LAST ROW
|
||||
PRINT COLUMN 39, "----------------"
|
||||
PRINT COLUMN 1, " Total General ",
|
||||
COLUMN 40, SUM(x.monto) USING "###,###,###.##"
|
||||
PRINT COLUMN 39, "================"
|
||||
|
||||
PRINT letras.normal #comp_off
|
||||
END REPORT
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user