Commit inicial: fuentes MBS ERP (Genero 6) + .gitignore + docs/SETUP_PC_MBS.md
This commit is contained in:
@@ -0,0 +1,174 @@
|
||||
{
|
||||
=============================================================================
|
||||
PROGRAMA : IRPRRP025
|
||||
OBJETIVO : IMPRIMIR REPUESTOS CON COMPRA Y SIN COSTO
|
||||
PROGRAMADOR : TADEO A. FERRERAS F.
|
||||
FECHA : FEBRERO 17, 1995
|
||||
=============================================================================
|
||||
}
|
||||
GLOBALS
|
||||
"irprgb000.4gl"
|
||||
DEFINE descrip CHAR(30)
|
||||
DEFINE fecha_inicial,fecha_final DATE
|
||||
DEFINE opcion1 CHAR(1)
|
||||
DEFINE ano1 CHAR(4)
|
||||
DEFINE mes1 INTEGER
|
||||
|
||||
DEFINE datos_25 RECORD
|
||||
cod_n SMALLINT,
|
||||
cod_grupo SMALLINT,
|
||||
cod_tipo SMALLINT,
|
||||
cod_sec SMALLINT,
|
||||
descrip_esp CHAR(30),
|
||||
unidad_med CHAR(3),
|
||||
costo_st DECIMAL(16,4),
|
||||
num_oc INTEGER,
|
||||
precio DECIMAL(12,2)
|
||||
END RECORD
|
||||
FUNCTION irprrp025()
|
||||
OPTIONS
|
||||
PROMPT LINE 10,
|
||||
ERROR LINE 24,
|
||||
FORM LINE 8
|
||||
|
||||
OPEN FORM irfmrp025 FROM "irfmrp001"
|
||||
DISPLAY FORM irfmrp025
|
||||
|
||||
DISPLAY "irprrp025" AT 4,3
|
||||
DISPLAY "Repuestos Con Compra y Sin Costo Std." AT 6,21
|
||||
|
||||
LET tipo_papel = 1
|
||||
CALL msgrp000(tipo_papel)
|
||||
|
||||
CONSTRUCT criterio ON a.cod_n,a.cod_grupo,a.cod_tipo,a.cod_sec
|
||||
FROM cod_n,cod_grupo,cod_tipo,cod_sec
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET numero_msg = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LABEL pregunta:
|
||||
PROMPT "Deseas Actualizar Costos Standard... [S/N]? " FOR CHAR opcion1
|
||||
LET opcion1 = UPSHIFT(opcion1)
|
||||
|
||||
IF (opcion1 != "S" AND opcion1 != "N") OR (opcion1 IS NULL) THEN
|
||||
GOTO pregunta
|
||||
END IF
|
||||
|
||||
LET ano1 = YEAR(TODAY) USING "&&&&"
|
||||
SELECT MAX(a.mes) INTO mes1 FROM prdtable a
|
||||
WHERE MONTH(a.fecha_corte)=MONTH(TODAY) AND YEAR(a.fecha_corte)=YEAR(TODAY)
|
||||
|
||||
LET selec =
|
||||
"SELECT UNIQUE a.cod_n,a.cod_grupo,a.cod_tipo,a.cod_sec,b.descrip_esp, ",
|
||||
" b.unidad_med,MAX(d.costo_st),MAX(c.num_oc) ",
|
||||
"FROM irtb00002 a, OUTER cotb00015 c,intb00001 b,OUTER irtb00013 d ",
|
||||
"WHERE (a.cod_n = b.cod_n AND a.cod_grupo = b.cod_grupo AND ",
|
||||
" a.cod_tipo = b.cod_tipo AND a.cod_sec = b.cod_sec) 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) AND ",
|
||||
" (a.cod_n = d.cod_n AND a.cod_grupo = d.cod_grupo AND ",
|
||||
" a.cod_tipo = d.cod_tipo AND a.cod_sec = d.cod_sec) AND ",
|
||||
criterio CLIPPED," AND a.status_t IS NULL AND c.status_t IS NULL AND ",
|
||||
" b.status_t IS NULL GROUP BY 1,2,3,4,5,6 "
|
||||
|
||||
DISPLAY "<< Buscando Informacion ... Espere Por Favor >>" AT 19,14
|
||||
|
||||
PREPARE comando FROM selec
|
||||
DECLARE busca CURSOR FOR comando
|
||||
|
||||
START REPORT reporte_25 TO PIPE "lp -dcentral"
|
||||
DISPLAY "<< Reporte Generandose ... Espere Por Favor >>" AT 19,14
|
||||
|
||||
FOREACH busca INTO datos_25.*
|
||||
IF datos_25.costo_st is null OR datos_25.costo_st = 0 THEN
|
||||
LET datos_25.precio = 0
|
||||
SELECT MAX(a.precio) INTO datos_25.precio FROM cotb00015 a
|
||||
WHERE a.status_t IS NULL AND a.cod_n = datos_25.cod_n AND
|
||||
a.cod_grupo=datos_25.cod_grupo AND a.cod_tipo = datos_25.cod_tipo AND
|
||||
a.cod_sec = datos_25.cod_sec AND a.num_oc = datos_25.num_oc
|
||||
|
||||
IF datos_25.precio is not null THEN
|
||||
LET datos_25.costo_st = (datos_25.precio * 1.08)
|
||||
LET datos_25.costo_st = (datos_25.costo_st * 1.05)
|
||||
END IF
|
||||
|
||||
IF datos_25.precio is null THEN
|
||||
LET datos_25.precio = 0
|
||||
END IF
|
||||
IF datos_25.costo_st is null OR datos_25.costo_st = 0 THEN
|
||||
LET datos_25.costo_st = 1
|
||||
END IF
|
||||
|
||||
OUTPUT TO REPORT reporte_25(datos_25.*)
|
||||
END IF
|
||||
END FOREACH
|
||||
FINISH REPORT reporte_25
|
||||
RUN "type C:\\archivo > %USPRINT%" END FUNCTION
|
||||
REPORT reporte_25(x)
|
||||
DEFINE x RECORD
|
||||
cod_n SMALLINT,
|
||||
cod_grupo SMALLINT,
|
||||
cod_tipo SMALLINT,
|
||||
cod_sec SMALLINT,
|
||||
descrip_esp CHAR(30),
|
||||
unidad_med CHAR(3),
|
||||
costo_st DECIMAL(16,4),
|
||||
num_oc INTEGER,
|
||||
precio DECIMAL(12,2)
|
||||
END RECORD,
|
||||
doble_off,doble_on,doce CHAR(3),
|
||||
unidad CHAR(3),
|
||||
total_p DECIMAL(12,2)
|
||||
|
||||
OUTPUT LEFT MARGIN 0
|
||||
FORMAT
|
||||
PAGE HEADER
|
||||
LET doce = ASCII 030
|
||||
LET doble_on = ASCII 027, ASCII 001
|
||||
LET doble_off = ASCII 027, ASCII 002
|
||||
PRINT doce
|
||||
PRINT COLUMN 1, "irprrp025",
|
||||
COLUMN 18, "R A Y .O. V A C D O M I N I C A N A, S. A.",
|
||||
COLUMN 74, "Pag. ",pageno using "###"
|
||||
PRINT COLUMN 18, " SISTEMA DE REPUESTOS",
|
||||
COLUMN 74, today using "dd/mm/yy"
|
||||
PRINT COLUMN 17, "REPUESTOS SIN COSTO STANDARD CON O SIN COMPRAS",
|
||||
COLUMN 74, time
|
||||
PRINT COLUMN 1, "FECHA: ",TODAY using "dd/mm/yy"
|
||||
|
||||
PRINT
|
||||
"=============================================================================",
|
||||
"========"
|
||||
PRINT COLUMN 1, "CODIGO",
|
||||
COLUMN 55, "COSTO STD",
|
||||
COLUMN 75, "PRECIO"
|
||||
PRINT
|
||||
"=============================================================================",
|
||||
"========"
|
||||
SKIP 1 LINE
|
||||
ON EVERY ROW
|
||||
|
||||
PRINT COLUMN 1, x.cod_n USING "&","-",x.cod_grupo USING "&","-",
|
||||
x.cod_tipo USING "&&","-",x.cod_sec USING "&&&"," ",
|
||||
x.descrip_esp," ",x.unidad_med,
|
||||
COLUMN 48, x.costo_st USING "###,###,###.####",
|
||||
COLUMN 70, x.precio USING "###,###,###.##"
|
||||
|
||||
IF opcion1 = "S" THEN
|
||||
IF x.costo_st > 0 THEN
|
||||
INSERT INTO irtb00013 VALUES (01,12,ano1,x.cod_n,x.cod_grupo,
|
||||
x.cod_tipo,x.cod_sec,x.costo_st,
|
||||
NULL,USER,CURRENT,NULL,NULL)
|
||||
END IF
|
||||
END IF
|
||||
ON LAST ROW
|
||||
PRINT
|
||||
"=============================================================================",
|
||||
"========"
|
||||
PRINT "TOTAL REGISTRO ---> ", COUNT(*) USING "<<<,<<<,<<<"
|
||||
PRINT ASCII 031
|
||||
END REPORT
|
||||
Reference in New Issue
Block a user