Commit inicial: fuentes MBS ERP (Genero 6) + .gitignore + docs/SETUP_PC_MBS.md
This commit is contained in:
@@ -0,0 +1,229 @@
|
||||
{
|
||||
-----------------------------------------------------------------------------
|
||||
PROGRAMA : CGPRCS001
|
||||
OBJETIVO : Consulta de Cheques de pago
|
||||
REALIZADO POR : Juan Fco Soto
|
||||
FECHA : Mayo 26, 1993.
|
||||
-----------------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS "cgprgb000.4gl"
|
||||
|
||||
MAIN
|
||||
DEFER INTERRUPT
|
||||
CALL ARG_VAL(1) RETURNING usuarios
|
||||
CALL ARG_VAL(2) RETURNING clave
|
||||
|
||||
CONNECT to "smarmotech" USER usuarios USING clave
|
||||
SELECT a.* INTO p_compania.* FROM companias a
|
||||
|
||||
CALL cgprcs001()
|
||||
END MAIN
|
||||
|
||||
###### Funcion que adiciona informacion referente a la aplicacion de un pago
|
||||
FUNCTION cgprcs001()
|
||||
|
||||
OPTIONS
|
||||
FORM LINE 8,
|
||||
ERROR LINE 24,
|
||||
COMMENT LINE 22,
|
||||
PROMPT LINE 23
|
||||
|
||||
CALL pantalla()
|
||||
OPEN FORM cgfmcs001 FROM "cgfmcs001"
|
||||
DISPLAY FORM cgfmcs001
|
||||
DISPLAY "cgprcs001" AT 4,3
|
||||
DISPLAY "Registro de Cheques" AT 6,30
|
||||
|
||||
MENU "Cons."
|
||||
COMMAND "Consultar"
|
||||
"Presione ESC Para Buscar Informacion Ctrl-C Para Cancelar "
|
||||
LET int_flag = FALSE
|
||||
CALL cgmod001()
|
||||
COMMAND "Salir"
|
||||
LET int_flag = FALSE
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION cgmod001()
|
||||
CLEAR FORM
|
||||
CONSTRUCT criterio ON a.cheque_no,a.cuenta_no,a.portador
|
||||
FROM numero,cuenta_p,nom_sup
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET selec_p =
|
||||
"SELECT UNIQUE 'CK',a.cuenta_no,a.cheque_no,0,0,a.portador, ",
|
||||
" a.fecha,a.tasa,a.monto,c.codigo,' ' ",
|
||||
"FROM cgtb00005 a,outer tetb00006 c ",
|
||||
"WHERE (a.status_t IS NULL OR a.status_t='C') AND a.cheque_no=c.cheque_no and ",
|
||||
" a.cuenta_no = c.banco AND ",criterio CLIPPED,
|
||||
" ORDER BY 3 "
|
||||
|
||||
PREPARE comando FROM selec_p
|
||||
DECLARE accion5 SCROLL CURSOR FOR comando
|
||||
OPEN accion5
|
||||
|
||||
FETCH FIRST accion5 INTO recibo.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 3
|
||||
CALL msg(numero_msg)
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET referencia = "CK.",recibo.numero USING "&&&&&&"
|
||||
SELECT UNIQUE a.detalle_1,a.detalle_2 INTO detalle_1,detalle_2
|
||||
FROM cgtb00004 a
|
||||
WHERE a.ref = referencia AND (a.status_t IS NULL OR a.status_t = 'C') AND
|
||||
a.cuenta_no = recibo.cuenta_p
|
||||
|
||||
CALL procede()
|
||||
DISPLAY BY NAME recibo.*,p_descrip
|
||||
|
||||
MENU "Consulta"
|
||||
COMMAND "Primero"
|
||||
FETCH FIRST accion5 INTO recibo.*
|
||||
|
||||
LET referencia = "CK.",recibo.numero USING "&&&&&&"
|
||||
SELECT UNIQUE a.detalle_1,a.detalle_2 INTO detalle_1,detalle_2
|
||||
FROM cgtb00004 a
|
||||
WHERE a.ref = referencia AND a.status_t IS NULL AND
|
||||
a.cuenta_no = recibo.cuenta_p
|
||||
|
||||
CALL procede()
|
||||
DISPLAY BY NAME recibo.*,p_descrip
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Siguiente"
|
||||
FETCH NEXT accion5 INTO recibo.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
SELECT UNIQUE a.detalle_1,a.detalle_2 INTO detalle_1,detalle_2
|
||||
FROM cgtb00004 a
|
||||
WHERE (a.ref = referencia) AND
|
||||
(a.cuenta_no = recibo.cuenta_p)
|
||||
|
||||
CALL procede()
|
||||
DISPLAY BY NAME recibo.*,p_descrip
|
||||
|
||||
COMMAND "Anterior"
|
||||
FETCH PREVIOUS accion5 INTO recibo.*
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET numero_msg = 5
|
||||
CALL msg(numero_msg)
|
||||
END IF
|
||||
|
||||
LET referencia = "CK.",recibo.numero USING "&&&&&&"
|
||||
SELECT UNIQUE a.detalle_1,a.detalle_2 INTO detalle_1,detalle_2
|
||||
FROM cgtb00004 a
|
||||
WHERE a.ref = referencia AND
|
||||
a.cuenta_no = recibo.cuenta_p
|
||||
|
||||
CALL procede()
|
||||
DISPLAY BY NAME recibo.*,p_descrip
|
||||
|
||||
COMMAND "Ultimo"
|
||||
FETCH LAST accion5 INTO recibo.*
|
||||
|
||||
LET referencia = "CK.",recibo.numero USING "&&&&&&"
|
||||
SELECT UNIQUE a.detalle_1,a.detalle_2
|
||||
INTO detalle_1,detalle_2
|
||||
FROM cgtb00004 a
|
||||
WHERE a.ref = referencia AND
|
||||
a.cuenta_no = recibo.cuenta_p
|
||||
|
||||
CALL procede()
|
||||
DISPLAY BY NAME recibo.*,p_descrip
|
||||
|
||||
LET numero_msg = 4
|
||||
CALL msg(numero_msg)
|
||||
|
||||
COMMAND "Ver"
|
||||
"Ver Informacion de las Cuentas Contables o Transacciones Cuentas por Pagar"
|
||||
|
||||
####### Creando la facilidad para cancelar proceso mediante DELETE o SUPR
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
LET numero1 = recibo.numero USING "<<<<<<<"
|
||||
|
||||
DECLARE buscara CURSOR FOR
|
||||
SELECT b.tipo,b.orden_no,b.aplica_a,b.valor*-1,b.valor*-1
|
||||
FROM cptb00001 b
|
||||
WHERE b.status_t IS NULL AND b.num_doc = numero1 AND
|
||||
b.tipo_doc = recibo.tipo_doc AND
|
||||
b.cta_ctble = recibo.cuenta_p
|
||||
|
||||
LET idx = 1
|
||||
LET i = 0
|
||||
FOREACH buscara INTO arr_recibo[idx].*
|
||||
LET arr_recibo[idx].valor_pen = 0
|
||||
LET idx = idx + 1
|
||||
LET i = i + 1
|
||||
END FOREACH
|
||||
CALL SET_COUNT(idx -1)
|
||||
|
||||
IF i = 0 THEN
|
||||
LET existe = "N"
|
||||
END IF
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
CLEAR FORM
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
IF idx > 1 THEN
|
||||
DISPLAY ARRAY arr_recibo TO s_recibo.*
|
||||
END IF
|
||||
|
||||
LET referencia = "CK.",recibo.numero USING "&&&&&&"
|
||||
DECLARE buscara1 CURSOR FOR
|
||||
SELECT c.cuenta_no,c.departamento,c.cod_aux,c.cod_sec,c.num_doc,d.descripcion,
|
||||
c.debito,c.credito
|
||||
FROM cgtb00004 c,cgtb00001 d
|
||||
WHERE c.cuenta_no = d.cuenta_no AND c.ref = referencia AND
|
||||
c.detalles LIKE recibo.cuenta_p AND
|
||||
d.status_t IS NULL AND c.cuenta_no NOT IN (recibo.cuenta_p)
|
||||
|
||||
LET idx = 1
|
||||
FOREACH buscara1 INTO arr_cuenta1[idx].*
|
||||
LET idx = idx + 1
|
||||
END FOREACH
|
||||
CALL SET_COUNT(idx - 1)
|
||||
|
||||
DISPLAY ARRAY arr_cuenta1 TO s_cuenta.*
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = false
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
COMMAND "Retornar"
|
||||
EXIT MENU
|
||||
END MENU
|
||||
END FUNCTION
|
||||
|
||||
# Funcion para buscar la descripcion de la procedencia
|
||||
FUNCTION procede()
|
||||
SELECT descripcion INTO p_descrip FROM tetb00003
|
||||
WHERE @codigo = recibo.codigo
|
||||
DISPLAY BY NAME p_descrip
|
||||
END FUNCTION
|
||||
Reference in New Issue
Block a user