Correzioni immissione
git-svn-id: svn://10.65.10.50/trunk@3177 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
bb61a87476
commit
899cf84309
@ -312,6 +312,7 @@ BEGIN
|
||||
ITEM "Numero-CAB@11"
|
||||
ITEM "Progressivo banca"
|
||||
ITEM "Ritenuta@15"
|
||||
// ITEM "NUMVERS"
|
||||
WARNING "Versamento inconsistente"
|
||||
END
|
||||
|
||||
|
@ -101,9 +101,8 @@ STRING 105 5
|
||||
BEGIN
|
||||
PROMPT 16 5 ""
|
||||
FIELD LF_RVER->SERIE
|
||||
FLAGS "G"
|
||||
WARNING "Inserire la serie"
|
||||
HELP "Inserire la serie"
|
||||
FLAGS "ZG"
|
||||
WARNING "Inserire la serie/codice ABI"
|
||||
GROUP 1 2 4 6
|
||||
END
|
||||
|
||||
@ -119,7 +118,7 @@ BEGIN
|
||||
GROUP 1 2 3 4 5
|
||||
END
|
||||
|
||||
STRING 72 5
|
||||
NUMBER 72 5
|
||||
BEGIN
|
||||
PROMPT 39 5 ""
|
||||
FIELD LF_RVER->NUMERO
|
||||
@ -127,7 +126,7 @@ BEGIN
|
||||
WARNING "Inserire il codice CAB"
|
||||
HELP "CODICE CAB LUNGO 5"
|
||||
MESSAGE COPY,106
|
||||
FLAGS "HG"
|
||||
FLAGS "HZG"
|
||||
GROUP 2 6
|
||||
END
|
||||
|
||||
@ -135,6 +134,7 @@ NUMBER 107 6
|
||||
BEGIN
|
||||
PROMPT 2 6 "Progressivo per versamento banca "
|
||||
FLAGS "DZ"
|
||||
// FLAGS "Z"
|
||||
GROUP 2 6
|
||||
END
|
||||
|
||||
@ -153,8 +153,8 @@ END
|
||||
|
||||
NUMBER VERF_NUMVERS 6
|
||||
BEGIN
|
||||
PROMPT 1 8 "NUMVERS "
|
||||
FLAGS "H"
|
||||
PROMPT 80 80 "NUMVERS "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
BUTTON DLG_OK 9 2
|
||||
|
@ -261,20 +261,27 @@ void TSchedaPercipienti::load_pag_sheet(const long numvers)
|
||||
// Setto il bit alla posizione numpag
|
||||
if (nvers == numvers)
|
||||
_selected.set(npag);
|
||||
|
||||
|
||||
const int LARGHEZZA_COL = 15;
|
||||
d->add(" "); // 0 spazio per la 'X' di selezione
|
||||
TString16 dep (riga.get(0));
|
||||
TString dep(riga.get(0));
|
||||
d->add(dep); // 1 data pagamento
|
||||
comp = riga.get(1);
|
||||
d->add(comp.string(".")); // 2 compenso
|
||||
spese = riga.get(2);
|
||||
d->add(spese.string(".")); // 3 spese
|
||||
comp = riga.get(1);
|
||||
dep = comp.string(".");
|
||||
dep.right_just(LARGHEZZA_COL);
|
||||
d->add(dep); // 2 compenso
|
||||
spese = riga.get(2);
|
||||
dep = spese.string(".");
|
||||
dep.right_just(LARGHEZZA_COL);
|
||||
d->add(dep); // 3 spese
|
||||
|
||||
// NB
|
||||
// se cambia posizione nriga o ritpag nella tokenstring cambia
|
||||
// anche in pag_select()!
|
||||
ritpag = riga.get(SS_POS_RITPAG);
|
||||
d->add(ritpag.string("."));
|
||||
dep = ritpag.string(".");
|
||||
dep.right_just(LARGHEZZA_COL);
|
||||
d->add(dep);
|
||||
|
||||
d->add(nriga, SS_POS_NRIGA);
|
||||
// Metto nell'array-sheet anche NUMVERS
|
||||
@ -554,7 +561,7 @@ void TSchedaPercipienti::work_tipoluogo(TMask_field& f)
|
||||
m.show(-4); // serie e numero
|
||||
}
|
||||
else
|
||||
if (tipo == 'B')
|
||||
if (tipo == 'B')
|
||||
{
|
||||
m.show (-6); // ABI e CAB
|
||||
m.enable(SM_PROGRBANCA); // abilita progressivo vers.banca
|
||||
|
@ -123,8 +123,16 @@ bool TVersa_rit::create()
|
||||
_luogo = _msk->get(F_LUOGO)[0];
|
||||
_tipo = _msk->get(F_TIPO)[0];
|
||||
_versato = real(_msk->get(F_VERSATO));
|
||||
_serie = _msk->get(F_SERIE);
|
||||
_numero = _msk->get(F_NUMERO);
|
||||
if (_tipo == DELEGA_BANCARIA)
|
||||
{
|
||||
_serie = _msk->get(F_ABI);
|
||||
_numero = _msk->get(F_CAB);
|
||||
}
|
||||
else
|
||||
{
|
||||
_serie = _msk->get(F_SERIE);
|
||||
_numero = _msk->get(F_NUMERO);
|
||||
}
|
||||
}
|
||||
|
||||
TEdit_field& dummy = (TEdit_field&)_msk->field(F_CODANAGRPERC);
|
||||
@ -301,8 +309,7 @@ bool TVersa_rit::ha_pagamenti_non_versati(const long codditta,char tipoa,const l
|
||||
|
||||
while (rpag.curr() == dep && !rpag.eof())
|
||||
{
|
||||
// numvers = rpag.get_long("NUMVERS");
|
||||
numvers = rpag.get_long("NRIGA");
|
||||
numvers = rpag.get_long("NUMVERS");
|
||||
nriga = rpag.get_int("NRIGA");
|
||||
ritpag = rpag.get_real("RITENUTA");
|
||||
if (numvers <= 0)
|
||||
|
@ -15,4 +15,7 @@
|
||||
|
||||
#define F_CODANAGRPERC 112
|
||||
#define F_TIPOA 113
|
||||
#define F_ABI 114
|
||||
#define F_CAB 115
|
||||
|
||||
#endif
|
||||
|
@ -170,25 +170,41 @@ BEGIN
|
||||
END
|
||||
*/
|
||||
|
||||
NUMBER F_ABI 5
|
||||
BEGIN
|
||||
PROMPT 16 7 ""
|
||||
FLAGS "Z"
|
||||
WARNING "Inserire il codice CAB"
|
||||
GROUP 2 6
|
||||
END
|
||||
|
||||
NUMBER F_CAB 6
|
||||
BEGIN
|
||||
PROMPT 39 7 ""
|
||||
FLAGS "Z"
|
||||
WARNING "Inserire il codice CAB"
|
||||
GROUP 2 6
|
||||
END
|
||||
|
||||
STRING F_SERIE 5
|
||||
BEGIN
|
||||
PROMPT 16 7 ""
|
||||
// VALIDATE REQIF_FUNC 2 103 104
|
||||
CHECKTYPE REQUIRED
|
||||
FLAGS "G"
|
||||
WARNING "Inserire il numero di serie/codice CAB"
|
||||
WARNING "Inserire il numero di serie"
|
||||
HELP "Inserire la serie"
|
||||
GROUP 1 2 4 6
|
||||
GROUP 1 2 4
|
||||
END
|
||||
|
||||
STRING F_NUMERO 11
|
||||
BEGIN
|
||||
PROMPT 39 7 ""
|
||||
VALIDATE REQIF_FUNC 2 103 104
|
||||
WARNING "Inserire il numero/codice ABI/quietanza"
|
||||
WARNING "Inserire il numero/quietanza"
|
||||
HELP "Inserire il numero"
|
||||
FLAGS "G"
|
||||
GROUP 1 2 3 4 5 6
|
||||
GROUP 1 2 3 4 5
|
||||
END
|
||||
|
||||
NUMBER F_VERSATO 15
|
||||
|
@ -10,6 +10,7 @@ END
|
||||
BUTTON F_ATTIVITA 10 2
|
||||
BEGIN
|
||||
PROMPT -25 -1 "~Attivita'"
|
||||
MESSAGE K_TAB,F_ATTIV
|
||||
END
|
||||
|
||||
BUTTON DLG_SAVEREC 10 2
|
||||
@ -94,6 +95,7 @@ BEGIN
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
/*
|
||||
STRING F_ATTIV 5
|
||||
BEGIN
|
||||
PROMPT 1 4 "Attivita' "
|
||||
@ -105,6 +107,21 @@ BEGIN
|
||||
CHECKTYPE REQUIRED
|
||||
FLAGS "D"
|
||||
END
|
||||
*/
|
||||
|
||||
STRING F_ATTIV 5
|
||||
BEGIN
|
||||
PROMPT 1 4 "Attivita' "
|
||||
USE LF_ATTIV
|
||||
INPUT CODDITTA F_CODDITTA SELECT
|
||||
INPUT CODATT F_ATTIV
|
||||
DISPLAY "Attivita'" CODATT
|
||||
DISPLAY "Prevalente" ATTPREV
|
||||
DISPLAY " @50" DESCR
|
||||
OUTPUT F_DESCRATT DESCR
|
||||
CHECKTYPE REQUIRED
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_DESCRATT 50
|
||||
BEGIN
|
||||
|
@ -1,8 +1,44 @@
|
||||
#include "771100.h"
|
||||
|
||||
TOOLBAR "" 0 20 0 2
|
||||
BUTTON DLG_SAVEREC 8 2
|
||||
BEGIN
|
||||
PROMPT -16 -1 "~Registra"
|
||||
FLAGS "D"
|
||||
MESSAGE EXIT,K_SAVE
|
||||
END
|
||||
|
||||
#include <toolbar.h>
|
||||
BUTTON DLG_NEWREC 8 2
|
||||
BEGIN
|
||||
PROMPT -26 -1 "~Nuovo"
|
||||
MESSAGE EXIT,K_INS
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
BUTTON DLG_DELREC 8 2
|
||||
BEGIN
|
||||
PROMPT -36 -1 "~Elimina"
|
||||
MESSAGE EXIT,K_DEL
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
BUTTON DLG_FINDREC 8 2
|
||||
BEGIN
|
||||
PROMPT -46 -1 "Ri~cerca"
|
||||
MESSAGE EXIT,K_F9
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
BUTTON DLG_CANCEL 8 2
|
||||
BEGIN
|
||||
PROMPT -56 -1 ""
|
||||
MESSAGE EXIT,K_ESC
|
||||
END
|
||||
|
||||
BUTTON DLG_QUIT 8 2
|
||||
BEGIN
|
||||
PROMPT -66 -1 ""
|
||||
MESSAGE EXIT,K_QUIT
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
|
267
m770/771150a.uml
267
m770/771150a.uml
@ -34,15 +34,15 @@ NUMBER ADF_DIP_CODDIP 6
|
||||
BEGIN
|
||||
PROMPT 1 3 "Codice dipendente "
|
||||
USE LF_DIPEND KEY 1 SELECT ((CODDITTA=#ADF_CODDITTA))
|
||||
FIELD LF_DIPEND->CODIP
|
||||
FIELD LF_DIPEND->CODDIP
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODIP ADF_DIP_CODDIP
|
||||
DISPLAY "Codice dipendente" CODIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT ADF_DIP_CODDIP CODIP
|
||||
OUTPUT F_DIP_COGNOME COGNOME
|
||||
OUTPUT F_DIP_NOME NOME
|
||||
INPUT CODDIP ADF_DIP_CODDIP
|
||||
DISPLAY "Codice dipendente" CODDIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT ADF_DIP_CODDIP CODDIP
|
||||
OUTPUT F_DIP_COGNOME COGNOME
|
||||
OUTPUT F_DIP_NOME NOME
|
||||
FLAGS "R"
|
||||
CHECKTYPE REQUIRED
|
||||
KEY 1
|
||||
@ -58,7 +58,7 @@ BEGIN
|
||||
PROMPT 1 5 "Codice fiscale "
|
||||
FLAGS "U"
|
||||
FIELD LF_DIPEND->CODFI
|
||||
VALIDATE CF_FUNC F_DIP_CODFI
|
||||
VALIDATE XTCF_FUNC F_DIPCODFI F_DIP_SESSO F_DIP_DATANA ADF_CODCOMNASC
|
||||
END
|
||||
|
||||
STRING F_DIP_COGNOME 24
|
||||
@ -83,47 +83,67 @@ END
|
||||
|
||||
DATA F_DIP_DATANA
|
||||
BEGIN
|
||||
PROMPT 1 8 "Data di nascita "
|
||||
PROMPT 35 7 "Data di nascita "
|
||||
FIELD LF_DIPEND->DATANA
|
||||
END
|
||||
|
||||
STRING F_DIP_COMUNENA 20
|
||||
STRING ADF_CODCOMNASC 4
|
||||
BEGIN
|
||||
PROMPT 37 8 "Comune di nascita "
|
||||
PROMPT 1 8 "Codice Comune di nascita "
|
||||
USE LF_COMUNI
|
||||
INPUT COM ADF_CODCOMNASC
|
||||
#include <comdcod.h>
|
||||
CHECKYPE NORMAL
|
||||
OUTPUT ADF_COMNASC DENCOM
|
||||
OUTPUT F_DIP_PROVNA PROVCOM
|
||||
FLAGS "HG"
|
||||
END
|
||||
|
||||
STRING ADF_COMNASC 50
|
||||
BEGIN
|
||||
PROMPT 1 8 "Comune di nascita "
|
||||
USE LF_COMUNI KEY 2
|
||||
INPUT DENCOM ADF_COMNASC
|
||||
#include <comdcod.h>
|
||||
OUTPUT ADF_COMNASC DENCOM
|
||||
OUTPUT F_DIP_PROVNA PROVCOM
|
||||
FIELD LF_DIPEND->COMUNENA
|
||||
END
|
||||
|
||||
STRING F_DIP_PROVNA 2
|
||||
BEGIN
|
||||
PROMPT 1 9 "Provincia di nasc."
|
||||
PROMPT 1 9 "Provincia di nascita "
|
||||
FIELD LF_DIPEND->PROVNA
|
||||
FLAGS "U"
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 4
|
||||
BEGIN
|
||||
PROMPT 0 11 "Residenza"
|
||||
END
|
||||
|
||||
STRING ADF_COMRES 50
|
||||
BEGIN
|
||||
PROMPT 1 12 "Comune "
|
||||
USE LF_COMUNI KEY 2
|
||||
INPUT DENCOM ADF_COMRES
|
||||
#include <comdcod.h>
|
||||
OUTPUT ADF_COMRES DENCOM
|
||||
OUTPUT F_DIP_PROVRE PROVCOM
|
||||
FIELD LF_DIPEND->COMRES
|
||||
END
|
||||
|
||||
STRING F_DIP_PROVRE 2
|
||||
BEGIN
|
||||
PROMPT 1 13 "Provincia "
|
||||
FIELD LF_DIPEND->PROVRES
|
||||
END
|
||||
|
||||
STRING F_DIP_INDRE 24
|
||||
BEGIN
|
||||
PROMPT 1 12 "Indirizzo "
|
||||
PROMPT 22 13 "Indirizzo "
|
||||
FIELD LF_DIPEND->INDRES
|
||||
END
|
||||
|
||||
STRING F_DIP_COMUNERE 20
|
||||
BEGIN
|
||||
PROMPT 1 13 "Comune "
|
||||
FIELD LF_DIPEND->COMRES
|
||||
END
|
||||
|
||||
STRING F_DIP_PROVRE 2
|
||||
BEGIN
|
||||
PROMPT 61 13 "Provincia "
|
||||
FIELD LF_DIPEND->PROVRES
|
||||
FLAGS "U"
|
||||
END
|
||||
|
||||
NUMBER F_DIP_QUALIFICA 2
|
||||
BEGIN
|
||||
PROMPT 1 15 "Qualifica "
|
||||
@ -142,7 +162,7 @@ BEGIN
|
||||
ITEM "10|Ministri di culto"
|
||||
ITEM "11|Eredi"
|
||||
FLAG "Z"
|
||||
WARNING "Manca la qualifica"
|
||||
WARNING "Qualifica errata"
|
||||
OUTPUT F_DIP_QUALIFICA
|
||||
END
|
||||
|
||||
@ -164,15 +184,16 @@ END
|
||||
NUMBER ADF_CODDIPDEC 6
|
||||
BEGIN
|
||||
PROMPT 1 16 "Codice dipendente deceduto "
|
||||
USE LF_DIPEND KEY 1 SELECT ((CODIP!=#ADF_DIP_CODDIP) && (CODDITTA=#ADF_CODDITTA))
|
||||
USE LF_DIPEND KEY 1 SELECT ((CODDITTA==#ADF_CODDITTA)&&(CODDIP!=#ADF_DIP_CODDIP)&&(QUALIFICA!="11"))
|
||||
FIELD LF_DIPEND->CODDIPDEC
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODIP ADF_CODDIPDEC
|
||||
DISPLAY "Codice dipendente" CODIP
|
||||
INPUT CODDIP ADF_CODDIPDEC
|
||||
DISPLAY "Codice dipendente" CODDIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT ADF_CODDIPDEC CODIP
|
||||
FLAGS "R"
|
||||
OUTPUT ADF_CODDIPDEC CODDIP
|
||||
VALIDATE NOT_EMPTY_CHECK_FIELD
|
||||
// CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
LISTBOX ADF_ASSFIS 1 40
|
||||
@ -193,19 +214,19 @@ BEGIN
|
||||
PROMPT 1 1 "Eredi"
|
||||
END
|
||||
|
||||
NUMBER F_DIP_CODEREDE0 5
|
||||
NUMBER F_DIP_CODEREDE0 6
|
||||
BEGIN
|
||||
PROMPT 3 2 "Codice "
|
||||
FIELD LF_DIPEND->CODEREDE0
|
||||
USE LF_DIPEND KEY 1 SELECT ((CODDITTA=#ADF_CODDITTA))
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODIP F_DIP_CODEREDE0
|
||||
DISPLAY "Codice" CODIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE0 CODIP
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODDIP F_DIP_CODEREDE0
|
||||
DISPLAY "Codice" CODDIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE0 CODDIP
|
||||
OUTPUT F_DIP_COGNEREDE0 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE0 NOME
|
||||
OUTPUT F_DIP_NOMEREDE0 NOME
|
||||
FLAG "DGR"
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
@ -222,19 +243,19 @@ BEGIN
|
||||
FLAG "D"
|
||||
END
|
||||
|
||||
NUMBER F_DIP_CODEREDE1 5
|
||||
NUMBER F_DIP_CODEREDE1 6
|
||||
BEGIN
|
||||
PROMPT 11 3 ""
|
||||
FIELD LF_DIPEND->CODEREDE1
|
||||
USE LF_DIPEND KEY 1 SELECT ((CODDITTA=#ADF_CODDITTA))
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODIP F_DIP_CODEREDE1
|
||||
DISPLAY "Codice" CODIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE1 CODIP
|
||||
OUTPUT F_DIP_COGNEREDE1 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE1 NOME
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODDIP F_DIP_CODEREDE1
|
||||
DISPLAY "Codice" CODDIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE1 CODDIP
|
||||
OUTPUT F_DIP_COGNEREDE1 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE1 NOME
|
||||
CHECKTYPE NORMAL
|
||||
FLAG "DR"
|
||||
END
|
||||
@ -251,19 +272,19 @@ BEGIN
|
||||
FLAG "D"
|
||||
END
|
||||
|
||||
NUMBER F_DIP_CODEREDE2 5
|
||||
NUMBER F_DIP_CODEREDE2 6
|
||||
BEGIN
|
||||
PROMPT 11 4 ""
|
||||
FIELD LF_DIPEND->CODEREDE2
|
||||
USE LF_DIPEND KEY 1 SELECT ((CODDITTA=#ADF_CODDITTA))
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODIP F_DIP_CODEREDE2
|
||||
DISPLAY "Codice" CODIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE2 CODIP
|
||||
OUTPUT F_DIP_COGNEREDE2 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE2 NOME
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODDIP F_DIP_CODEREDE2
|
||||
DISPLAY "Codice" CODDIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE2 CODDIP
|
||||
OUTPUT F_DIP_COGNEREDE2 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE2 NOME
|
||||
CHECKTYPE NORMAL
|
||||
FLAG "DR"
|
||||
END
|
||||
@ -280,19 +301,19 @@ BEGIN
|
||||
FLAG "D"
|
||||
END
|
||||
|
||||
NUMBER F_DIP_CODEREDE3 5
|
||||
NUMBER F_DIP_CODEREDE3 6
|
||||
BEGIN
|
||||
PROMPT 11 5 ""
|
||||
FIELD LF_DIPEND->CODEREDE3
|
||||
USE LF_DIPEND KEY 1 SELECT ((CODDITTA=#ADF_CODDITTA))
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODIP F_DIP_CODEREDE3
|
||||
DISPLAY "Codice" CODIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE3 CODIP
|
||||
OUTPUT F_DIP_COGNEREDE3 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE3 NOME
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODDIP F_DIP_CODEREDE3
|
||||
DISPLAY "Codice" CODDIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE3 CODDIP
|
||||
OUTPUT F_DIP_COGNEREDE3 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE3 NOME
|
||||
CHECKTYPE NORMAL
|
||||
FLAG "DR"
|
||||
END
|
||||
@ -309,19 +330,19 @@ BEGIN
|
||||
FLAG "D"
|
||||
END
|
||||
|
||||
NUMBER F_DIP_CODEREDE4 5
|
||||
NUMBER F_DIP_CODEREDE4 6
|
||||
BEGIN
|
||||
PROMPT 11 6 ""
|
||||
FIELD LF_DIPEND->CODEREDE4
|
||||
USE LF_DIPEND KEY 1 SELECT ((CODDITTA=#ADF_CODDITTA))
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODIP F_DIP_CODEREDE4
|
||||
DISPLAY "Codice" CODIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE4 CODIP
|
||||
OUTPUT F_DIP_COGNEREDE4 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE4 NOME
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODDIP F_DIP_CODEREDE4
|
||||
DISPLAY "Codice" CODDIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE4 CODDIP
|
||||
OUTPUT F_DIP_COGNEREDE4 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE4 NOME
|
||||
FLAG "DR"
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
@ -338,19 +359,19 @@ BEGIN
|
||||
FLAG "D"
|
||||
END
|
||||
|
||||
NUMBER F_DIP_CODEREDE5 5
|
||||
NUMBER F_DIP_CODEREDE5 6
|
||||
BEGIN
|
||||
PROMPT 11 7 ""
|
||||
FIELD LF_DIPEND->CODEREDE5
|
||||
USE LF_DIPEND KEY 1 SELECT ((CODDITTA=#ADF_CODDITTA))
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODIP F_DIP_CODEREDE5
|
||||
DISPLAY "Codice" CODIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE5 CODIP
|
||||
OUTPUT F_DIP_COGNEREDE5 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE5 NOME
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODDIP F_DIP_CODEREDE5
|
||||
DISPLAY "Codice" CODDIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE5 CODDIP
|
||||
OUTPUT F_DIP_COGNEREDE5 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE5 NOME
|
||||
FLAG "DR"
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
@ -367,19 +388,19 @@ BEGIN
|
||||
FLAG "D"
|
||||
END
|
||||
|
||||
NUMBER F_DIP_CODEREDE6 5
|
||||
NUMBER F_DIP_CODEREDE6 6
|
||||
BEGIN
|
||||
PROMPT 11 8 ""
|
||||
FIELD LF_DIPEND->CODEREDE6
|
||||
USE LF_DIPEND KEY 1 SELECT ((CODDITTA=#ADF_CODDITTA))
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODIP F_DIP_CODEREDE6
|
||||
DISPLAY "Codice" CODIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE6 CODIP
|
||||
OUTPUT F_DIP_COGNEREDE6 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE6 NOME
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODDIP F_DIP_CODEREDE6
|
||||
DISPLAY "Codice" CODDIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE6 CODDIP
|
||||
OUTPUT F_DIP_COGNEREDE6 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE6 NOME
|
||||
FLAG "DR"
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
@ -396,19 +417,19 @@ BEGIN
|
||||
FLAG "D"
|
||||
END
|
||||
|
||||
NUMBER F_DIP_CODEREDE7 5
|
||||
NUMBER F_DIP_CODEREDE7 6
|
||||
BEGIN
|
||||
PROMPT 11 9 ""
|
||||
FIELD LF_DIPEND->CODEREDE7
|
||||
USE LF_DIPEND KEY 1 SELECT ((CODDITTA=#ADF_CODDITTA))
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODIP F_DIP_CODEREDE7
|
||||
DISPLAY "Codice" CODIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE7 CODIP
|
||||
OUTPUT F_DIP_COGNEREDE7 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE7 NOME
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODDIP F_DIP_CODEREDE7
|
||||
DISPLAY "Codice" CODDIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE7 CODDIP
|
||||
OUTPUT F_DIP_COGNEREDE7 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE7 NOME
|
||||
FLAG "DR"
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
@ -425,19 +446,19 @@ BEGIN
|
||||
FLAG "D"
|
||||
END
|
||||
|
||||
NUMBER F_DIP_CODEREDE8 5
|
||||
NUMBER F_DIP_CODEREDE8 6
|
||||
BEGIN
|
||||
PROMPT 11 10 ""
|
||||
FIELD LF_DIPEND->CODEREDE8
|
||||
USE LF_DIPEND KEY 1 SELECT ((CODDITTA=#ADF_CODDITTA))
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODIP F_DIP_CODEREDE8
|
||||
DISPLAY "Codice" CODIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE8 CODIP
|
||||
OUTPUT F_DIP_COGNEREDE8 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE8 NOME
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODDIP F_DIP_CODEREDE8
|
||||
DISPLAY "Codice" CODDIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE8 CODDIP
|
||||
OUTPUT F_DIP_COGNEREDE8 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE8 NOME
|
||||
FLAG "DR"
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
@ -454,19 +475,19 @@ BEGIN
|
||||
FLAG "D"
|
||||
END
|
||||
|
||||
NUMBER F_DIP_CODEREDE9 5
|
||||
NUMBER F_DIP_CODEREDE9 6
|
||||
BEGIN
|
||||
PROMPT 11 11 ""
|
||||
FIELD LF_DIPEND->CODEREDE9
|
||||
USE LF_DIPEND KEY 1 SELECT ((CODDITTA=#ADF_CODDITTA))
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODIP F_DIP_CODEREDE9
|
||||
DISPLAY "Codice" CODIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE9 CODIP
|
||||
OUTPUT F_DIP_COGNEREDE9 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE9 NOME
|
||||
INPUT CODDITTA ADF_CODDITTA
|
||||
INPUT CODDIP F_DIP_CODEREDE9
|
||||
DISPLAY "Codice" CODDIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_DIP_CODEREDE9 CODDIP
|
||||
OUTPUT F_DIP_COGNEREDE9 COGNOME
|
||||
OUTPUT F_DIP_NOMEREDE9 NOME
|
||||
FLAG "DR"
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
236
m770/771200.cpp
236
m770/771200.cpp
@ -15,12 +15,10 @@
|
||||
#include <nditte.h>
|
||||
#include <defmask.h>
|
||||
#include "77lib.h"
|
||||
|
||||
#include "dipend.h"
|
||||
#include "quadroa.h"
|
||||
#include "quadroa3.h"
|
||||
#include "soctrasf.h"
|
||||
|
||||
#include "771200.h"
|
||||
#include "774200.h"
|
||||
|
||||
@ -65,9 +63,8 @@ class TQuadroA : public TRelation_application
|
||||
TRiporti _rip;
|
||||
int _file;
|
||||
bool _soc_trasf;
|
||||
TString _cognome,_nome;
|
||||
long _codditta,_codip;
|
||||
|
||||
TString _cognome,_nome; // dati soc.trasf.
|
||||
|
||||
private:
|
||||
// Handler relativi ai quadri A - A1 - A2 - A3
|
||||
static bool nprog_handler (TMask_field& f, KEY key);
|
||||
@ -83,14 +80,19 @@ class TQuadroA : public TRelation_application
|
||||
static bool QA_chech_ritdatlav (TMask_field& f, KEY key);
|
||||
static bool QA_check_ritdovute (TMask_field& f, KEY key);
|
||||
static bool QA_check_2527 (TMask_field& f, KEY key);
|
||||
static bool QA_A2_check_58 (TMask_field& f, KEY key);
|
||||
|
||||
static bool QA_A2_check_58 (TMask_field& f, KEY key);
|
||||
static bool QA_calcolo30 (TMask_field& f, KEY key);
|
||||
// Handler relativi alla manutenzione quadro A3
|
||||
static bool QA3_codip_handler (TMask_field& f, KEY key);
|
||||
static bool QA3_base_occupazionale(TMask_field& f, KEY key);
|
||||
static bool QA3_nprog (TMask_field& f, KEY key);
|
||||
|
||||
void AA3SettaCognomeNome(TMask& m);
|
||||
|
||||
protected:
|
||||
TString _sCognome, _sNome; // dati dipendente
|
||||
int _iNprog;
|
||||
long _codditta,_codip;
|
||||
|
||||
virtual bool user_create();
|
||||
virtual bool user_destroy();
|
||||
virtual int rewrite(const TMask& m);
|
||||
@ -105,8 +107,8 @@ class TQuadroA : public TRelation_application
|
||||
virtual void init_insert_mode(TMask& m);
|
||||
virtual void on_config_change();
|
||||
TMask* load_mask(int n);
|
||||
int anno_dic() const { return _anno_dic; }
|
||||
bool QuadroA() const { return _quadro == "A"; }
|
||||
int anno_dic() const { return _anno_dic; }
|
||||
bool QuadroA() const { return _quadro == "A"; }
|
||||
bool QuadroA1() const { return _quadro == "A1"; }
|
||||
bool QuadroA2() const { return _quadro == "A2"; }
|
||||
bool QuadroA3() const { return _quadro == "A3"; }
|
||||
@ -202,18 +204,20 @@ TMask* TQuadroA::load_mask(int n)
|
||||
m->set_handler(QAF_CODDITTA, codditta_hnd);
|
||||
if (!QuadroA3())
|
||||
{
|
||||
m->set_handler(QAF_NPROG, nprog_handler);
|
||||
m->set_handler(F_CODIP, codanagr_handler);
|
||||
}
|
||||
m->set_handler(QAF_NPROG, nprog_handler);
|
||||
m->set_handler(F_CODANAGDIP, codanagr_handler);
|
||||
m->set_handler(F_CODANAGDIPQA, codanagr_handler);
|
||||
}
|
||||
else
|
||||
{
|
||||
m->set_handler(QAF_NPROG, QA3_nprog);
|
||||
m->set_handler(F_CODIP, QA3_codip_handler);
|
||||
m->set_handler(F_CODANAGDIP, QA3_codip_handler);
|
||||
m->set_handler(F_BASEOCCUPA, QA3_base_occupazionale);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
m->disable(DLG_FINDREC);
|
||||
if (m)
|
||||
{
|
||||
if (QuadroA2())
|
||||
@ -230,11 +234,9 @@ TMask* TQuadroA::load_mask(int n)
|
||||
m->set_handler(F_RETCON56, QA_A2_check_58);
|
||||
// Se 27=0 => 25 deve = 0
|
||||
m->set_handler(F_IACOBBCD25, QA_check_2527);
|
||||
|
||||
// Calcola il totale imponibile (c.27)
|
||||
m->set_handler(F_AMMLORDO24, QA_tot_impon_hnd);
|
||||
m->set_handler(QAF_SVNSOGRIT, QA_tot_impon_hnd);
|
||||
|
||||
m->set_handler(F_DETCC, QA_tot_detraz_hnd);
|
||||
m->set_handler(F_DETFC, QA_tot_detraz_hnd);
|
||||
m->set_handler(F_DETAF, QA_tot_detraz_hnd);
|
||||
@ -244,14 +246,21 @@ TMask* TQuadroA::load_mask(int n)
|
||||
m->set_handler(F_AMRIODL38, QA_chech_ritdatlav);
|
||||
// Controlla che 42 = 39 + 40 - 41
|
||||
m->set_handler(F_AMMRITDOV, QA_check_ritdovute);
|
||||
// Calcolo: 30 = 23+27+28+29
|
||||
m->set_handler(F_COMPNETTI, QA_calcolo30);
|
||||
m->set_handler(F_TOTIMP26, QA_calcolo30);
|
||||
m->set_handler(F_AIEREP23, QA_calcolo30);
|
||||
m->set_handler(F_CCTAMMCONT, QA_calcolo30);
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
m->disable(DLG_FINDREC);
|
||||
|
||||
}
|
||||
if (QuadroA3())
|
||||
set_search_field(F_CODIPQUADRO);
|
||||
else
|
||||
set_search_field(QAF_NPROG);
|
||||
return _msk[n] = m;
|
||||
}
|
||||
|
||||
@ -266,10 +275,8 @@ bool TQuadroA::is_societa_trasformata(TMask& m)
|
||||
{
|
||||
_cognome = soc.get(SOC_DENOMIN);
|
||||
_nome = soc.get(SOC_NOME);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@ -284,7 +291,7 @@ bool TQuadroA::setta_nprog(TMask_field& f)
|
||||
|
||||
quadro.zero();
|
||||
quadro.put("CODDITTA", codditta);
|
||||
quadro.put("CODIP", coddip);
|
||||
quadro.put("CODDIP", coddip);
|
||||
|
||||
TRectype rec(quadro.curr());
|
||||
|
||||
@ -313,7 +320,7 @@ bool TQuadroA::codditta_hnd(TMask_field& f, KEY k)
|
||||
{
|
||||
if (k == K_TAB && !f.mask().is_running())
|
||||
{
|
||||
TString16 codditta; codditta << get_firm_770();
|
||||
TString16 codditta; codditta << app()._codditta;
|
||||
if (codditta != "0")
|
||||
{
|
||||
f.set(codditta);
|
||||
@ -325,15 +332,59 @@ bool TQuadroA::codditta_hnd(TMask_field& f, KEY k)
|
||||
|
||||
bool TQuadroA::codanagr_handler(TMask_field& f, KEY k)
|
||||
{
|
||||
if (k == K_TAB && f.focusdirty())
|
||||
if (!f.mask().is_running()) return TRUE;
|
||||
|
||||
/* if (k == K_ENTER)
|
||||
{
|
||||
TString16 dummy(f.get());
|
||||
if (dummy.not_empty())
|
||||
setta_nprog(f);
|
||||
const long coddip = atol(f.get());
|
||||
const long codditta = get_firm_770();
|
||||
if (!esiste_dipendente(codditta, coddip))
|
||||
return f.warning_box("Dipendente inesistente");
|
||||
}*/
|
||||
|
||||
// if (k == K_TAB && f.focusdirty())
|
||||
if (k == K_TAB)
|
||||
{
|
||||
const long coddip = atol(f.get());
|
||||
if (coddip != 0L)
|
||||
{
|
||||
const long codditta = get_firm_770();
|
||||
if (!esiste_dipendente(codditta, coddip))
|
||||
return f.warning_box("Dipendente inesistente");
|
||||
else
|
||||
setta_nprog(f);
|
||||
}
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void TQuadroA::AA3SettaCognomeNome(TMask& m)
|
||||
{
|
||||
const int iDlgCognome = QAF_COGNOME;
|
||||
const int iDlgNome = QAF_NOME;
|
||||
const int iDlgNProg = QAF_NPROG;
|
||||
const int iProg = m.get_int(iDlgNProg);
|
||||
TString sCognome(m.get(iDlgCognome));
|
||||
TString sNome;
|
||||
if (app()._codip != 0L)
|
||||
{
|
||||
TLocalisamfile dip (LF_DIPEND);
|
||||
dip.zero();
|
||||
dip.put(DIP_CODDITTA, app()._codditta);
|
||||
dip.put(DIP_CODIP, app()._codip);
|
||||
if (dip.read() == NOERR)
|
||||
{
|
||||
sCognome = dip.get("COGNOME");
|
||||
sNome = dip.get("NOME");
|
||||
app()._sCognome = sCognome;
|
||||
app()._sNome = sNome;
|
||||
app()._iNprog = iProg;
|
||||
m.set(iDlgCognome, sCognome);
|
||||
m.set(iDlgNome, sNome);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Passa al modo inserimento/modifica.
|
||||
bool TQuadroA::nprog_handler(TMask_field& f, KEY key)
|
||||
{
|
||||
@ -342,16 +393,21 @@ bool TQuadroA::nprog_handler(TMask_field& f, KEY key)
|
||||
if (key == K_TAB)
|
||||
{
|
||||
const int nprog = atoi(f.get());
|
||||
if (nprog==0) return TRUE;
|
||||
if (nprog==0)
|
||||
return TRUE;
|
||||
|
||||
const long coddip = f.mask().get_long(F_CODIP);
|
||||
const long codditta = get_firm_770();
|
||||
|
||||
if ( (is_erede(codditta,coddip)) && nprog > 1)
|
||||
return error_box("Il dipendente selezionato e' un erede: non e'\n possibile indicare piu' di un rigo sul quadro A");
|
||||
|
||||
f.mask().stop_run(K_AUTO_ENTER); // entra in modo modifica (se il record che ha chiave specificata esiste gia') oppure
|
||||
else
|
||||
{
|
||||
app()._codip = coddip;
|
||||
app().AA3SettaCognomeNome(f.mask());
|
||||
f.mask().stop_run(K_AUTO_ENTER); // entra in modo modifica (se il record che ha chiave specificata esiste gia') oppure
|
||||
// inserimento (se trova che non esiste)
|
||||
}
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
@ -370,12 +426,23 @@ bool TQuadroA::QA3_nprog(TMask_field& f, KEY key)
|
||||
bool TQuadroA::QA3_codip_handler(TMask_field& f, KEY key)
|
||||
{
|
||||
if (!f.mask().is_running()) return TRUE;
|
||||
|
||||
|
||||
if (key == K_ENTER)
|
||||
{
|
||||
const long coddip = atol(f.get());
|
||||
if (coddip==0) return TRUE;
|
||||
const long codditta = get_firm_770();
|
||||
if (!esiste_dipendente(codditta, coddip))
|
||||
return f.warning_box("Dipendente inesistente");
|
||||
}
|
||||
|
||||
if (key == K_TAB)
|
||||
{
|
||||
const long coddip = atol(f.get());
|
||||
if (coddip==0) return TRUE;
|
||||
|
||||
const long codditta = get_firm_770();
|
||||
if (!esiste_dipendente(codditta, coddip))
|
||||
return f.warning_box("Dipendente inesistente");
|
||||
f.mask().stop_run(K_AUTO_ENTER); // entra in modo modifica (se il record che ha chiave specificata esiste gia') oppure
|
||||
// inserimento (se trova che non esiste)
|
||||
}
|
||||
@ -383,18 +450,14 @@ bool TQuadroA::QA3_codip_handler(TMask_field& f, KEY key)
|
||||
}
|
||||
|
||||
// Se CF dat.lav.prec. e' vuoto => mette a ZERO il 19 e lo disabilita
|
||||
// 26.6.96 azzera soltanto
|
||||
bool TQuadroA::QA_cfdlprec_hnd(TMask_field& f, KEY k)
|
||||
{
|
||||
if (k == K_TAB)
|
||||
{
|
||||
TString tmp(f.get());
|
||||
if (tmp.empty())
|
||||
{
|
||||
f.mask().set(F_CAUSA, 0L);
|
||||
f.mask().disable(F_CAUSA);
|
||||
}
|
||||
else
|
||||
f.mask().enable(F_CAUSA);
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
@ -450,22 +513,31 @@ bool TQuadroA::QA_A2_check_58(TMask_field& f, KEY k)
|
||||
if (k == K_TAB || k == K_ENTER)
|
||||
{
|
||||
TMask& m = f.mask();
|
||||
TString16 cod(f.get());
|
||||
TString16 cod(f.get());
|
||||
cod.upper();
|
||||
const long codditta = f.mask().get_long(QAF_CODDITTA);
|
||||
const long coddip = f.mask().get_long(F_CODIP);
|
||||
if (cod == "B")
|
||||
{
|
||||
if (!QA_cerca_codA(codditta, coddip, app()._quadro))
|
||||
return error_box("Non esiste nessun record con 58=A per questo dipendente");
|
||||
// Nasconde prompt 770 mostra prompt 730
|
||||
m.hide(-6);
|
||||
m.show(-7);
|
||||
return error_box(app().QuadroA2() ?
|
||||
"Non esiste nessun record con 9=A per questo dipendente" :
|
||||
"Non esiste nessun record con 58=A per questo dipendente");
|
||||
else
|
||||
{
|
||||
// Nasconde prompt 770 mostra prompt 730
|
||||
m.disable(-G_ALL);
|
||||
m.hide(-G_770);
|
||||
// m.reset(-G_ALL);
|
||||
m.show(-G_730);
|
||||
}
|
||||
}
|
||||
// Nasconde prompt 730 mostra prompt 770
|
||||
else
|
||||
{
|
||||
m.hide(-7);
|
||||
m.show(-6);
|
||||
m.hide(-G_730);
|
||||
m.show(-G_770);
|
||||
m.enable(-G_ALL);
|
||||
}
|
||||
}
|
||||
return TRUE;
|
||||
@ -478,9 +550,7 @@ bool TQuadroA::QA_comp_netti_hnd (TMask_field& f, KEY k)
|
||||
real denaro = f.mask().get_real(F_DENARO);
|
||||
real natura = f.mask().get_real(F_NATURA);
|
||||
real cobbdip = f.mask().get_real(F_COBBDIP21);
|
||||
|
||||
real compnetti = denaro + natura - cobbdip;
|
||||
|
||||
f.mask().set(F_COMPNETTI, compnetti);
|
||||
f.send_key(K_TAB,F_COMPNETTI);
|
||||
}
|
||||
@ -510,22 +580,36 @@ bool TQuadroA::QA_tot_detraz_hnd (TMask_field& f, KEY k)
|
||||
{
|
||||
if (k == K_TAB)
|
||||
{
|
||||
bool ForzaRicalcolo = FALSE;
|
||||
real totdet36 = f.mask().get_real(F_TOTDET36);
|
||||
|
||||
ForzaRicalcolo = f.focusdirty();
|
||||
TMask& m = f.mask();
|
||||
real totdet36 = m.get_real(F_TOTDET36);
|
||||
real detcc = m.get_real(F_DETCC);
|
||||
real detfc = m.get_real(F_DETFC);
|
||||
real detaf = m.get_real(F_DETAF);
|
||||
real detld = m.get_real(F_DETLD);
|
||||
real deto = m.get_real(F_DETO);
|
||||
totdet36 = detcc + detfc + detaf + detld + deto;
|
||||
m.set(F_TOTDET36, totdet36);
|
||||
// disabilita il campo 37 se uno almeno da 32 a 36 e' compilato
|
||||
if (totdet36 != ZERO)
|
||||
m.disable(F_TOTDET36);
|
||||
else
|
||||
m.enable(F_TOTDET36);
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
if (ForzaRicalcolo)
|
||||
{
|
||||
real detcc = f.mask().get_real(F_DETCC);
|
||||
real detfc = f.mask().get_real(F_DETFC);
|
||||
real detaf = f.mask().get_real(F_DETAF);
|
||||
real detld = f.mask().get_real(F_DETLD);
|
||||
real deto = f.mask().get_real(F_DETO);
|
||||
|
||||
totdet36 = detcc + detfc + detaf + detld + deto;
|
||||
f.mask().set(F_TOTDET36, totdet36);
|
||||
}
|
||||
bool TQuadroA::QA_calcolo30(TMask_field& f, KEY k)
|
||||
{
|
||||
if (k == K_TAB)
|
||||
{
|
||||
TMask& m = f.mask();
|
||||
real c30 = m.get_real(F_TOTIMP29);
|
||||
real c23 = m.get_real(F_COMPNETTI);
|
||||
real c27 = m.get_real(F_TOTIMP26);
|
||||
real c28 = m.get_real(F_AIEREP23);
|
||||
real c29 = m.get_real(F_CCTAMMCONT);
|
||||
c30 = c23 + c27 + c28 + c29;
|
||||
m.set(F_TOTIMP29, c30);
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
@ -535,7 +619,7 @@ bool TQuadroA::QA3_base_occupazionale(TMask_field& f , KEY k)
|
||||
if (k == K_SPACE)
|
||||
{
|
||||
TString appname(30);
|
||||
appname.format("773mod -1 771200i 37 \"%s\" 0", "Base occupati");
|
||||
appname.format("773mod -1 771200i 37 \"%s\" 0", "Base occupazionale");
|
||||
TExternal_app a(appname);
|
||||
a.run();
|
||||
}
|
||||
@ -593,7 +677,7 @@ void TQuadroA::registra_record2_A3(const TMask& m)
|
||||
|
||||
int TQuadroA::rewrite(const TMask& m)
|
||||
{
|
||||
if (_tipoq == '3' && _soc_trasf)
|
||||
if (QuadroA3() && _soc_trasf)
|
||||
registra_record2_A3(m);
|
||||
|
||||
m.autosave(_rel);
|
||||
@ -605,7 +689,7 @@ int TQuadroA::rewrite(const TMask& m)
|
||||
|
||||
int TQuadroA::write(const TMask& m)
|
||||
{
|
||||
if (_tipoq == '3' && _soc_trasf)
|
||||
if (QuadroA3() && _soc_trasf)
|
||||
registra_record2_A3(m);
|
||||
|
||||
m.autosave(_rel);
|
||||
@ -630,7 +714,7 @@ void TQuadroA::cancella_record2_A3()
|
||||
|
||||
bool TQuadroA::remove()
|
||||
{
|
||||
if (_tipoq == '3' && _soc_trasf)
|
||||
if (QuadroA3() && _soc_trasf)
|
||||
cancella_record2_A3();
|
||||
_registra = TRUE;
|
||||
return TRelation_application::remove();
|
||||
@ -663,6 +747,8 @@ bool TQuadroA::user_create()
|
||||
_qd = new TLocalisamfile(_file);
|
||||
_rel = new TRelation(_file);
|
||||
|
||||
_codditta = get_firm_770();
|
||||
|
||||
set_search_field(F_CODANAGDIP);
|
||||
|
||||
_registra = FALSE;
|
||||
@ -789,35 +875,33 @@ void TQuadroA::init_query_mode(TMask& m)
|
||||
{
|
||||
m.set(QAF_ANNODIC, _anno_dic);
|
||||
|
||||
if (_tipoq == '3')
|
||||
if (QuadroA3())
|
||||
{
|
||||
_soc_trasf = is_societa_trasformata(m);
|
||||
if (_soc_trasf)
|
||||
carica_record2_A3(m);
|
||||
}
|
||||
|
||||
if (_tipoq != '3')
|
||||
else
|
||||
{
|
||||
// forza il ricalcolo dell'ultimo numero disponibile
|
||||
TString16 dummy(m.get(QAF_NPROG));
|
||||
if (dummy.not_empty())
|
||||
setta_nprog(m.field(QAF_NPROG));
|
||||
}
|
||||
m.send_key(K_SHIFT+K_CTRL+'h', -1); // nasconde (hide) group 1 - Scelta ANAGR
|
||||
m.send_key(K_SHIFT+K_CTRL+'s', -2); // abilita (show) group 2 - Ricerca su DATI PERC
|
||||
}
|
||||
m.send_key(K_SHIFT+K_CTRL+'h', -1); // hide group 1 -nasconde DIPEND.
|
||||
m.send_key(K_SHIFT+K_CTRL+'s', -2); // show group 2 -Ricerca su QUADRO A
|
||||
}
|
||||
|
||||
void TQuadroA::init_query_insert_mode(TMask& m)
|
||||
{
|
||||
m.set(QAF_ANNODIC, _anno_dic);
|
||||
|
||||
m.send_key(K_SHIFT+K_CTRL+'h', -2); // group 3 Nasconde ricerca su PERC
|
||||
m.send_key(K_SHIFT+K_CTRL+'s', -1); // group 1 Ricerca su ANAGR
|
||||
m.send_key(K_SHIFT+K_CTRL+'h', -2); // group 2 Nasconde ricerca su QUADROA
|
||||
m.send_key(K_SHIFT+K_CTRL+'s', -1); // group 1 Ricerca su ANAGR.DIPENDENTI
|
||||
}
|
||||
|
||||
void TQuadroA::init_modify_mode(TMask& m)
|
||||
{
|
||||
if (_tipoq == '3')
|
||||
if (QuadroA3())
|
||||
{
|
||||
_codditta = m.get_long(QAF_CODDITTA);
|
||||
_codip = m.get_long(F_CODIP);
|
||||
@ -835,7 +919,7 @@ void TQuadroA::init_modify_mode(TMask& m)
|
||||
|
||||
void TQuadroA::init_insert_mode(TMask& m)
|
||||
{
|
||||
if (_tipoq == '3')
|
||||
if (QuadroA3())
|
||||
{
|
||||
_codditta = m.get_long(QAF_CODDITTA);
|
||||
_codip = m.get_long(F_CODIP);
|
||||
|
@ -177,3 +177,9 @@
|
||||
#define QA2F_730NLIQ 419
|
||||
|
||||
|
||||
#define F_CODANAGDIPQA 420
|
||||
|
||||
#define G_ALL 6
|
||||
#define G_730 7
|
||||
#define G_770 9
|
||||
|
||||
|
@ -3,6 +3,9 @@ TOOLBAR "" 0 20 0 2
|
||||
#include <toolbar.h>
|
||||
ENDPAGE
|
||||
|
||||
#define G_DIPEND 1
|
||||
#define G_QUADROA 2
|
||||
|
||||
PAGE "MODULO 770 - Manutenzione Quadro A" -1 -1 78 21
|
||||
|
||||
GROUPBOX DLG_NULL 78 3
|
||||
@ -43,7 +46,7 @@ NUMBER F_CODIP 6
|
||||
BEGIN
|
||||
PROMPT 80 80 ""
|
||||
FLAGS "D"
|
||||
FIELD LF_QUAA->CODIP
|
||||
FIELD LF_QUAA->CODDIP
|
||||
CHECKTYPE REQUIRED
|
||||
KEY 1
|
||||
END
|
||||
@ -53,17 +56,38 @@ BEGIN
|
||||
PROMPT 1 8 "@bCodice "
|
||||
USE LF_DIPEND KEY 1 SELECT ((CODDITTA=#QAF_CODDITTA))
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODIP F_CODIP
|
||||
DISPLAY "Codice " CODIP
|
||||
INPUT CODDIP F_CODANAGDIP
|
||||
DISPLAY "Codice " CODDIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_CODANAGDIP CODIP
|
||||
OUTPUT F_CODANAGDIP CODDIP
|
||||
OUTPUT QAF_COGNOME COGNOME
|
||||
OUTPUT QAF_NOME NOME
|
||||
ADD RUN 773mod -1 771150a 45 "Anagrafica dipendenti"
|
||||
MESSAGE COPY, F_CODIP
|
||||
MESSAGE COPY, F_CODIP
|
||||
FLAGS "H"
|
||||
GROUP G_DIPEND
|
||||
END
|
||||
|
||||
NUMBER F_CODANAGDIPQA 6
|
||||
BEGIN
|
||||
PROMPT 1 8 "@bCodice "
|
||||
USE LF_QUAA KEY 1 SELECT ((CODDITTA=#QAF_CODDITTA))
|
||||
JOIN LF_DIPEND KEY 1 INTO CODDITTA=CODDITTA CODDIP=CODDIP
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODDIP F_CODANAGDIPQA
|
||||
DISPLAY "Codice " CODDIP
|
||||
DISPLAY "Cognome@24" LF_DIPEND->COGNOME
|
||||
DISPLAY "Nome@20" LF_DIPEND->NOME
|
||||
DISPLAY "N°@4" NPROG
|
||||
OUTPUT F_CODANAGDIPQA CODDIP
|
||||
OUTPUT QAF_COGNOME LF_DIPEND->COGNOME
|
||||
OUTPUT QAF_NOME LF_DIPEND->NOME
|
||||
MESSAGE COPY, F_CODIP
|
||||
GROUP G_QUADROA
|
||||
END
|
||||
|
||||
|
||||
STRING QAF_COGNOME 24
|
||||
BEGIN
|
||||
PROMPT 25 8 ""
|
||||
@ -81,15 +105,16 @@ BEGIN
|
||||
PROMPT 1 10 "@bNumero "
|
||||
CHECKTYPE REQUIRED
|
||||
USE LF_QUAA KEY 1 SELECT ((CODDITTA=#QAF_CODDITTA))
|
||||
JOIN LF_DIPEND KEY 1 INTO CODIP=CODIP
|
||||
JOIN LF_DIPEND KEY 1 INTO CODDITTA=CODDITTA CODDIP=CODDIP
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODIP F_CODIP
|
||||
INPUT CODDIP F_CODIP
|
||||
INPUT NPROG QAF_NPROG
|
||||
DISPLAY "Codice@10" CODIP
|
||||
DISPLAY "Codice@10" CODDIP
|
||||
DISPLAY "Cognome@24" LF_DIPEND->COGNOME
|
||||
DISPLAY "Nome@20" LF_DIPEND->NOME
|
||||
DISPLAY "N°@4" NPROG
|
||||
OUTPUT F_CODANAGDIP CODIP
|
||||
OUTPUT F_CODANAGDIP CODDIP
|
||||
OUTPUT F_CODANAGDIPQA CODDIP
|
||||
OUTPUT QAF_NPROG NPROG
|
||||
FIELD LF_QUAA->NPROG
|
||||
KEY 1
|
||||
|
197
m770/771200b.uml
197
m770/771200b.uml
@ -15,22 +15,24 @@ BEGIN
|
||||
FLAGS "H"
|
||||
FIELD LF_QUAA->CODDITTA
|
||||
KEY 1
|
||||
GROUP 8
|
||||
MESSAGE COPY,1@
|
||||
END
|
||||
|
||||
NUMBER F_CODIP 5
|
||||
NUMBER F_CODIP 6
|
||||
BEGIN
|
||||
PROMPT 17 1 ""
|
||||
USE LF_DIPEND KEY 1
|
||||
FIELD LF_QUAA->CODIP
|
||||
FIELD LF_QUAA->CODDIP
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODIP F_CODIP
|
||||
INPUT CODDIP F_CODIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT QAF_COGNOME COGNOME
|
||||
OUTPUT QAF_NOME NOME
|
||||
CHECKTYPE REQUIRED
|
||||
FLAGS "DG"
|
||||
GROUP 8
|
||||
MESSAGE COPY,2@
|
||||
KEY 1
|
||||
END
|
||||
@ -39,6 +41,7 @@ STRING QAF_COGNOME 24
|
||||
BEGIN
|
||||
PROMPT 25 1 ""
|
||||
FLAGS "DG"
|
||||
GROUP 8
|
||||
MESSAGE COPY,3@
|
||||
END
|
||||
|
||||
@ -46,6 +49,7 @@ STRING QAF_NOME 20
|
||||
BEGIN
|
||||
PROMPT 49 1 ""
|
||||
FLAGS "DG"
|
||||
GROUP 8
|
||||
MESSAGE COPY,4@
|
||||
END
|
||||
|
||||
@ -54,7 +58,8 @@ BEGIN
|
||||
PROMPT 72 1 ""
|
||||
FIELD LF_QUAA->NPROG
|
||||
FLAGS "DG"
|
||||
KEY 1
|
||||
KEY 1
|
||||
GROUP 8
|
||||
MESSAGE COPY,5@
|
||||
END
|
||||
|
||||
@ -72,6 +77,7 @@ BEGIN
|
||||
ITEM "C|Area produzione"
|
||||
ITEM "D|Aree non definite"
|
||||
FIELD LF_QUAA->AREAATT
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
STRING QAF_TIPOATT 1
|
||||
@ -85,18 +91,21 @@ BEGIN
|
||||
ITEM "C|Formazione lavoro"
|
||||
OUTPUT QAF_TIPOATT
|
||||
FIELD LF_QUAA->TIPO
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_NUMGIORNI 3
|
||||
BEGIN
|
||||
PROMPT 55 4 "15 numero giorni "
|
||||
FIELD LF_QUAA->NUMGIO
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
DATE F_DATAFR
|
||||
BEGIN
|
||||
PROMPT 2 5 "16 data fine rapporto "
|
||||
FIELD LF_QUAA->DATAFR
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER QAF_GIODET 3
|
||||
@ -105,6 +114,7 @@ BEGIN
|
||||
FIELD LF_QUAA->NUMGIODET
|
||||
NUM_EXPR {(#THIS>=0)&&(#THIS<=366)}
|
||||
WARNING "I giorni detrazione per lav.dip. devono essere compresi tra 0 e 366"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
STRING F_CODFISDL 16
|
||||
@ -113,6 +123,7 @@ BEGIN
|
||||
FIELD LF_QUAA->CFDLPREC
|
||||
FLAGS "U"
|
||||
VALIDATE CF_FUNC F_CODFISDL
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_CAUSA 1
|
||||
@ -127,7 +138,10 @@ BEGIN
|
||||
ITEM "3|Conferimento o cessione a titolo oneroso"
|
||||
ITEM "4|Esercizio della facolta' prevista da art.23, comma 7, D.P.R. 600/73"
|
||||
ITEM "5|Altro"
|
||||
ITEM "6|Forme pensionistiche complementari (I num.d'ordine)"
|
||||
ITEM "7|Forme pensionistiche complementari (II num.d'ordine)"
|
||||
OUTPUT F_CAUSA
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 3
|
||||
@ -140,6 +154,7 @@ BEGIN
|
||||
PROMPT 2 9 "20 in denaro "
|
||||
FIELD LF_QUAA->DENARO
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_NATURA 15
|
||||
@ -147,6 +162,7 @@ BEGIN
|
||||
PROMPT 45 9 "21 in natura "
|
||||
FIELD LF_QUAA->NATURA
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_COBBDIP21 15
|
||||
@ -155,6 +171,7 @@ BEGIN
|
||||
HELP "Contributi obbligatori a carico del dipendente"
|
||||
FIELD LF_QUAA->COBBDIP
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_COMPNETTI 15
|
||||
@ -162,9 +179,9 @@ BEGIN
|
||||
PROMPT 45 11 "23 compensi netti"
|
||||
FIELD LF_QUAA->COMPNETTI
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
|
||||
GROUPBOX DLG_NULL 78 4
|
||||
BEGIN
|
||||
PROMPT 1 13 "@bIndennita' e assegni ex Art.48, C.4 e 5, T.U.I.R."
|
||||
@ -175,6 +192,7 @@ BEGIN
|
||||
PROMPT 2 14 "24 ammontare lordo "
|
||||
FIELD LF_QUAA->AMMLORDO
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_IACOBBCD25 15
|
||||
@ -183,6 +201,7 @@ BEGIN
|
||||
FIELD LF_QUAA->IACOBBCD
|
||||
PICTURE "."
|
||||
HELP "Contributi obbligatori a carico del dipendente"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER QAF_SVNSOGRIT 15
|
||||
@ -190,6 +209,7 @@ BEGIN
|
||||
PROMPT 2 15 "26 som.v.non sog.rit."
|
||||
FIELD LF_QUAA->NORIT
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_TOTIMP26 15
|
||||
@ -197,6 +217,7 @@ BEGIN
|
||||
PROMPT 39 15 "27 totale imponibile "
|
||||
FIELD LF_QUAA->TOTIMP
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
@ -214,7 +235,7 @@ BEGIN
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
NUMBER F_CODIP 5
|
||||
NUMBER F_CODIP 6
|
||||
BEGIN
|
||||
PROMPT 17 1 ""
|
||||
FLAGS "DG"
|
||||
@ -248,20 +269,23 @@ BEGIN
|
||||
FIELD LF_QUAA->AIENTIPREV
|
||||
PICTURE "."
|
||||
HELP "Assegni e indennita' erogati da enti previdenziali"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_CCTAMMCONT 15
|
||||
BEGIN
|
||||
PROMPT 2 4 "29 ammontare compensi corrisposti da terzi "
|
||||
FIELD LF_QUAA->CCTAMMCONT
|
||||
PICTURE "."
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_TOTIMP29 15
|
||||
BEGIN
|
||||
PROMPT 2 5 "30 totale imponibile "
|
||||
FIELD LF_QUAA->TOTIMP2
|
||||
PICTURE "."
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_ICTOTIMP30 15
|
||||
@ -270,6 +294,7 @@ BEGIN
|
||||
FIELD LF_QUAA->ICTOTIMP
|
||||
PICTURE "."
|
||||
HELP "Imposta corrispondente al totale imponibile"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_DETCC 15
|
||||
@ -278,6 +303,7 @@ BEGIN
|
||||
FIELD LF_QUAA->DETCC
|
||||
PICTURE "."
|
||||
HELP "Detrazione per coniuge a carico"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_DETFC 15
|
||||
@ -286,6 +312,7 @@ BEGIN
|
||||
FIELD LF_QUAA->DETFC
|
||||
PICTURE "."
|
||||
HELP "Detrazione per figli a carico"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_DETAF 15
|
||||
@ -294,6 +321,7 @@ BEGIN
|
||||
FIELD LF_QUAA->DETAF
|
||||
PICTURE "."
|
||||
HELP "Detrazione per altri famigliari a carico"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_DETLD 15
|
||||
@ -302,6 +330,7 @@ BEGIN
|
||||
FIELD LF_QUAA->DETLD
|
||||
PICTURE "."
|
||||
HELP "Detrazione per lavoro dipendente"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_DETO 15
|
||||
@ -310,6 +339,7 @@ BEGIN
|
||||
FIELD LF_QUAA->DETO
|
||||
PICTURE "."
|
||||
HELP "Detrazione per oneri"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_TOTDET36 15
|
||||
@ -317,22 +347,24 @@ BEGIN
|
||||
PROMPT 41 9 "37 totale detrazione "
|
||||
FIELD LF_QUAA->TOTDET
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER QAF_INCDETFC 15
|
||||
BEGIN
|
||||
PROMPT 2 10 "38 inc.detr.figli a ca."
|
||||
FIELD LF_QUAA->INCDETFC
|
||||
PICTURE "."
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
|
||||
NUMBER F_AMRIOT37 15
|
||||
BEGIN
|
||||
PROMPT 2 11 "39 ammontare delle ritenute operate da terzi"
|
||||
FIELD LF_QUAA->AMRIOT
|
||||
PICTURE "."
|
||||
HELP "Ammontare delle ritenute operate da terzi"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_AMRIODL38 15
|
||||
@ -341,6 +373,7 @@ BEGIN
|
||||
FIELD LF_QUAA->AMRIODL
|
||||
PICTURE "."
|
||||
HELP "Ammontare delle ritenute operate dal datore di lavoro"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_ECCRITRIMB 15
|
||||
@ -349,6 +382,7 @@ BEGIN
|
||||
FIELD LF_QUAA->ECCRITRIMB
|
||||
PICTURE "."
|
||||
HELP "Eccedenza delle ritenute da rimborsare"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_AMMRITDOV 15
|
||||
@ -357,6 +391,7 @@ BEGIN
|
||||
FIELD LF_QUAA->AMMRITDOV
|
||||
PICTURE "."
|
||||
HELP "Ammontare delle ritenute dovute"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_ERSPSAN41 15
|
||||
@ -365,6 +400,7 @@ BEGIN
|
||||
FIELD LF_QUAA->ERSPSAN
|
||||
PICTURE "."
|
||||
HELP "Erogazioni per spese sanitarie, anche in forma assicurativa"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_PRASSVI42 15
|
||||
@ -373,6 +409,7 @@ BEGIN
|
||||
FIELD LF_QUAA->PRASSVI
|
||||
PICTURE "."
|
||||
HELP "Premi di assicurazione vita e infortuni"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_CONPRECO43 15
|
||||
@ -381,6 +418,7 @@ BEGIN
|
||||
FIELD LF_QUAA->CONPRECO
|
||||
PICTURE "."
|
||||
HELP "Contributi per previdenza complementare"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
@ -398,7 +436,7 @@ BEGIN
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
NUMBER F_CODIP 5
|
||||
NUMBER F_CODIP 6
|
||||
BEGIN
|
||||
PROMPT 17 1 ""
|
||||
FLAGS "DG"
|
||||
@ -437,6 +475,7 @@ BEGIN
|
||||
FIELD LF_QUAA->COBBDIP2
|
||||
PICTURE "."
|
||||
HELP "Contributi obbligatori a carico del dipendente"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_AMMIMP45 15
|
||||
@ -445,27 +484,31 @@ BEGIN
|
||||
FIELD LF_QUAA->AMMIMP
|
||||
PICTURE "."
|
||||
HELP "Ammontare imponibile"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_DETIMPOS46 15
|
||||
BEGIN
|
||||
PROMPT 2 5 "48 detrazioni d'imposta"
|
||||
FIELD LF_QUAA->DETIMPOS
|
||||
PICTURE "."
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_RITESEG47 15
|
||||
BEGIN
|
||||
PROMPT 41 5 "49 ritenuta eseguita "
|
||||
FIELD LF_QUAA->RITESEG
|
||||
PICTURE "."
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_SVNASSRI48 15
|
||||
BEGIN
|
||||
PROMPT 2 6 "50 altre somme e valori non ass.a ritenuta "
|
||||
FIELD LF_QUAA->SVNASSRI
|
||||
PICTURE "."
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_AIFCSSN49 15
|
||||
@ -474,6 +517,7 @@ BEGIN
|
||||
FIELD LF_QUAA->AIFCSSN
|
||||
PICTURE "."
|
||||
HELP "Ammontare imponibile ai fini del C.S.S.N."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
@ -500,6 +544,7 @@ BEGIN
|
||||
ITEM "E|Retribuzione insufficiente"
|
||||
ITEM "F|Nel caso di situazioni per le quali dovrebbero essere indicati piu' codici"
|
||||
OUTPUT F_CONEFF50
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 3
|
||||
@ -512,6 +557,7 @@ BEGIN
|
||||
PROMPT 2 14 "53 imposta vers. "
|
||||
FIELD LF_QUAA->IMPVERS
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_ISOPTAS52 15
|
||||
@ -519,7 +565,8 @@ BEGIN
|
||||
PROMPT 37 14 "54 interessi "
|
||||
FIELD LF_QUAA->INTERE
|
||||
PICTURE "."
|
||||
END
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 3
|
||||
BEGIN
|
||||
@ -531,6 +578,7 @@ BEGIN
|
||||
PROMPT 2 17 "55 contr. versato"
|
||||
FIELD LF_QUAA->CSSN95CV
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_ISOPTAS54 15
|
||||
@ -538,6 +586,7 @@ BEGIN
|
||||
PROMPT 37 17 "56 interessi "
|
||||
FIELD LF_QUAA->INTERE2
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
@ -555,7 +604,7 @@ BEGIN
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
NUMBER F_CODIP 5
|
||||
NUMBER F_CODIP 6
|
||||
BEGIN
|
||||
PROMPT 17 1 ""
|
||||
FLAGS "DG"
|
||||
@ -590,9 +639,8 @@ END
|
||||
|
||||
STRING F_CNEFF55 1
|
||||
BEGIN
|
||||
PROMPT 2 4 "57 conguagli n/eff.assist.95 "
|
||||
PROMPT 2 4 "57 conguagli n/eff. "
|
||||
FIELD LF_QUAA->CNEFF
|
||||
HELP "Conguagli non effettuati relativi all'assistenza 1995"
|
||||
SHEET "Codice|Descrizione@85"
|
||||
INPUT F_CNEFF55
|
||||
ITEM " |Niente"
|
||||
@ -604,23 +652,24 @@ BEGIN
|
||||
ITEM "F|Nel caso di situazioni per le quali dovrebbero essere indicati piu' codici"
|
||||
ITEM "G|Rimborso non effettuato o rimborso effettuato parzialmente"
|
||||
OUTPUT F_CNEFF55
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
STRING F_RETCON56 1
|
||||
BEGIN
|
||||
PROMPT 37 4 "58 rettifica conguaglio "
|
||||
FIELD LF_QUAA->RETCON
|
||||
SHEET "Codice|Descrizione@65"
|
||||
SHEET "Cod.|Descrizione@200"
|
||||
INPUT F_RETCON56
|
||||
ITEM " | "
|
||||
ITEM "A|Rettifica da parte dei sostituti o dei CAAF degli importi da conguagliare indicati nei mod.730-3,4 e già consegnati entro il 15.5.96 (per il primo numero d'ordine)"
|
||||
ITEM "B|Rettifica da parte dei sostituti o dei CAAF degli importi da conguagliare indicati nei mod.730-3,4 e già consegnati entro il 15.5.96 (per il primo numero d'ordine)"
|
||||
ITEM "A|Rettifica da parte dei sostituti o dei CAAF degli importi da conguagliare indicati nei mod.730-3,4 e già consegnati entro il 15.5.96 (I n. d'ordine)"
|
||||
ITEM "B|Rettifica da parte dei sostituti o dei CAAF degli importi da conguagliare indicati nei mod.730-3,4 e già consegnati entro il 15.5.96 (II n. d'ordine)"
|
||||
ITEM "C|Conguaglio a seguito di rettifica di una precedente comunicazione tardivamente pervenuta al sostituto"
|
||||
ITEM "D|Conguaglio a seguito di rettifica di una precedente comunicazione tempestivamente perventuta al sostituto ma per la quale non è stato effettuato il conguaglio nel mese di giugno"
|
||||
ITEM "D|Conguaglio a seguito di rettifica prec. comunic. tempestivam. perventuta al sostituto ma per la quale non è stato effettuato il conguaglio nel mese di giugno"
|
||||
ITEM "E|Conguaglio tardivo per mod.730-4 pervenuto tardivamente"
|
||||
ITEM "F|Conguaglio tardivo per causa dipendente dal sostituto d'imposta"
|
||||
OUTPUT F_RETCON56
|
||||
FLAGS "U"
|
||||
FLAGS "U"
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 4
|
||||
@ -633,6 +682,7 @@ BEGIN
|
||||
PROMPT 2 7 "59 impo. rimborsata "
|
||||
FIELD LF_QUAA->IMPRIMB
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_IMPVER58 15
|
||||
@ -640,6 +690,7 @@ BEGIN
|
||||
PROMPT 44 7 "60 imposta versata"
|
||||
FIELD LF_QUAA->IMPVER
|
||||
PICTURE "."
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
NUMBER F_INTIRPEF59 15
|
||||
@ -648,6 +699,7 @@ BEGIN
|
||||
FIELD LF_QUAA->INTIRPEF
|
||||
PICTURE "."
|
||||
HELP "Interessi IRPEF"
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 4
|
||||
@ -658,26 +710,38 @@ END
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 11 "62 impo. versata "
|
||||
GROUP 6
|
||||
GROUP G_770
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 44 11 "63 interessi "
|
||||
// GROUP 7
|
||||
PROMPT 2 11 "62 i.ver/tr.IRPEF"
|
||||
// FLAGS "H"
|
||||
GROUP G_730
|
||||
END
|
||||
|
||||
NUMBER F_IMPVER60 15
|
||||
BEGIN
|
||||
//PROMPT 2 11 "Imposta versata "
|
||||
PROMPT 23 11 ""
|
||||
FIELD LF_QUAA->IMPVER2
|
||||
PICTURE "."
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 44 11 "63 interessi "
|
||||
GROUP G_770
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 44 11 "63 i.ri.IRPEF"
|
||||
GROUP G_730
|
||||
// FLAGS "H"
|
||||
END
|
||||
|
||||
NUMBER F_INTER61 15
|
||||
BEGIN
|
||||
// PROMPT 44 11 "Interessi "
|
||||
PROMPT 61 11 ""
|
||||
FIELD LF_QUAA->INTER
|
||||
PICTURE "."
|
||||
@ -685,13 +749,19 @@ END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 12 "64 soprattasse saldo IRPEF per 95 e prima rata acconto del 96 "
|
||||
GROUP 6
|
||||
PROMPT 2 12 "64 soprattasse saldo IRPEF per 95 e prima rata acconto 96 "
|
||||
GROUP G_770
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 12 "64 prima rata di acconto IRPEF per il 1996 "
|
||||
// FLAGS "H"
|
||||
GROUP G_730
|
||||
END
|
||||
|
||||
NUMBER F_STSIRPEF62 15
|
||||
BEGIN
|
||||
// PROMPT 2 12 "Soprattasse saldo IRPEF per 94 e prima rata acconto del 95 "
|
||||
PROMPT 61 12 ""
|
||||
FIELD LF_QUAA->STSIRPEF
|
||||
PICTURE "."
|
||||
@ -706,13 +776,14 @@ END
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 15 "65 Contr. rimborso "
|
||||
GROUP 6
|
||||
GROUP G_770
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 44 15 "66 Contr. versato "
|
||||
// GROUP 7
|
||||
PROMPT 2 15 "65 2rata ac.IRPEF96"
|
||||
// FLAGS "H"
|
||||
GROUP G_730
|
||||
END
|
||||
|
||||
NUMBER F_CONRIMB63 15
|
||||
@ -724,8 +795,15 @@ END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 16 "67 interessi "
|
||||
// GROUP 7
|
||||
PROMPT 44 15 "66 Contr.versato "
|
||||
GROUP G_770
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 44 15 "66 i.v.trat.CSSN "
|
||||
GROUP G_730
|
||||
// FLAGS "H"
|
||||
END
|
||||
|
||||
NUMBER F_CONVER64 15
|
||||
@ -737,13 +815,20 @@ END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 16 "Imp. rimb. CSSN "
|
||||
GROUP 7
|
||||
PROMPT 2 16 "67 interessi "
|
||||
GROUP G_770
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 16 "67 imp. rimb. CSSN "
|
||||
// FLAGS "H"
|
||||
GROUP G_730
|
||||
END
|
||||
|
||||
NUMBER F_INTER65 15
|
||||
BEGIN
|
||||
// PROMPT 2 16 "Interessi "
|
||||
// "Interessi "
|
||||
PROMPT 21 16 ""
|
||||
FIELD LF_QUAA->INTER2
|
||||
PICTURE "."
|
||||
@ -764,7 +849,7 @@ BEGIN
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
NUMBER F_CODIP 5
|
||||
NUMBER F_CODIP 6
|
||||
BEGIN
|
||||
PROMPT 17 1 ""
|
||||
FLAGS "DG"
|
||||
@ -792,7 +877,7 @@ BEGIN
|
||||
GROUP 5
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 7
|
||||
GROUPBOX DLG_NULL 78 5
|
||||
BEGIN
|
||||
PROMPT 1 3 "@bPrima rata acconto C.S.S.N. per il 1996"
|
||||
END
|
||||
@ -800,12 +885,19 @@ END
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 4 "68 contr. versato "
|
||||
GROUP 6
|
||||
GROUP G_770
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 4 "68 1r.acc.CSSN 96 "
|
||||
GROUP G_730
|
||||
// FLAGS "H"
|
||||
END
|
||||
|
||||
NUMBER F_CONVER66 15
|
||||
BEGIN
|
||||
// PROMPT 2 4 "Contributo versato "
|
||||
// "Contributo versato "
|
||||
PROMPT 21 4 ""
|
||||
FIELD LF_QUAA->CONVER2
|
||||
PICTURE "."
|
||||
@ -814,12 +906,19 @@ END
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 44 4 "69 interessi "
|
||||
GROUP 6
|
||||
GROUP G_770
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 44 4 "69 2r.acc.CSSN 96"
|
||||
GROUP G_730
|
||||
// FLAGS "H"
|
||||
END
|
||||
|
||||
NUMBER F_INTER67 15
|
||||
BEGIN
|
||||
// PROMPT 44 4 "Interessi "
|
||||
// "69 Interessi "
|
||||
PROMPT 61 4 ""
|
||||
FIELD LF_QUAA->INTER3
|
||||
PICTURE "."
|
||||
@ -827,15 +926,17 @@ END
|
||||
|
||||
NUMBER F_STSCSSN68 15
|
||||
BEGIN
|
||||
PROMPT 2 5 "70 Soprattasse saldo C.S.S.N. 94 e prima rata acconto 95 "
|
||||
PROMPT 2 5 "70 Soprattasse saldo C.S.S.N. 95 e prima rata acconto 96 "
|
||||
FIELD LF_QUAA->STSCSSN70
|
||||
GROUP G_ALL
|
||||
PICTURE "."
|
||||
END
|
||||
|
||||
NUMBER F_SEGDICNL69 2
|
||||
BEGIN
|
||||
PROMPT 2 6 "71 Mod.730/95 non liquidabile "
|
||||
PROMPT 2 6 "71 Mod.730/96 non liquidabile "
|
||||
FIELD LF_QUAA->M730NLIQ
|
||||
FLAGS "Z"
|
||||
SHEET "Codice|Descrizione@65"
|
||||
INPUT F_SEGDICNL69
|
||||
ITEM " |Niente"
|
||||
@ -853,6 +954,7 @@ BEGIN
|
||||
ITEM "12|Errata o incompleta dichiarazione del quadro F Mod.730/96 del dichiarante"
|
||||
ITEM "13|Errata o incompleta dichiarazione del quadro F Mod.730/96 del coniuge"
|
||||
OUTPUT F_SEGDICNL69
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 4
|
||||
@ -875,6 +977,7 @@ BEGIN
|
||||
OUTPUT F_DENCAAF S0
|
||||
OUTPUT F_NISCRA I1
|
||||
OUTPUT F_CODFISCAAF S1
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
STRING F_DENCAAF 50
|
||||
|
@ -3,6 +3,9 @@ TOOLBAR "" 0 20 0 2
|
||||
#include <toolbar.h>
|
||||
ENDPAGE
|
||||
|
||||
#define G_DIPEND 1
|
||||
#define G_QUADROA 2
|
||||
|
||||
PAGE "MODULO 770 - Manutenzione Quadro A1" -1 -1 78 21
|
||||
|
||||
GROUPBOX DLG_NULL 78 3
|
||||
@ -43,7 +46,7 @@ NUMBER F_CODIP 6
|
||||
BEGIN
|
||||
PROMPT 80 80 ""
|
||||
FLAGS "D"
|
||||
FIELD LF_QUAA1->CODIP
|
||||
FIELD LF_QUAA1->CODDIP
|
||||
CHECKTYPE REQUIRED
|
||||
KEY 1
|
||||
END
|
||||
@ -52,18 +55,39 @@ NUMBER F_CODANAGDIP 6
|
||||
BEGIN
|
||||
PROMPT 1 8 "@bCodice "
|
||||
USE LF_DIPEND KEY 1 SELECT ((CODDITTA=#QAF_CODDITTA))
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODIP F_CODIP
|
||||
DISPLAY "Codice " CODIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_CODANAGDIP CODIP
|
||||
OUTPUT QAF_COGNOME COGNOME
|
||||
OUTPUT QAF_NOME NOME
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODDIP F_CODIP
|
||||
DISPLAY "Codice " CODDIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_CODANAGDIP CODDIP
|
||||
OUTPUT QAF_COGNOME COGNOME
|
||||
OUTPUT QAF_NOME NOME
|
||||
ADD RUN 773mod -1 771150a 45 "Anagrafica dipendenti"
|
||||
GROUP G_DIPEND
|
||||
MESSAGE COPY, F_CODIP
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
NUMBER F_CODANAGDIPQA 6
|
||||
BEGIN
|
||||
PROMPT 1 8 "@bCodice "
|
||||
USE LF_QUAA1 KEY 1 SELECT ((CODDITTA=#QAF_CODDITTA))
|
||||
JOIN LF_DIPEND KEY 1 INTO CODDITTA=CODDITTA CODDIP=CODDIP
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODDIP F_CODANAGDIPQA
|
||||
DISPLAY "Codice " CODDIP
|
||||
DISPLAY "Cognome@24" LF_DIPEND->COGNOME
|
||||
DISPLAY "Nome@20" LF_DIPEND->NOME
|
||||
DISPLAY "N°@4" NPROG
|
||||
OUTPUT F_CODANAGDIPQA CODDIP
|
||||
OUTPUT QAF_COGNOME LF_DIPEND->COGNOME
|
||||
OUTPUT QAF_NOME LF_DIPEND->NOME
|
||||
MESSAGE COPY, F_CODIP
|
||||
GROUP G_QUADROA
|
||||
END
|
||||
|
||||
|
||||
STRING QAF_COGNOME 24
|
||||
BEGIN
|
||||
PROMPT 25 8 ""
|
||||
@ -81,15 +105,16 @@ BEGIN
|
||||
PROMPT 1 10 "@bNumero "
|
||||
CHECKTYPE REQUIRED
|
||||
USE LF_QUAA1 KEY 1 SELECT ((CODDITTA=#QAF_CODDITTA))
|
||||
JOIN LF_DIPEND KEY 1 INTO CODIP=CODIP
|
||||
JOIN LF_DIPEND KEY 1 INTO CODDITTA=CODDITTA CODDIP=CODDIP
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODIP F_CODIP
|
||||
INPUT CODDIP F_CODIP
|
||||
INPUT NPROG QAF_NPROG
|
||||
DISPLAY "Codice@10" CODIP
|
||||
DISPLAY "Codice@10" CODDIP
|
||||
DISPLAY "Cognome@24" LF_DIPEND->COGNOME
|
||||
DISPLAY "Nome@20" LF_DIPEND->NOME
|
||||
DISPLAY "N°@4" NPROG
|
||||
OUTPUT F_CODANAGDIP CODIP
|
||||
OUTPUT F_CODANAGDIP CODDIP
|
||||
OUTPUT F_CODANAGDIPQA CODDIP
|
||||
OUTPUT QAF_NPROG NPROG
|
||||
FIELD LF_QUAA1->NPROG
|
||||
KEY 1
|
||||
|
@ -18,17 +18,17 @@ BEGIN
|
||||
MESSAGE COPY,1@
|
||||
END
|
||||
|
||||
NUMBER F_CODIP 5
|
||||
NUMBER F_CODIP 6
|
||||
BEGIN
|
||||
PROMPT 17 1 ""
|
||||
USE LF_DIPEND KEY 1
|
||||
FIELD LF_QUAA1->CODIP
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODIP F_CODIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT QAF_COGNOME COGNOME
|
||||
OUTPUT QAF_NOME NOME
|
||||
FIELD LF_QUAA1->CODDIP
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODDIP F_CODIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT QAF_COGNOME COGNOME
|
||||
OUTPUT QAF_NOME NOME
|
||||
CHECKTYPE REQUIRED
|
||||
FLAGS "DG"
|
||||
MESSAGE COPY,2@
|
||||
@ -167,7 +167,7 @@ BEGIN
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
NUMBER F_CODIP 5
|
||||
NUMBER F_CODIP 6
|
||||
BEGIN
|
||||
PROMPT 17 1 ""
|
||||
FLAGS "DG"
|
||||
@ -195,7 +195,7 @@ BEGIN
|
||||
GROUP 5
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 6
|
||||
GROUPBOX DLG_NULL 78 5
|
||||
BEGIN
|
||||
PROMPT 1 3 "@bPrima rata acconto C.S.S.N. per il 1995"
|
||||
END
|
||||
@ -255,13 +255,7 @@ BEGIN
|
||||
FLAGS "U"
|
||||
END
|
||||
|
||||
DATE F_DATARIC29
|
||||
BEGIN
|
||||
PROMPT 2 7 "Data ricezione Modello 730-5 "
|
||||
FIELD LF_QUAA1->DATARIC26
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 4
|
||||
GROUPBOX DLG_NULL 78 5
|
||||
BEGIN
|
||||
PROMPT 1 9 "@bDati identificativi del C.A.A.F che ha prestato assistenza "
|
||||
END
|
||||
@ -301,6 +295,12 @@ BEGIN
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
DATE F_DATARIC29
|
||||
BEGIN
|
||||
PROMPT 2 12 "26 Data ricezione Modello 730-5 "
|
||||
FIELD LF_QUAA1->DATARIC26
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
@ -3,6 +3,9 @@ TOOLBAR "" 0 20 0 2
|
||||
#include <toolbar.h>
|
||||
ENDPAGE
|
||||
|
||||
#define G_DIPEND 1
|
||||
#define G_QUADROA 2
|
||||
|
||||
PAGE "MODULO 770 - Manutenzione Quadro A2" -1 -1 78 21
|
||||
|
||||
GROUPBOX DLG_NULL 78 3
|
||||
@ -43,7 +46,7 @@ NUMBER F_CODIP 6
|
||||
BEGIN
|
||||
PROMPT 80 80 ""
|
||||
FLAGS "D"
|
||||
FIELD LF_QUAA2->CODIP
|
||||
FIELD LF_QUAA2->CODDIP
|
||||
CHECKTYPE REQUIRED
|
||||
KEY 1
|
||||
END
|
||||
@ -53,15 +56,35 @@ BEGIN
|
||||
PROMPT 1 8 "@bCodice "
|
||||
USE LF_DIPEND KEY 1 SELECT ((CODDITTA=#QAF_CODDITTA))
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODIP F_CODIP
|
||||
DISPLAY "Codice " CODIP
|
||||
INPUT CODDIP F_CODIP
|
||||
DISPLAY "Codice " CODDIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_CODANAGDIP CODIP
|
||||
OUTPUT F_CODANAGDIP CODDIP
|
||||
OUTPUT QAF_COGNOME COGNOME
|
||||
OUTPUT QAF_NOME NOME
|
||||
ADD RUN 773mod -1 771150a 45 "Anagrafica dipendenti"
|
||||
MESSAGE COPY, F_CODIP
|
||||
FLAGS "H"
|
||||
GROUP G_DIPEND
|
||||
END
|
||||
|
||||
NUMBER F_CODANAGDIPQA 6
|
||||
BEGIN
|
||||
PROMPT 1 8 "@bCodice "
|
||||
USE LF_QUAA2 KEY 1 SELECT ((CODDITTA=#QAF_CODDITTA))
|
||||
JOIN LF_DIPEND KEY 1 INTO CODDITTA=CODDITTA CODDIP=CODDIP
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODDIP F_CODANAGDIPQA
|
||||
DISPLAY "Codice " CODDIP
|
||||
DISPLAY "Cognome@24" LF_DIPEND->COGNOME
|
||||
DISPLAY "Nome@20" LF_DIPEND->NOME
|
||||
DISPLAY "N°@4" NPROG
|
||||
OUTPUT F_CODANAGDIPQA CODDIP
|
||||
OUTPUT QAF_COGNOME LF_DIPEND->COGNOME
|
||||
OUTPUT QAF_NOME LF_DIPEND->NOME
|
||||
MESSAGE COPY, F_CODIP
|
||||
GROUP G_QUADROA
|
||||
END
|
||||
|
||||
STRING QAF_COGNOME 24
|
||||
@ -81,16 +104,17 @@ BEGIN
|
||||
PROMPT 1 10 "@bNumero "
|
||||
CHECKTYPE REQUIRED
|
||||
USE LF_QUAA2 KEY 1 SELECT ((CODDITTA=#QAF_CODDITTA))
|
||||
JOIN LF_DIPEND KEY 1 INTO CODIP=CODIP
|
||||
JOIN LF_DIPEND KEY 1 INTO CODDITTA=CODDITTA CODDIP=CODDIP
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODIP F_CODIP
|
||||
INPUT CODDIP F_CODIP
|
||||
INPUT NPROG QAF_NPROG
|
||||
DISPLAY "Codice@10" CODIP
|
||||
DISPLAY "Codice@10" CODDIP
|
||||
DISPLAY "Cognome@24" LF_DIPEND->COGNOME
|
||||
DISPLAY "Nome@20" LF_DIPEND->NOME
|
||||
DISPLAY "N°@4" NPROG
|
||||
OUTPUT F_CODANAGDIP CODIP
|
||||
OUTPUT QAF_NPROG NPROG
|
||||
DISPLAY "N°@4" NPROG
|
||||
OUTPUT F_CODANAGDIP CODDIP
|
||||
OUTPUT F_CODANAGDIPQA CODDIP
|
||||
OUTPUT QAF_NPROG NPROG
|
||||
FIELD LF_QUAA2->NPROG
|
||||
KEY 1
|
||||
END
|
||||
|
109
m770/771200f.uml
109
m770/771200f.uml
@ -18,13 +18,13 @@ BEGIN
|
||||
MESSAGE COPY,1@
|
||||
END
|
||||
|
||||
NUMBER F_CODIP 5
|
||||
NUMBER F_CODIP 6
|
||||
BEGIN
|
||||
PROMPT 17 1 ""
|
||||
USE LF_DIPEND KEY 1
|
||||
FIELD LF_QUAA2->CODIP
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODIP F_CODIP
|
||||
FIELD LF_QUAA2->CODDIP
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODDIP F_CODIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT QAF_COGNOME COGNOME
|
||||
@ -67,6 +67,7 @@ STRING QA2F_CNEFF 1
|
||||
BEGIN
|
||||
PROMPT 2 4 "8 Conguagli non effettuati "
|
||||
FIELD LF_QUAA2->CONEFF
|
||||
FLAGS "U"
|
||||
HELP "Conguagli non effettuati relativi all'assistenza 1995"
|
||||
SHEET "Codice|Descrizione@85"
|
||||
INPUT QA2F_CNEFF
|
||||
@ -78,6 +79,7 @@ BEGIN
|
||||
ITEM "E|Nel caso di situazioni per le quali dovrebbero essere indicati piu' codici"
|
||||
ITEM "F|Rimborso non effettuato o rimborso effettuato parzialmente"
|
||||
OUTPUT QA2F_CNEFF
|
||||
GROUP G_ALL
|
||||
END
|
||||
|
||||
STRING QA2F_RETCON 1
|
||||
@ -99,29 +101,16 @@ BEGIN
|
||||
PROMPT 1 6 "@bSALDO IRPEF PER IL 1994 "
|
||||
END
|
||||
|
||||
/*
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 7 "10 Imposta rimbor. "
|
||||
GROUP 6
|
||||
END
|
||||
*/
|
||||
/*
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 7 "11 Imposta versata "
|
||||
GROUP 7
|
||||
END
|
||||
*/
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 7 "10 Imposta rimbor. "
|
||||
GROUP G_770
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 41 7 "11 Imposta versata "
|
||||
PROMPT 2 7 "10 i.ver/tr.IRPEF""
|
||||
GROUP G_730
|
||||
END
|
||||
|
||||
NUMBER F_IIRPEFVER8 15
|
||||
@ -131,32 +120,12 @@ BEGIN
|
||||
PICTURE "."
|
||||
END
|
||||
|
||||
/*
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 41 7 "12 Interessi "
|
||||
GROUP 6
|
||||
END
|
||||
*/
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 8 "12 Interessi "
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 3
|
||||
BEGIN
|
||||
PROMPT 1 10 "@bPRIMA RATA ACCONTO IRPEF PER IL 1995 "
|
||||
PROMPT 41 7 "11 Imposta versata "
|
||||
GROUP G_770
|
||||
END
|
||||
|
||||
/*
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 41 7 "13 Imposta versata "
|
||||
GROUP 7
|
||||
END
|
||||
*/
|
||||
|
||||
NUMBER F_IIRPEFRI9 15
|
||||
BEGIN
|
||||
PROMPT 61 7 ""
|
||||
@ -164,20 +133,11 @@ BEGIN
|
||||
PICTURE "."
|
||||
END
|
||||
|
||||
/*
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 8 "14 Interessi "
|
||||
GROUP 6
|
||||
BEGIN
|
||||
PROMPT 2 8 "12 Interessi "
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 8 "1a rata acc.IRPEF96 "
|
||||
GROUP 7
|
||||
END
|
||||
*/
|
||||
|
||||
NUMBER F_INTER11 15
|
||||
BEGIN
|
||||
PROMPT 21 8 ""
|
||||
@ -185,20 +145,17 @@ BEGIN
|
||||
PICTURE "."
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 3
|
||||
BEGIN
|
||||
PROMPT 1 10 "@bPRIMA RATA ACCONTO IRPEF PER IL 1995 "
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 11 "13 Imposta versata "
|
||||
// GROUP 6
|
||||
END
|
||||
|
||||
/*
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 11 "14 Interessi "
|
||||
GROUP 7
|
||||
END
|
||||
*/
|
||||
|
||||
NUMBER F_PRIRPEF10 15
|
||||
BEGIN
|
||||
// PROMPT 2 11 "Imposta versata "
|
||||
@ -213,12 +170,6 @@ BEGIN
|
||||
// GROUP 6
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 41 11 "Imp.vers/tratt CSSN"
|
||||
GROUP 7
|
||||
END
|
||||
|
||||
NUMBER F_INTER11 15
|
||||
BEGIN
|
||||
// PROMPT 41 11 "Interessi "
|
||||
@ -261,7 +212,7 @@ BEGIN
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
NUMBER F_CODIP 5
|
||||
NUMBER F_CODIP 6
|
||||
BEGIN
|
||||
PROMPT 17 1 ""
|
||||
FLAGS "DG"
|
||||
@ -305,14 +256,6 @@ BEGIN
|
||||
PROMPT 41 5 "17 Cont. versato "
|
||||
END
|
||||
|
||||
/*
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 2 5 "17 Cont. versato "
|
||||
GROUP 7
|
||||
END
|
||||
*/
|
||||
|
||||
NUMBER QA2F_CSSNCRIMB 15
|
||||
BEGIN
|
||||
PROMPT 21 5 ""
|
||||
@ -320,20 +263,6 @@ BEGIN
|
||||
PICTURE "."
|
||||
END
|
||||
|
||||
/*
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 41 5 "18 Interessi "
|
||||
GROUP 6
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 41 5 "2a rata acc.CSSN 96"
|
||||
GROUP 7
|
||||
END
|
||||
*/
|
||||
|
||||
NUMBER QA2F_CSSNCVER 15
|
||||
BEGIN
|
||||
// PROMPT 41 5 "Contr. versato "
|
||||
|
@ -1,13 +1,15 @@
|
||||
#include "771200.h"
|
||||
TOOLBAR "" 0 18 0 4
|
||||
#include <toolbar.h>
|
||||
BUTTON F_BASEOCCUPA 24 2
|
||||
BEGIN
|
||||
PROMPT -13 -3 "~Dati Base occupazionale"
|
||||
PROMPT -13 -3 "~Dati base occupazionale"
|
||||
END
|
||||
#include <toolbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
#define G_DIPEND 1
|
||||
#define G_QUADROA 2
|
||||
|
||||
PAGE "Manutenzione dati base occupazionale" -1 -1 78 18
|
||||
|
||||
GROUPBOX DLG_NULL 78 3
|
||||
@ -53,51 +55,53 @@ BEGIN
|
||||
KEY 1
|
||||
END
|
||||
|
||||
NUMBER F_CODIP 5
|
||||
NUMBER F_CODIP 6
|
||||
BEGIN
|
||||
PROMPT 80 80 ""
|
||||
FLAGS "D"
|
||||
FIELD LF_QUAA3->CODIP
|
||||
FIELD LF_QUAA3->CODDIP
|
||||
CHECKTYPE REQUIRED
|
||||
KEY 1
|
||||
END
|
||||
|
||||
NUMBER F_CODANAGDIP 5
|
||||
NUMBER F_CODANAGDIP 6
|
||||
BEGIN
|
||||
PROMPT 10 7 ""
|
||||
USE LF_DIPEND KEY 1 SELECT (CODDITTA=#QAF_CODDITTA)
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODIP F_CODANAGDIP
|
||||
DISPLAY "Codice " CODIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_CODANAGDIP CODIP
|
||||
INPUT CODDIP F_CODANAGDIP
|
||||
DISPLAY "Codice " CODDIP
|
||||
DISPLAY "Cognome@24" COGNOME
|
||||
DISPLAY "Nome@20" NOME
|
||||
OUTPUT F_CODANAGDIP CODDIP
|
||||
OUTPUT QAF_COGNOME COGNOME
|
||||
OUTPUT QAF_NOME NOME
|
||||
MESSAGE COPY, F_CODIP
|
||||
ADD RUN 773mod -1 771150a 45 "Anagrafica dipendenti"
|
||||
GROUP 2
|
||||
GROUP G_DIPEND
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
NUMBER F_CODIPQUADRO 5
|
||||
NUMBER F_CODIPQUADRO 6
|
||||
BEGIN
|
||||
PROMPT 10 7 ""
|
||||
USE LF_QUAA3 KEY 1 SELECT ((CODDITTA=#QAF_CODDITTA) && (NPROG="1"))
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODIP F_CODIPQUADRO
|
||||
DISPLAY "Codice" CODIP
|
||||
INPUT CODDIP F_CODIPQUADRO
|
||||
DISPLAY "Codice" CODDIP
|
||||
DISPLAY "N.ro" NPROG
|
||||
DISPLAY "Inizio rapporto" DIRAPTI
|
||||
DISPLAY "gg.incremento" NGINC15
|
||||
DISPLAY "Inizio rapporto" DIRAPTI
|
||||
DISPLAY "gg.incremento" NGINC15
|
||||
DISPLAY "Reddito corrisposto" REDCOR16
|
||||
DISPLAY "gg.incremento" NGINC17
|
||||
DISPLAY "gg.incremento" NGINC17
|
||||
DISPLAY "Reddito corrisposto" REDCOR18
|
||||
OUTPUT F_CODIPQUADRO CODIP
|
||||
MESSAGE COPY, F_CODIP
|
||||
ADD RUN BA4 -1
|
||||
//FLAGS "HP"
|
||||
FLAGS "H"
|
||||
GROUP 1
|
||||
OUTPUT F_CODIPQUADRO CODDIP
|
||||
OUTPUT F_CODANAGDIP CODDIP
|
||||
OUTPUT QAF_NPROG NPROG
|
||||
// ADD RUN BA4 -1
|
||||
FLAGS "H"
|
||||
MESSAGE COPY, F_CODIP
|
||||
GROUP G_QUADROA
|
||||
END
|
||||
|
||||
STRING QAF_COGNOME 24
|
||||
|
@ -17,10 +17,10 @@ BEGIN
|
||||
KEY 1
|
||||
END
|
||||
|
||||
NUMBER F_CODIP 5
|
||||
NUMBER F_CODIP 6
|
||||
BEGIN
|
||||
PROMPT 17 1 ""
|
||||
FIELD LF_QUAA3->CODIP
|
||||
FIELD LF_QUAA3->CODDIP
|
||||
MESSAGE COPY,F_CODIP2
|
||||
FLAGS "DG"
|
||||
KEY 1
|
||||
@ -31,7 +31,7 @@ NUMBER F_CODIP2 5
|
||||
BEGIN
|
||||
USE LF_DIPEND KEY 1
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODIP F_CODIP
|
||||
INPUT CODDIP F_CODIP
|
||||
DISPLAY "Cognome - Nome o Ragione sociale@50" RAGSOC
|
||||
OUTPUT QAF_COGNOME COGNOME
|
||||
OUTPUT QAF_NOME NOME
|
||||
@ -130,7 +130,7 @@ NUMBER F_CODIP2_2 5
|
||||
BEGIN
|
||||
USE LF_DIPEND KEY 1
|
||||
INPUT CODDITTA QAF_CODDITTA
|
||||
INPUT CODIP F_CODIP
|
||||
INPUT CODDIP F_CODIP
|
||||
DISPLAY "Cognome - Nome o Ragione sociale@50" RAGSOC
|
||||
OUTPUT QAF_COGNOME COGNOME
|
||||
OUTPUT QAF_NOME NOME
|
||||
|
@ -1,6 +1,45 @@
|
||||
#include "771200.h"
|
||||
TOOLBAR "" 0 20 0 2
|
||||
#include <toolbar.h>
|
||||
BUTTON DLG_SAVEREC 8 2
|
||||
BEGIN
|
||||
PROMPT -16 -1 "~Registra"
|
||||
FLAGS "D"
|
||||
MESSAGE EXIT,K_SAVE
|
||||
END
|
||||
|
||||
BUTTON DLG_NEWREC 8 2
|
||||
BEGIN
|
||||
PROMPT -26 -1 "~Nuovo"
|
||||
MESSAGE EXIT,K_INS
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
BUTTON DLG_DELREC 8 2
|
||||
BEGIN
|
||||
PROMPT -36 -1 "~Elimina"
|
||||
MESSAGE EXIT,K_DEL
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
BUTTON DLG_FINDREC 8 2
|
||||
BEGIN
|
||||
PROMPT -46 -1 "Ri~cerca"
|
||||
MESSAGE EXIT,K_F9
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
BUTTON DLG_CANCEL 8 2
|
||||
BEGIN
|
||||
PROMPT -56 -1 ""
|
||||
MESSAGE EXIT,K_ESC
|
||||
END
|
||||
|
||||
BUTTON DLG_QUIT 8 2
|
||||
BEGIN
|
||||
PROMPT -66 -1 ""
|
||||
MESSAGE EXIT,K_QUIT
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "MODULO 770 - Manutenzione Quadro A" -1 -1 78 21
|
||||
@ -35,7 +74,7 @@ END
|
||||
|
||||
NUMBER F_BSE_CONSBASOCC 5
|
||||
BEGIN
|
||||
PROMPT 2 5 "Consistenza base occupazionale "
|
||||
PROMPT 2 5 "Consistenza base occupazionale al 12/06/94 "
|
||||
FIELD LF_BASEBIS->CONSBASOCC
|
||||
FLAGS "R"
|
||||
END
|
||||
|
@ -564,6 +564,7 @@ void TQuadroC_E2::leggi_sort(TProgind& p)
|
||||
acc_imp = rp->acim;
|
||||
bInps = rp->bInps; // se la riga aveva il contributo inps nella cau.
|
||||
rQCInps = bInps ? rp->inps : ZERO;
|
||||
|
||||
if (QuadroE1() && !acc_imp)
|
||||
{
|
||||
genera_prospetto(codcaus,rp->comp,rp->impo,rp->rite);
|
||||
|
@ -120,6 +120,12 @@ int TQuadroG::read(TMask& m)
|
||||
return err;
|
||||
}
|
||||
|
||||
void TQuadroG::init_insert_mode (TMask& m)
|
||||
{
|
||||
fill_ss(m);
|
||||
fill_arr(m);
|
||||
}
|
||||
|
||||
void TQuadroG::init_modify_mode (TMask& m)
|
||||
{
|
||||
m.disable(DLG_DELREC);
|
||||
|
@ -42,6 +42,7 @@ class TQuadroG : public TRelation_application
|
||||
virtual TRelation* get_relation() const { return _rel; }
|
||||
virtual TMask* get_mask(int mode) { return _msk; }
|
||||
virtual bool changing_mask(int mode) { return FALSE; }
|
||||
virtual void init_insert_mode (TMask&);
|
||||
virtual void init_query_mode (TMask&);
|
||||
virtual void init_modify_mode (TMask&);
|
||||
void fill_ss(TMask& m);
|
||||
@ -124,7 +125,8 @@ class TQuadroG1 : public TRelation_application
|
||||
virtual TRelation* get_relation() const { return _rel; }
|
||||
virtual TMask* get_mask(int mode) { return _msk; }
|
||||
virtual bool changing_mask(int mode) { return FALSE; }
|
||||
virtual void init_query_mode (TMask&);
|
||||
virtual void init_query_mode (TMask&);
|
||||
virtual void init_insert_mode (TMask&);
|
||||
virtual void init_modify_mode (TMask&);
|
||||
// void init_mask (TMask&);
|
||||
void fill_arr(TMask& m);
|
||||
|
@ -160,14 +160,17 @@ bool M71310_application::cod_tributo(TMask_field& f , KEY k)
|
||||
bool M71310_application::auto_premi(TMask_field& f, KEY k)
|
||||
{
|
||||
if (k == K_TAB && f.mask().is_running())
|
||||
{
|
||||
{
|
||||
TMask& m = f.mask();
|
||||
m.stop_run(K_AUTO_ENTER);
|
||||
/*
|
||||
TRelation* rel = app()._rel;
|
||||
TMask& m = f.mask();
|
||||
TMask& m = f.mask();
|
||||
m.autosave(rel);
|
||||
if (rel->read() == NOERR)
|
||||
f.mask().stop_run(K_AUTO_ENTER);
|
||||
m.stop_run(K_AUTO_ENTER);
|
||||
else
|
||||
f.mask().stop_run(K_INS);
|
||||
m.stop_run(K_INS); */
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
@ -448,7 +451,7 @@ bool M71310_application::user_create()
|
||||
_msk->set_handler (F_QLANNOPAG, anno);
|
||||
_msk->set_handler (F_QLCODTRIB, cod_tributo);
|
||||
_msk->set_handler (F_QLNUMERO, auto_premi);
|
||||
_msk->set_handler (F_CAB, auto_premi);
|
||||
_msk->set_handler (F_NPROG, auto_premi);
|
||||
_msk->set_handler (F_ARTBIL, artbil_hnd);
|
||||
|
||||
return TRUE;
|
||||
|
@ -29,8 +29,7 @@
|
||||
#define F_QUADRO 130
|
||||
#define F_ABI 131
|
||||
#define F_CAB 132
|
||||
#define F_CAB1 133
|
||||
#define F_CAB2 134
|
||||
#define F_NPROG 133
|
||||
|
||||
#define FH_ABISERIE 135
|
||||
#define FH_CAB 136
|
||||
|
@ -109,13 +109,14 @@ BEGIN
|
||||
OUTPUT F_QLCODTRIB QLCT
|
||||
OUTPUT F_ARTBIL QLAB
|
||||
OUTPUT F_QLSERIE QLSERIE
|
||||
OUTPUT F_ABI QLSERIE
|
||||
OUTPUT F_CAB1 QLNUMERO[1,5]
|
||||
OUTPUT F_CAB QLNUMERO[6,11]
|
||||
OUTPUT F_ABI QLSERIE
|
||||
OUTPUT F_CAB QLNUMERO[1,5]
|
||||
OUTPUT F_NPROG QLNUMERO[6,11]
|
||||
OUTPUT F_QLNUMERO QLNUMERO
|
||||
FIELD LF_QUAL->QLAP
|
||||
FLAGS "R"
|
||||
VALIDATE FIXLEN_FUNC 4
|
||||
WARNING "L' anno deve essere indicato per esteso"
|
||||
WARNING "L'anno deve essere indicato per esteso"
|
||||
KEY 1
|
||||
END
|
||||
|
||||
@ -203,7 +204,7 @@ BEGIN
|
||||
KEY 1
|
||||
END
|
||||
|
||||
NUMBER F_CAB1 5
|
||||
NUMBER F_CAB 5
|
||||
BEGIN
|
||||
PROMPT 63 10 ""
|
||||
FIELD LF_QUAL->QLNUMERO[1,5]
|
||||
@ -212,7 +213,7 @@ BEGIN
|
||||
KEY 1
|
||||
END
|
||||
|
||||
NUMBER F_CAB 6
|
||||
NUMBER F_NPROG 6
|
||||
BEGIN
|
||||
PROMPT 69 10 ""
|
||||
FIELD LF_QUAL->QLNUMERO[6,11]
|
||||
|
@ -145,9 +145,7 @@ void Tab770_application::init_insert_mode(TMask& m)
|
||||
}
|
||||
|
||||
void Tab770_application::init_modify_mode(TMask& m)
|
||||
{
|
||||
// init_mask(m);
|
||||
}
|
||||
{}
|
||||
|
||||
bool Tab770_application::user_create()
|
||||
{
|
||||
|
@ -143,7 +143,6 @@ bool TGenera::set(const long codditta, TConfig* cnf, const char* section)
|
||||
int TGenera::controllo_parametri()
|
||||
{
|
||||
TLocalisamfile base (LF_BASE);
|
||||
|
||||
base.setkey(1);
|
||||
base.zero();
|
||||
base.put("CODDITTA", _codditta);
|
||||
|
255
m770/774200.cpp
255
m770/774200.cpp
@ -159,6 +159,135 @@ int riporti_dich(int argc, char* argv[])
|
||||
return 0;
|
||||
}
|
||||
|
||||
const char* build_fill_string(TString& qcomp)
|
||||
{
|
||||
// NB cambiare qui il numero dei quadri
|
||||
const int NUM_QUADRI = 25; // sono 26 posizioni perche' parte da 0
|
||||
const int agg = NUM_QUADRI - qcomp.len();
|
||||
__tmp.cut(agg);
|
||||
__tmp.fill(' ', agg);
|
||||
return __tmp;
|
||||
}
|
||||
|
||||
void TRiporti::setta_flag_quadri_comp(const long codditta, const int quadro, const bool almeno_una_riga, const long dich)
|
||||
{
|
||||
TLocalisamfile basebis(LF_BASEBIS);
|
||||
|
||||
basebis.setkey(1);
|
||||
basebis.zero();
|
||||
basebis.put(BSE_CODDITTA, codditta);
|
||||
if (basebis.read(_isequal, _lock) == NOERR)
|
||||
{
|
||||
TString qcomp(basebis.get(BSE_QCOMP));
|
||||
TString dep(build_fill_string(qcomp));
|
||||
qcomp << dep;
|
||||
// TString qcomp (format("%25s", (const char*) app));
|
||||
|
||||
if (almeno_una_riga)
|
||||
qcomp[(int)quadro] = 'X';
|
||||
else
|
||||
qcomp[(int)quadro] = ' ';
|
||||
|
||||
basebis.put(BSE_QCOMP, qcomp);
|
||||
basebis.rewrite();
|
||||
// basebis.reread(_unlock);
|
||||
}
|
||||
else
|
||||
warning_box("Dichiarazione non presente: impossibile registrare il campo Quadri compilati");
|
||||
|
||||
//
|
||||
// Setta flag quadri compilati del dichiarante; cio' va fatto in 3 casi:
|
||||
//
|
||||
// 1. dalla gestione dei singoli quadri di una ditta "estinta".
|
||||
// 2. dal prg "Riporti" del dichiarante.
|
||||
// 3. dalla gestione dei quadri del dichiarante stesso.
|
||||
//
|
||||
const long codic = sogg_estinto(codditta);
|
||||
const long ha_dichiarante = dich ? dich : codic;
|
||||
const bool sono_dichiarante = sogg_dic(codditta);
|
||||
|
||||
if (ha_dichiarante || sono_dichiarante)
|
||||
{
|
||||
basebis.setkey(1);
|
||||
basebis.zero();
|
||||
basebis.put("TIPOQUA", COD_QUA_I_DIC);
|
||||
basebis.put(BSE_CODDITTA, sono_dichiarante ? codditta : ha_dichiarante);
|
||||
if (basebis.read(_isequal, _lock) == NOERR)
|
||||
{
|
||||
TString qcomp(basebis.get(BSE_QCOMP));
|
||||
TString dep(build_fill_string(qcomp));
|
||||
qcomp << dep;
|
||||
// TString qcomp (format("%25s", (const char*) app));
|
||||
|
||||
if (almeno_una_riga)
|
||||
qcomp[(int)quadro] = 'X';
|
||||
else
|
||||
qcomp[(int)quadro] = ' ';
|
||||
|
||||
basebis.put(BSE_QCOMP, qcomp);
|
||||
basebis.rewrite();
|
||||
// basebis.reread(_unlock);
|
||||
}
|
||||
else
|
||||
warning_box("Dichiarazione non presente: impossibile registrare il campo Quadri compilati");
|
||||
}
|
||||
}
|
||||
|
||||
void TRiporti::setta_flag_quadro_I(const long codditta, const long dich)
|
||||
{
|
||||
bool compilato = FALSE;
|
||||
TLocalisamfile base (LF_BASE);
|
||||
TLocalisamfile basebis (LF_BASEBIS);
|
||||
|
||||
base.setkey(1);
|
||||
base.zero();
|
||||
base.put(BSE_CODDITTA, codditta);
|
||||
base.read(_isequal, _lock);
|
||||
|
||||
basebis.setkey(1);
|
||||
basebis.zero();
|
||||
basebis.put(BSB_CODDITTA, codditta);
|
||||
basebis.read(_isequal, _lock);
|
||||
|
||||
TString qcomp(basebis.get(BSE_QCOMP));
|
||||
TString dep(build_fill_string(qcomp));
|
||||
qcomp << dep;
|
||||
// TString qcomp (format("%25s", (const char*) app));
|
||||
|
||||
// I campi del quadro I sono in parte su base in parte su basebis
|
||||
for (int i = 0; i < CAMPI_IB1; i++)
|
||||
if (base.get_real(_campi_I1[i]) != ZERO)
|
||||
{
|
||||
compilato = TRUE;
|
||||
break;
|
||||
}
|
||||
base.reread(_unlock);
|
||||
|
||||
if (!compilato)
|
||||
{
|
||||
/* TLocalisamfile basebis (LF_BASEBIS);
|
||||
basebis.setkey(1);
|
||||
basebis.zero();
|
||||
basebis.put(BSB_CODDITTA, codditta);
|
||||
basebis.read();*/
|
||||
for (int i = 0; i < CAMPI_IB2; i++)
|
||||
if (basebis.get_real(_campi_I2[i]) != ZERO)
|
||||
{
|
||||
compilato = TRUE;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (compilato)
|
||||
qcomp[(int)I] = 'X';
|
||||
else
|
||||
qcomp[(int)I] = ' ';
|
||||
|
||||
basebis.put(BSE_QCOMP, qcomp);
|
||||
basebis.rewrite();
|
||||
}
|
||||
|
||||
|
||||
HIDDEN bool filter_func (const TRelation * rel)
|
||||
{
|
||||
int anno,annod;
|
||||
@ -832,132 +961,6 @@ void TRiporti::calcola_riporti_A2(TCursor* cur, const long dich)
|
||||
setta_flag_quadri_comp(_codditta, A2, almeno_una_riga, dich);
|
||||
}
|
||||
|
||||
const char* build_fill_string(TString& qcomp)
|
||||
{
|
||||
// NB cambiare qui il numero dei quadri
|
||||
const int NUM_QUADRI = 25; // sono 26 posizioni perche' parte da 0
|
||||
const int agg = NUM_QUADRI - qcomp.len();
|
||||
__tmp.cut(agg);
|
||||
__tmp.fill(' ', agg);
|
||||
return __tmp;
|
||||
}
|
||||
|
||||
void TRiporti::setta_flag_quadri_comp(const long codditta, const int quadro, const bool almeno_una_riga, const long dich)
|
||||
{
|
||||
TLocalisamfile basebis(LF_BASEBIS);
|
||||
|
||||
basebis.setkey(1);
|
||||
basebis.zero();
|
||||
basebis.put(BSE_CODDITTA, codditta);
|
||||
if (basebis.read(_isequal, _testandlock) == NOERR)
|
||||
{
|
||||
TString qcomp(basebis.get(BSE_QCOMP));
|
||||
TString dep(build_fill_string(qcomp));
|
||||
qcomp << dep;
|
||||
// TString qcomp (format("%25s", (const char*) app));
|
||||
|
||||
if (almeno_una_riga)
|
||||
qcomp[(int)quadro] = 'X';
|
||||
else
|
||||
qcomp[(int)quadro] = ' ';
|
||||
|
||||
basebis.put(BSE_QCOMP, qcomp);
|
||||
basebis.rewrite();
|
||||
basebis.reread(_unlock);
|
||||
}
|
||||
else
|
||||
warning_box("Dichiarazione non presente: impossibile registrare il campo Quadri compilati");
|
||||
|
||||
//
|
||||
// Setta flag quadri compilati del dichiarante; cio' va fatto in 3 casi:
|
||||
//
|
||||
// 1. dalla gestione dei singoli quadri di una ditta "estinta".
|
||||
// 2. dal prg "Riporti" del dichiarante.
|
||||
// 3. dalla gestione dei quadri del dichiarante stesso.
|
||||
//
|
||||
const long codic = sogg_estinto(codditta);
|
||||
const long ha_dichiarante = dich ? dich : codic;
|
||||
const bool sono_dichiarante = sogg_dic(codditta);
|
||||
|
||||
if (ha_dichiarante || sono_dichiarante)
|
||||
{
|
||||
basebis.setkey(1);
|
||||
basebis.zero();
|
||||
basebis.put("TIPOQUA", COD_QUA_I_DIC);
|
||||
basebis.put(BSE_CODDITTA, sono_dichiarante ? codditta : ha_dichiarante);
|
||||
if (basebis.read(_isequal, _testandlock) == NOERR)
|
||||
{
|
||||
TString qcomp(basebis.get(BSE_QCOMP));
|
||||
TString dep(build_fill_string(qcomp));
|
||||
qcomp << dep;
|
||||
// TString qcomp (format("%25s", (const char*) app));
|
||||
|
||||
if (almeno_una_riga)
|
||||
qcomp[(int)quadro] = 'X';
|
||||
else
|
||||
qcomp[(int)quadro] = ' ';
|
||||
|
||||
basebis.put(BSE_QCOMP, qcomp);
|
||||
basebis.rewrite();
|
||||
basebis.reread(_unlock);
|
||||
}
|
||||
else
|
||||
warning_box("Dichiarazione non presente: impossibile registrare il campo Quadri compilati");
|
||||
}
|
||||
}
|
||||
|
||||
void TRiporti::setta_flag_quadro_I(const long codditta, const long dich)
|
||||
{
|
||||
bool compilato = FALSE;
|
||||
TLocalisamfile base (LF_BASE);
|
||||
TLocalisamfile basebis (LF_BASEBIS);
|
||||
|
||||
base.setkey(1);
|
||||
base.zero();
|
||||
base.put(BSE_CODDITTA, codditta);
|
||||
base.read();
|
||||
basebis.setkey(1);
|
||||
basebis.zero();
|
||||
basebis.put(BSB_CODDITTA, codditta);
|
||||
basebis.read();
|
||||
|
||||
TString qcomp(basebis.get(BSE_QCOMP));
|
||||
TString dep(build_fill_string(qcomp));
|
||||
qcomp << dep;
|
||||
// TString qcomp (format("%25s", (const char*) app));
|
||||
|
||||
for (int i = 0; i < CAMPI_IB1; i++)
|
||||
if (base.get_real(_campi_I1[i]) != ZERO)
|
||||
{
|
||||
compilato = TRUE;
|
||||
break;
|
||||
}
|
||||
|
||||
if (!compilato)
|
||||
{
|
||||
TLocalisamfile basebis (LF_BASEBIS);
|
||||
basebis.setkey(1);
|
||||
basebis.zero();
|
||||
basebis.put(BSB_CODDITTA, codditta);
|
||||
basebis.read();
|
||||
|
||||
for (int i = 0; i < CAMPI_IB2; i++)
|
||||
if (basebis.get_real(_campi_I2[i]) != ZERO)
|
||||
{
|
||||
compilato = TRUE;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (compilato)
|
||||
qcomp[(int)I] = 'X';
|
||||
else
|
||||
qcomp[(int)I] = ' ';
|
||||
|
||||
basebis.put(BSE_QCOMP, qcomp);
|
||||
basebis.rewrite();
|
||||
}
|
||||
|
||||
void TRiporti::calcola_riporti_H(TCursor* cur, const long dich)
|
||||
{
|
||||
TLocalisamfile basebis (LF_BASEBIS);
|
||||
|
@ -62,7 +62,7 @@ END
|
||||
TEXT 97
|
||||
BEGIN
|
||||
PROMPT 2 13 "Codice ABI "
|
||||
GROUP ABI_CAB
|
||||
GROUP ABICAB
|
||||
END
|
||||
|
||||
TEXT 98
|
||||
@ -74,7 +74,7 @@ END
|
||||
TEXT 99
|
||||
BEGIN
|
||||
PROMPT 46 13 "Codice CAB "
|
||||
GROUP ABI_CAB
|
||||
GROUP ABICAB
|
||||
END
|
||||
|
||||
DATE F_DATAVERS
|
||||
@ -96,13 +96,11 @@ RADIOBUTTON F_TIPOVERS 26
|
||||
BEGIN
|
||||
PROMPT 46 7 "Tipo versamento "
|
||||
ITEM "B|Delega bancaria"
|
||||
MESSAGE SHOW,97|SHOW,99|SHOW,F_ABI|SHOW,F_CAB|HIDE,96|HIDE,98|HIDE,F_SERIE|HIDE,F_NUMERO
|
||||
MESSAGE SHOW,ABICAB@|SHOW,97|SHOW,99|HIDE,96|HIDE,98|HIDE,F_SERIE|HIDE,F_NUMERO
|
||||
ITEM "D|Distinta"
|
||||
MESSAGE SHOW,96|SHOW,98|SHOW,F_SERIE|SHOW,F_NUMERO|HIDE,97|HIDE,99|HIDE,F_ABI|HIDE,F_CAB
|
||||
MESSAGE ENABLE,F_SERIE
|
||||
MESSAGE HIDE,ABICAB@|ENABLE,F_SERIE|SHOW,96|SHOW,98|SHOW,F_SERIE|SHOW,F_NUMERO|HIDE,97|HIDE,99|
|
||||
ITEM "C|C/C Postale"
|
||||
MESSAGE SHOW,96|SHOW,98|SHOW,F_SERIE|SHOW,F_NUMERO|HIDE,97|HIDE,99|HIDE,F_ABI|HIDE,F_CAB
|
||||
MESSAGE CLEAR,F_SERIE|DISABLE,F_SERIE
|
||||
MESSAGE HIDE,ABICAB@|SHOW,96|SHOW,98|SHOW,F_SERIE|SHOW,F_NUMERO|HIDE,97|HIDE,99|CLEAR,F_SERIE|DISABLE,F_SERIE
|
||||
FIELD LF_BASE->TIPOVERS
|
||||
END
|
||||
|
||||
@ -111,7 +109,7 @@ BEGIN
|
||||
PROMPT 18 13 ""
|
||||
FIELD LF_BASE->SERIE
|
||||
FLAGS "Z"
|
||||
GROUP ABI_CAB
|
||||
GROUP ABICAB
|
||||
END
|
||||
|
||||
NUMBER F_CAB 5
|
||||
@ -119,7 +117,7 @@ BEGIN
|
||||
PROMPT 63 13 ""
|
||||
FIELD LF_BASE->NUMERO[1,5]
|
||||
FLAGS "Z"
|
||||
GROUP ABI_CAB
|
||||
GROUP ABICAB
|
||||
END
|
||||
|
||||
NUMBER F_PROGBANCA 6
|
||||
@ -127,7 +125,7 @@ BEGIN
|
||||
PROMPT 69 13 ""
|
||||
FLAGS "Z"
|
||||
FIELD LF_BASE->NUMERO[6,11]
|
||||
GROUP ABI_CAB
|
||||
GROUP ABICAB
|
||||
END
|
||||
|
||||
STRING F_SERIE 5
|
||||
|
@ -25,6 +25,11 @@ TQuadroG1::TQuadroG1()
|
||||
|
||||
inline TQuadroG1& app() { return (TQuadroG1&) main_app(); }
|
||||
|
||||
void TQuadroG1::init_insert_mode (TMask& m)
|
||||
{
|
||||
fill_arr(m);
|
||||
}
|
||||
|
||||
void TQuadroG1::init_modify_mode (TMask& m)
|
||||
{
|
||||
// init_mask(m);
|
||||
|
@ -221,15 +221,14 @@ bool is_dipendente(const long codditta, const long coddip)
|
||||
bool is_erede(const long codditta, const long coddip)
|
||||
{
|
||||
TLocalisamfile dip (LF_DIPEND);
|
||||
TString16 CodDipDec("");
|
||||
|
||||
TString CodDipDec;
|
||||
dip.setkey(1);
|
||||
dip.zero();
|
||||
dip.put(DIP_CODDITTA, codditta);
|
||||
dip.put(DIP_CODIP, coddip);
|
||||
dip.put(DIP_CODDITTA, (long)codditta);
|
||||
dip.put(DIP_CODIP, (long)coddip);
|
||||
if (dip.read() == NOERR)
|
||||
CodDipDec = dip.get(DIP_CODDIPDEC);
|
||||
|
||||
CodDipDec.trim();
|
||||
return CodDipDec.not_empty();
|
||||
}
|
||||
|
||||
@ -287,7 +286,7 @@ bool scrivi_erede(const long codditta, const long deceduto, const long coddip)
|
||||
if (ValCampo.empty() || ValCampo == "0")
|
||||
{
|
||||
trovato = TRUE;
|
||||
dip.put(NomeCampo, (long)coddip);
|
||||
dip.put(NomeCampo, sCodErede);
|
||||
dip.rewrite();
|
||||
break;
|
||||
}
|
||||
|
@ -56,6 +56,15 @@
|
||||
#define RICERCA_QB 5
|
||||
#define GROUP_ALL 6
|
||||
|
||||
#define QBG_ANADIP 1
|
||||
#define QBG_QUADROB 2
|
||||
|
||||
#define QBF_CODDIP_ANAG 228
|
||||
#define QBF_CODDIP_QB 229
|
||||
|
||||
#define CODDITTA77 181
|
||||
#define ANNODIC77 182
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -21,6 +21,8 @@
|
||||
#define QB1F_NOME 199
|
||||
#define QB1F_HCODDIP 200
|
||||
|
||||
#define RICERCA_DIP 4
|
||||
#define RICERCA_QB 5
|
||||
#define QB1G_ANADIP 1
|
||||
#define QB1G_QUADROB 2
|
||||
|
||||
#define QB1F_CODDIP_ANAG 201
|
||||
#define QB1F_CODDIP_QB1 202
|
||||
|
@ -71,7 +71,7 @@ END
|
||||
NUMBER F_CODANAGRPERC 5
|
||||
BEGIN
|
||||
PROMPT 15 8 ""
|
||||
USE LF_PERC KEY 1 SELECT (CODDITTA=#F_CODDITTA)
|
||||
USE LF_PERC KEY 1 SELECT ((CODDITTA=#F_CODDITTA)&&(TIPOA=#F_TIPOA))
|
||||
JOIN LF_ANAG TO LF_PERC KEY 1 INTO TIPOA=TIPOA CODANAGR=CODANAGR
|
||||
INPUT CODDITTA F_CODDITTA
|
||||
INPUT TIPOA F_TIPOA
|
||||
@ -90,7 +90,7 @@ END
|
||||
NUMBER F_CODANAGRCOM 5
|
||||
BEGIN
|
||||
PROMPT 15 8 ""
|
||||
USE LF_ANAG KEY 1
|
||||
USE LF_ANAG KEY 1 SELECT (TIPOA=#F_TIPOA)
|
||||
INPUT TIPOA F_TIPOA
|
||||
INPUT CODANAGR F_CODANAGRCOM
|
||||
DISPLAY "Tipo " TIPOA
|
||||
|
@ -89,9 +89,10 @@ END
|
||||
NUMBER QNF_ANNORIF 4
|
||||
BEGIN
|
||||
PROMPT 17 9 ""
|
||||
WARNING "Manca l'anno"
|
||||
WARNING "Anno non valido"
|
||||
CHECKTYPE REQUIRED
|
||||
FIELD LF_QUAN->ANNORIF
|
||||
FIELD LF_QUAN->ANNORIF
|
||||
VALIDATE FIXLEN_FUNC 4
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
|
@ -89,9 +89,10 @@ END
|
||||
NUMBER QQF_ANNORIF 4
|
||||
BEGIN
|
||||
PROMPT 17 9 ""
|
||||
WARNING "Manca l'anno"
|
||||
WARNING "Anno non valido"
|
||||
CHECKTYPE REQUIRED
|
||||
FIELD LF_QUAQ->ANNOPAG
|
||||
VALIDATE FIXLEN_FUNC 4
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
|
@ -89,9 +89,10 @@ END
|
||||
NUMBER QRF_ANNORIF 4
|
||||
BEGIN
|
||||
PROMPT 17 9 ""
|
||||
WARNING "Manca l'anno"
|
||||
WARNING "Anno non valido"
|
||||
CHECKTYPE REQUIRED
|
||||
FIELD LF_QUAR->ANNORIF
|
||||
VALIDATE FIXLEN_FUNC 4
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
|
@ -89,9 +89,10 @@ END
|
||||
NUMBER QTF_ANNORIF 4
|
||||
BEGIN
|
||||
PROMPT 17 9 ""
|
||||
WARNING "Manca l'anno"
|
||||
WARNING "Anno non valido"
|
||||
CHECKTYPE REQUIRED
|
||||
FIELD LF_QUAT->ANNOPAG
|
||||
VALIDATE FIXLEN_FUNC 4
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
|
115
m770/anadip.h
115
m770/anadip.h
@ -1,56 +1,59 @@
|
||||
#ifndef _ANADIP_H
|
||||
#define _ANADIP_H
|
||||
|
||||
// Campi maschera manutenzione anagrafica dipendenti
|
||||
#define ADF_CODDITTA 181
|
||||
#define F_RAGSOCIALE 102
|
||||
#define ADF_DIP_CODDIP 103
|
||||
#define F_DIP_CODFI 104
|
||||
#define F_DIP_COGNOME 105
|
||||
#define F_DIP_NOME 106
|
||||
#define F_DIP_SESSO 107
|
||||
#define F_DIP_DATANA 108
|
||||
#define F_DIP_COMUNENA 109
|
||||
#define F_DIP_PROVNA 110
|
||||
#define F_DIP_COMUNERE 111
|
||||
#define F_DIP_PROVRE 112
|
||||
#define F_DIP_INDRE 113
|
||||
#define F_DIP_QUALIFICA 114
|
||||
#define F_DIP_STATOCIV 115
|
||||
#define F_DIP_EREDE 116
|
||||
#define F_DIP_CODEREDE0 117
|
||||
#define F_DIP_CODEREDE1 118
|
||||
#define F_DIP_CODEREDE2 119
|
||||
#define F_DIP_CODEREDE3 120
|
||||
#define F_DIP_CODEREDE4 121
|
||||
#define F_DIP_CODEREDE5 122
|
||||
#define F_DIP_CODEREDE6 123
|
||||
#define F_DIP_CODEREDE7 124
|
||||
#define F_DIP_CODEREDE8 125
|
||||
#define F_DIP_CODEREDE9 126
|
||||
#define F_DIP_COGNEREDE0 127
|
||||
#define F_DIP_COGNEREDE1 128
|
||||
#define F_DIP_COGNEREDE2 129
|
||||
#define F_DIP_COGNEREDE3 130
|
||||
#define F_DIP_COGNEREDE4 131
|
||||
#define F_DIP_COGNEREDE5 132
|
||||
#define F_DIP_COGNEREDE6 133
|
||||
#define F_DIP_COGNEREDE7 134
|
||||
#define F_DIP_COGNEREDE8 135
|
||||
#define F_DIP_COGNEREDE9 136
|
||||
#define F_DIP_NOMEREDE0 137
|
||||
#define F_DIP_NOMEREDE1 138
|
||||
#define F_DIP_NOMEREDE2 139
|
||||
#define F_DIP_NOMEREDE3 140
|
||||
#define F_DIP_NOMEREDE4 141
|
||||
#define F_DIP_NOMEREDE5 142
|
||||
#define F_DIP_NOMEREDE6 143
|
||||
#define F_DIP_NOMEREDE7 144
|
||||
#define F_DIP_NOMEREDE8 145
|
||||
#define F_DIP_NOMEREDE9 146
|
||||
|
||||
// Aggiunte 96
|
||||
#define ADF_CODDIPDEC 147
|
||||
#define ADF_ASSFIS 148
|
||||
|
||||
#endif
|
||||
#ifndef _ANADIP_H
|
||||
#define _ANADIP_H
|
||||
|
||||
// Campi maschera manutenzione anagrafica dipendenti
|
||||
#define ADF_CODDITTA 181
|
||||
#define F_RAGSOCIALE 102
|
||||
#define ADF_DIP_CODDIP 103
|
||||
#define F_DIP_CODFI 104
|
||||
#define F_DIP_COGNOME 105
|
||||
#define F_DIP_NOME 106
|
||||
#define F_DIP_SESSO 107
|
||||
#define F_DIP_DATANA 108
|
||||
#define F_DIP_COMUNENA 109
|
||||
#define F_DIP_PROVNA 110
|
||||
#define F_DIP_COMUNERE 111
|
||||
#define F_DIP_PROVRE 112
|
||||
#define F_DIP_INDRE 113
|
||||
#define F_DIP_QUALIFICA 114
|
||||
#define F_DIP_STATOCIV 115
|
||||
#define F_DIP_EREDE 116
|
||||
#define F_DIP_CODEREDE0 117
|
||||
#define F_DIP_CODEREDE1 118
|
||||
#define F_DIP_CODEREDE2 119
|
||||
#define F_DIP_CODEREDE3 120
|
||||
#define F_DIP_CODEREDE4 121
|
||||
#define F_DIP_CODEREDE5 122
|
||||
#define F_DIP_CODEREDE6 123
|
||||
#define F_DIP_CODEREDE7 124
|
||||
#define F_DIP_CODEREDE8 125
|
||||
#define F_DIP_CODEREDE9 126
|
||||
#define F_DIP_COGNEREDE0 127
|
||||
#define F_DIP_COGNEREDE1 128
|
||||
#define F_DIP_COGNEREDE2 129
|
||||
#define F_DIP_COGNEREDE3 130
|
||||
#define F_DIP_COGNEREDE4 131
|
||||
#define F_DIP_COGNEREDE5 132
|
||||
#define F_DIP_COGNEREDE6 133
|
||||
#define F_DIP_COGNEREDE7 134
|
||||
#define F_DIP_COGNEREDE8 135
|
||||
#define F_DIP_COGNEREDE9 136
|
||||
#define F_DIP_NOMEREDE0 137
|
||||
#define F_DIP_NOMEREDE1 138
|
||||
#define F_DIP_NOMEREDE2 139
|
||||
#define F_DIP_NOMEREDE3 140
|
||||
#define F_DIP_NOMEREDE4 141
|
||||
#define F_DIP_NOMEREDE5 142
|
||||
#define F_DIP_NOMEREDE6 143
|
||||
#define F_DIP_NOMEREDE7 144
|
||||
#define F_DIP_NOMEREDE8 145
|
||||
#define F_DIP_NOMEREDE9 146
|
||||
|
||||
// Aggiunte 96
|
||||
#define ADF_CODDIPDEC 147
|
||||
#define ADF_ASSFIS 148
|
||||
#define ADF_COMNASC 149
|
||||
#define ADF_COMRES 150
|
||||
#define ADF_CODCOMNASC 151
|
||||
|
||||
#endif
|
||||
|
@ -37,14 +37,17 @@ STRING F_CODFISC 11
|
||||
BEGIN
|
||||
PROMPT 4 5 "Codice fiscale "
|
||||
FIELD LF_TABCOM->S1
|
||||
CHECKTYPE REQUIRED
|
||||
WARNING "Manca il codice fiscale"
|
||||
VALIDATE PI_FUNC F_STATO
|
||||
END
|
||||
|
||||
NUMBER F_ISCALBO 5
|
||||
BEGIN
|
||||
PROMPT 4 7 "Codice iscrizione albo "
|
||||
// FIELD LF_TABCOM->S2
|
||||
FIELD LF_TABCOM->I1
|
||||
CHECKTYPE REQUIRED
|
||||
WARNING "Manca il codice iscrizione albo"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
@ -4,7 +4,7 @@
|
||||
#define __DIPEND_H
|
||||
|
||||
#define DIP_CODDITTA "CODDITTA"
|
||||
#define DIP_CODIP "CODIP"
|
||||
#define DIP_CODIP "CODDIP"
|
||||
#define DIP_COGNOME "COGNOME"
|
||||
#define DIP_NOME "NOME"
|
||||
#define DIP_CODFI "CODFI"
|
||||
|
283
m770/generic.cpp
283
m770/generic.cpp
@ -19,7 +19,7 @@
|
||||
#include <urldefid.h>
|
||||
#include <tabutil.h>
|
||||
#include <config.h>
|
||||
|
||||
#include <progind.h>
|
||||
#include "dipend.h"
|
||||
#include <nditte.h>
|
||||
#include "77lib.h"
|
||||
@ -31,8 +31,11 @@
|
||||
|
||||
#define CODDITTA77 181
|
||||
#define ANNODIC77 182
|
||||
|
||||
|
||||
HIDDEN const char* QUALIFICA_EREDE = "11";
|
||||
|
||||
void socbbis_setta_ditta(TMask& m);
|
||||
long ADCalcolaItems(const int lffile, const long codditta, const long coddip);
|
||||
|
||||
class TGenericRel_application : public TRelation_application
|
||||
{
|
||||
@ -42,10 +45,13 @@ class TGenericRel_application : public TRelation_application
|
||||
static bool PE1calcrit_handler (TMask_field& m, KEY k);
|
||||
static bool ADabilita_coddipdec (TMask_field& m, KEY k);
|
||||
static bool ADCodDipDec (TMask_field& m, KEY k);
|
||||
static bool eredi_handler (TMask_field& m, KEY k);
|
||||
void ADCancellaQuadri(const long codditta,const long coddip);
|
||||
// static bool eredi_handler (TMask_field& m, KEY k);
|
||||
static bool date_handler (TMask_field& m, KEY k);
|
||||
long _codditta;
|
||||
long _lCodDipDec;
|
||||
long _lCodDip;
|
||||
TString16 _sQualificaPrec; // qualifica prima di andare in edit
|
||||
const char* _maskname;
|
||||
int _num;
|
||||
TString16 _quadro;
|
||||
@ -130,8 +136,6 @@ bool TGenericRel_application::user_create()
|
||||
|
||||
if (Dipendenti())
|
||||
{
|
||||
// _msk->set_handler(F_DIP_EREDE, eredi_handler);
|
||||
_msk->set_handler(ADF_CODDIPDEC, eredi_handler);
|
||||
_msk->set_handler(F_DIP_QUALIFICA, ADabilita_coddipdec);
|
||||
_msk->set_handler(ADF_CODDIPDEC, ADCodDipDec);
|
||||
set_search_field(ADF_DIP_CODDIP);
|
||||
@ -187,7 +191,7 @@ bool TGenericRel_application::user_destroy()
|
||||
{
|
||||
if (_quadro != "" && _quadro != "0")
|
||||
if (_registra)
|
||||
_rip.set(_quadro ,0);
|
||||
_rip.set(_quadro);
|
||||
delete _msk;
|
||||
delete _rel;
|
||||
return TRUE;
|
||||
@ -209,9 +213,230 @@ int TGenericRel_application::write(const TMask& m)
|
||||
return err;
|
||||
}
|
||||
|
||||
// Costruisce un cursore solo per sapere gli items per la progind
|
||||
long ADCalcolaItems(const int lffile, const long codditta, const long coddip)
|
||||
{
|
||||
long items=0L;
|
||||
TRelation* rel = new TRelation(lffile);
|
||||
TString filtro;
|
||||
filtro.format("CODDITTA=%ld && CODDIP=%ld", codditta,coddip);
|
||||
TCursor* cur = new TCursor(rel,filtro,1);
|
||||
(*cur) = 0L;
|
||||
items = cur->items();
|
||||
delete cur;
|
||||
delete rel;
|
||||
return items;
|
||||
}
|
||||
|
||||
void TGenericRel_application::ADCancellaQuadri(const long codditta,const long coddip)
|
||||
{
|
||||
bool bRimossoA,bRimossoA1,bRimossoA2,bRimossoA3,bRimossoB,bRimossoB1;
|
||||
bRimossoA=bRimossoA1=bRimossoA2=bRimossoA3=bRimossoB=bRimossoB1=FALSE;
|
||||
|
||||
long items = ADCalcolaItems(LF_QUAA, codditta, coddip);
|
||||
TProgind progA(items,"Cancellazione quadro A", FALSE,TRUE);
|
||||
// Cancella quadro A
|
||||
TLocalisamfile qa(LF_QUAA);
|
||||
qa.zero();
|
||||
qa.put("CODDITTA", (long) codditta);
|
||||
qa.put("CODDIP", (long) coddip);
|
||||
TRectype dep(qa.curr());
|
||||
for (qa.read(_isgteq, _lock); !qa.eof(); qa.next(_lock))
|
||||
{
|
||||
progA.addstatus(1);
|
||||
if (qa.curr() > dep)
|
||||
{
|
||||
qa.reread(_unlock);
|
||||
break;
|
||||
}
|
||||
const long lDit = qa.get_long("CODDITTA");
|
||||
const long lDip = qa.get_long("CODDIP");
|
||||
if (lDit == codditta && lDip == coddip)
|
||||
{
|
||||
bRimossoA = TRUE;
|
||||
qa.remove();
|
||||
}
|
||||
}
|
||||
|
||||
// Cancella quadro A1
|
||||
items = ADCalcolaItems(LF_QUAA1, codditta, coddip);
|
||||
TProgind progA1(items,"Cancellazione quadro A-1", FALSE,TRUE);
|
||||
TLocalisamfile qa1(LF_QUAA1);
|
||||
qa1.zero();
|
||||
qa1.put("CODDITTA", (long) codditta);
|
||||
qa1.put("CODDIP", (long) coddip);
|
||||
TRectype dep1(qa1.curr());
|
||||
for (qa1.read(_isgteq, _lock); !qa1.eof(); qa1.next(_lock))
|
||||
{
|
||||
progA1.addstatus(1);
|
||||
if (qa1.curr() > dep1)
|
||||
{
|
||||
qa1.reread(_unlock);
|
||||
break;
|
||||
}
|
||||
const long lDit = qa1.get_long("CODDITTA");
|
||||
const long lDip = qa1.get_long("CODDIP");
|
||||
if (lDit == codditta && lDip == coddip)
|
||||
{
|
||||
bRimossoA1 = TRUE;
|
||||
qa1.remove();
|
||||
}
|
||||
}
|
||||
|
||||
// Cancella quadro A2
|
||||
items = ADCalcolaItems(LF_QUAA2, codditta, coddip);
|
||||
TProgind progA2(items,"Cancellazione quadro A-2", FALSE,TRUE);
|
||||
TLocalisamfile qa2(LF_QUAA2);
|
||||
qa2.zero();
|
||||
qa2.put("CODDITTA", (long) codditta);
|
||||
qa2.put("CODDIP", (long) coddip);
|
||||
TRectype dep2(qa2.curr());
|
||||
for (qa2.read(_isgteq, _lock); !qa2.eof(); qa2.next(_lock))
|
||||
{
|
||||
progA2.addstatus(1);
|
||||
if (qa2.curr() > dep2)
|
||||
{
|
||||
qa2.reread(_unlock);
|
||||
break;
|
||||
}
|
||||
const long lDit = qa2.get_long("CODDITTA");
|
||||
const long lDip = qa2.get_long("CODDIP");
|
||||
if (lDit == codditta && lDip == coddip)
|
||||
{
|
||||
bRimossoA2 = TRUE;
|
||||
qa2.remove();
|
||||
}
|
||||
}
|
||||
|
||||
// Cancella quadro A3
|
||||
items = ADCalcolaItems(LF_QUAA3, codditta, coddip);
|
||||
TProgind progA3(items,"Cancellazione quadro A-3", FALSE,TRUE);
|
||||
TLocalisamfile qa3(LF_QUAA3);
|
||||
qa3.zero();
|
||||
qa3.put("CODDITTA", (long) codditta);
|
||||
qa3.put("NPROG", 1);
|
||||
qa3.put("CODDIP", (long) coddip);
|
||||
TRectype dep3(qa3.curr());
|
||||
for (qa3.read(_isgteq, _lock); !qa3.eof(); qa3.next(_lock))
|
||||
{
|
||||
progA3.addstatus(1);
|
||||
const long lDit = qa3.get_long("CODDITTA");
|
||||
const long lDip = qa3.get_long("CODDIP");
|
||||
if (lDit != codditta || lDip != coddip)
|
||||
{
|
||||
qa3.reread(_unlock);
|
||||
continue;
|
||||
}
|
||||
if (lDit == codditta && lDip == coddip)
|
||||
{
|
||||
bRimossoA3 = TRUE;
|
||||
qa3.remove();
|
||||
}
|
||||
}
|
||||
|
||||
// Cancella quadro B
|
||||
items = ADCalcolaItems(LF_QUAB, codditta, coddip);
|
||||
TProgind progB(items,"Cancellazione quadro B", FALSE,TRUE);
|
||||
TLocalisamfile qb(LF_QUAB);
|
||||
qb.zero();
|
||||
qb.put("CODDITTA", (long) codditta);
|
||||
qb.put("CODDIP", (long) coddip);
|
||||
TRectype dep4(qb.curr());
|
||||
for (qb.read(_isgteq, _lock); !qb.eof(); qb.next(_lock))
|
||||
{
|
||||
progB.addstatus(1);
|
||||
if (qb.curr() > dep4)
|
||||
{
|
||||
qb.reread(_unlock);
|
||||
break;
|
||||
}
|
||||
const long lDit = qb.get_long("CODDITTA");
|
||||
const long lDip = qb.get_long("CODDIP");
|
||||
if (lDit == codditta && lDip == coddip)
|
||||
{
|
||||
bRimossoB = TRUE;
|
||||
qb.remove();
|
||||
}
|
||||
}
|
||||
|
||||
// Cancella quadro B1
|
||||
items = ADCalcolaItems(LF_QUAB1, codditta, coddip);
|
||||
TProgind progB1(items,"Cancellazione quadro B-1", FALSE,TRUE);
|
||||
TLocalisamfile qb1(LF_QUAB1);
|
||||
qb1.zero();
|
||||
qb1.put("CODDITTA", (long) codditta);
|
||||
qb1.put("CODDIP", (long) coddip);
|
||||
TRectype dep5(qb1.curr());
|
||||
for (qb1.read(_isgteq, _lock); !qb1.eof(); qb1.next(_lock))
|
||||
{
|
||||
progB1.addstatus(1);
|
||||
if (qb1.curr() > dep5)
|
||||
{
|
||||
qb1.reread(_unlock);
|
||||
break;
|
||||
}
|
||||
const long lDit = qb1.get_long("CODDITTA");
|
||||
const long lDip = qb1.get_long("CODDIP");
|
||||
if (lDit == codditta && lDip == coddip)
|
||||
{
|
||||
bRimossoB1 = TRUE;
|
||||
qb1.remove();
|
||||
}
|
||||
}
|
||||
|
||||
if (bRimossoA)
|
||||
_rip.set("A");
|
||||
if (bRimossoA1)
|
||||
_rip.set("A1");
|
||||
if (bRimossoA2)
|
||||
_rip.set("A2");
|
||||
if (bRimossoA3)
|
||||
_rip.set("A3");
|
||||
if (bRimossoB)
|
||||
_rip.set("B");
|
||||
if (bRimossoB1)
|
||||
_rip.set("B1");
|
||||
}
|
||||
|
||||
bool TGenericRel_application::remove()
|
||||
{
|
||||
_registra = TRUE;
|
||||
_registra = TRUE;
|
||||
|
||||
if (Dipendenti())
|
||||
{
|
||||
const long codditta = _codditta;
|
||||
const long coddip = _lCodDip;
|
||||
|
||||
// Se era un erede resetta il riferimento al deceduto..
|
||||
if (_sQualificaPrec != "" && _sQualificaPrec == QUALIFICA_EREDE)
|
||||
{
|
||||
if (_lCodDipDec > 0L)
|
||||
if (!riscrivi_erede(codditta, _lCodDipDec, coddip,0L))
|
||||
return warning_box("Fallita cancellazione erede");
|
||||
}
|
||||
|
||||
// Se era un deceduto cancella cod.dip.dec. sugli eredi
|
||||
if (is_deceduto(codditta,coddip))
|
||||
{
|
||||
TLocalisamfile dip (LF_DIPEND);
|
||||
TProgind ProgDip(dip.items(),"Cancellazione codice deceduto ..", FALSE,TRUE);
|
||||
for (dip.first(); !dip.eof(); dip.next(_lock))
|
||||
{
|
||||
ProgDip.addstatus(1);
|
||||
const long lDipDec = dip.get_long(DIP_CODDIPDEC);
|
||||
if (lDipDec == coddip)
|
||||
{
|
||||
dip.put(DIP_CODDIPDEC, 0L);
|
||||
dip.rewrite();
|
||||
}
|
||||
else
|
||||
dip.reread(_unlock);
|
||||
}
|
||||
}
|
||||
|
||||
// Cancella tutti i quadri che facevano riferimento a questo dip.
|
||||
ADCancellaQuadri(codditta,coddip);
|
||||
}
|
||||
return TRelation_application::remove();
|
||||
}
|
||||
|
||||
@ -235,7 +460,11 @@ void TGenericRel_application::init_modify_mode(TMask& m)
|
||||
{
|
||||
init_mask(m);
|
||||
if (Dipendenti())
|
||||
_lCodDipDec = m.get_long(ADF_CODDIPDEC);
|
||||
{
|
||||
_lCodDip = m.get_long(ADF_DIP_CODDIP);
|
||||
_lCodDipDec = m.get_long(ADF_CODDIPDEC);
|
||||
_sQualificaPrec = m.get(F_DIP_QUALIFICA);
|
||||
}
|
||||
}
|
||||
|
||||
void TGenericRel_application::init_insert_mode(TMask& m)
|
||||
@ -245,6 +474,12 @@ void TGenericRel_application::init_insert_mode(TMask& m)
|
||||
|
||||
void TGenericRel_application::init_query_mode(TMask& m)
|
||||
{
|
||||
if (Dipendenti())
|
||||
{
|
||||
_lCodDipDec = 0L;
|
||||
_sQualificaPrec = "";
|
||||
}
|
||||
|
||||
if (_num == LF_SOCTRASF || _num == LF_BASEBIS)
|
||||
{
|
||||
socbbis_setta_ditta(m);
|
||||
@ -342,14 +577,30 @@ bool TGenericRel_application::ADabilita_coddipdec(TMask_field& f, KEY k)
|
||||
{
|
||||
TMask& m = f.mask();
|
||||
TString qual(f.get());
|
||||
if (qual == "11")
|
||||
if (qual == QUALIFICA_EREDE)
|
||||
m.enable(ADF_CODDIPDEC);
|
||||
else
|
||||
m.disable(ADF_CODDIPDEC);
|
||||
else
|
||||
{
|
||||
// Se prima era un erede e ora non lo e' piu' aggiorna il deceduto (brr..)
|
||||
if (app()._sQualificaPrec != "" &&
|
||||
app()._sQualificaPrec == QUALIFICA_EREDE)
|
||||
{
|
||||
const long codditta = app()._codditta;
|
||||
const long coddip = m.get_long(ADF_DIP_CODDIP);
|
||||
const long lDecedutoPrec = m.get_long(ADF_CODDIPDEC);
|
||||
if (lDecedutoPrec > 0L)
|
||||
if (!riscrivi_erede(codditta, lDecedutoPrec,coddip,0L))
|
||||
return warning_box("Fallita cancellazione erede");
|
||||
}
|
||||
m.reset(ADF_CODDIPDEC);
|
||||
m.disable(ADF_CODDIPDEC);
|
||||
}
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
const char* FALLITO_EREDE_MSG = "Impossibile inserire un nuovo erede. Il numero massimo di eredi e' 10";
|
||||
|
||||
bool TGenericRel_application::ADCodDipDec(TMask_field& f, KEY k)
|
||||
{
|
||||
if (k == K_ENTER)
|
||||
@ -374,23 +625,24 @@ bool TGenericRel_application::ADCodDipDec(TMask_field& f, KEY k)
|
||||
{
|
||||
// Cancella l'erede nel rec.del dec. precedente
|
||||
if (!riscrivi_erede(codditta, lDecedutoOriginario,coddip,0L))
|
||||
return warning_box("Fallita cancellazione erede");
|
||||
return warning_box("Impossibile cancellare il codice erede nella scheda del dipendente deceduto");
|
||||
// Scrive l'erede nel rec.del dec. attuale
|
||||
if (lDecedutoCorrente != 0L)
|
||||
if (!scrivi_erede(codditta, lDecedutoCorrente, coddip))
|
||||
return warning_box("Fallita scrittura codice erede su deceduto");
|
||||
return warning_box(FALLITO_EREDE_MSG);
|
||||
}
|
||||
else
|
||||
if (lDecedutoCorrente != 0L)
|
||||
{
|
||||
if (!scrivi_erede(codditta, lDecedutoCorrente, coddip))
|
||||
return warning_box("Fallita scrittura codice erede su deceduto");
|
||||
return warning_box(FALLITO_EREDE_MSG);
|
||||
app()._lCodDipDec = lDecedutoCorrente;
|
||||
}
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/*
|
||||
bool TGenericRel_application::eredi_handler(TMask_field& f, KEY k)
|
||||
{
|
||||
if (k == K_TAB || k == K_SPACE)
|
||||
@ -426,7 +678,8 @@ bool TGenericRel_application::eredi_handler(TMask_field& f, KEY k)
|
||||
}
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
bool TGenericRel_application::date_handler(TMask_field& f, KEY k)
|
||||
{
|
||||
|
@ -3,6 +3,7 @@
|
||||
#include <urldefid.h>
|
||||
#include <tabutil.h>
|
||||
#include <config.h>
|
||||
#include "dipend.h"
|
||||
#include "774200.h"
|
||||
#include "77lib.h"
|
||||
#include "quadrob.h"
|
||||
@ -10,9 +11,6 @@
|
||||
#include "77qb.h"
|
||||
#include "77qb1.h"
|
||||
|
||||
#define CODDITTA77 181
|
||||
#define ANNODIC77 182
|
||||
|
||||
class TQuadriBB1_application : public TRelation_application
|
||||
{
|
||||
static bool codditta77_handler (TMask_field& m, KEY k);
|
||||
@ -22,6 +20,7 @@ class TQuadriBB1_application : public TRelation_application
|
||||
static bool QBTotRedImpHandler (TMask_field& f, KEY k);
|
||||
static bool QBAmmRopeHandler (TMask_field& f, KEY k);
|
||||
static bool QBTotIndennHandler (TMask_field& f, KEY k);
|
||||
static void BB1SettaCognomeNome(TMask& m);
|
||||
const char* _maskname;
|
||||
int _num;
|
||||
int _pos_quadro; // posizione nell'array dei quadri. Usato in set_comp
|
||||
@ -41,6 +40,9 @@ class TQuadriBB1_application : public TRelation_application
|
||||
bool EsisteGiaCodDip(const TMask& m);
|
||||
bool EsisteGiaRecordDip(const TMask& m);
|
||||
long _codditta;
|
||||
long _lCodDip;
|
||||
int _iNprog;
|
||||
TString _sCognome, _sNome;
|
||||
void init_mask(TMask&);
|
||||
|
||||
protected:
|
||||
@ -136,37 +138,41 @@ TMask* TQuadriBB1_application::load_mask(int n)
|
||||
|
||||
TMask* m = new TMask(name);
|
||||
m->set_handler(CODDITTA77, codditta77_handler);
|
||||
if (QuadroB())
|
||||
m->set_handler(QBF_CODDIP, CodDipHandler);
|
||||
else
|
||||
m->set_handler(QB1F_CODDIP, CodDipHandler);
|
||||
m->set_handler(QuadroB() ? QBF_NPROG : QB1F_NPROG, NprogExitHandler);
|
||||
|
||||
switch (n)
|
||||
{
|
||||
case 0:
|
||||
case 0:
|
||||
if (QuadroB())
|
||||
{
|
||||
m->set_handler(QBF_CODDIP_QB, CodDipHandler);
|
||||
m->set_handler(QBF_CODDIP_ANAG, CodDipHandler);
|
||||
set_search_field(QBF_NPROG);
|
||||
}
|
||||
else
|
||||
{
|
||||
m->set_handler(QB1F_CODDIP_QB1, CodDipHandler);
|
||||
m->set_handler(QB1F_CODDIP_ANAG, CodDipHandler);
|
||||
set_search_field(QB1F_NPROG);
|
||||
}
|
||||
m->set_handler(QuadroB() ? QBF_NPROG : QB1F_NPROG, NprogExitHandler);
|
||||
break;
|
||||
case 1:
|
||||
if (m)
|
||||
if (QuadroB())
|
||||
{
|
||||
{
|
||||
m->set_handler(QBF_TOTIMP, QBTotRedImpHandler);
|
||||
m->set_handler(QBF_ROPE, QBAmmRopeHandler);
|
||||
m->set_handler(QBF_AMMNETTO, QBTotIndennHandler);
|
||||
m->set_handler(QBF_AMMNETTO2, QBTotIndennHandler);
|
||||
m->set_handler(QBF_CONTLAV, QBTotIndennHandler);
|
||||
m->set_handler(QBF_TFR7494, QBTotIndennHandler);
|
||||
m->set_handler(QBF_INDEN7494, QBTotIndennHandler);
|
||||
set_search_field(QBF_QUAB_CODDIP);
|
||||
}
|
||||
else
|
||||
set_search_field(QB1F_ANADIP_CODDIP);
|
||||
m->set_handler(QBF_INDEN7494, QBTotIndennHandler);
|
||||
}
|
||||
m->disable(DLG_FINDREC);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
m->disable(DLG_FINDREC);
|
||||
|
||||
return _msk[n] = m;
|
||||
}
|
||||
|
||||
@ -184,7 +190,7 @@ void TQuadriBB1_application::on_config_change()
|
||||
bool TQuadriBB1_application::user_create()
|
||||
{
|
||||
_registra = FALSE;
|
||||
_rel = new TRelation(_num);
|
||||
_rel = new TRelation(_num);
|
||||
_codditta = get_firm_770();
|
||||
return TRUE;
|
||||
}
|
||||
@ -215,16 +221,16 @@ bool TQuadriBB1_application::EsisteGiaCodDip(const TMask& m)
|
||||
q.zero();
|
||||
q.put(QB_CODDITTA, _codditta);
|
||||
q.put(QB_CODDIP, codip);
|
||||
|
||||
TRectype dep(q.curr());
|
||||
q.read(_isgteq);
|
||||
return q.curr() == dep;
|
||||
q.read(_isgteq);
|
||||
const bool bEq = q.curr() == dep;
|
||||
return bEq;
|
||||
}
|
||||
|
||||
// Controlla se esiste gia' una chiave completa
|
||||
bool TQuadriBB1_application::EsisteGiaRecordDip(const TMask& m)
|
||||
{
|
||||
TLocalisamfile q(_num);
|
||||
TLocalisamfile q(_num);
|
||||
const long codip = m.get_long(QuadroB()? QBF_CODDIP : QB1F_CODDIP);
|
||||
const long nprog = m.get_long(QuadroB()? QBF_NPROG : QB1F_NPROG);
|
||||
q.zero();
|
||||
@ -232,7 +238,8 @@ bool TQuadriBB1_application::EsisteGiaRecordDip(const TMask& m)
|
||||
q.put(QB_CODDIP, codip);
|
||||
q.put(QB_NPROG, nprog);
|
||||
TRectype dep(q.curr());
|
||||
return q.read() == NOERR;
|
||||
const bool bEq = q.read() == NOERR;
|
||||
return bEq;
|
||||
}
|
||||
|
||||
int TQuadriBB1_application::rewrite(const TMask& m)
|
||||
@ -242,21 +249,18 @@ int TQuadriBB1_application::rewrite(const TMask& m)
|
||||
_registra = err == NOERR;
|
||||
return err;
|
||||
}
|
||||
|
||||
/*
|
||||
int TQuadriBB1_application::read(TMask& m)
|
||||
{
|
||||
int err;
|
||||
TLocalisamfile q(_num);
|
||||
const long codip = m.get_long(QuadroB()? QBF_CODDIP : QB1F_CODDIP);
|
||||
const long nprog = m.get_long(QuadroB()? QBF_NPROG : QB1F_NPROG);
|
||||
q.zero();
|
||||
q.put(QB_CODDITTA, _codditta);
|
||||
q.put(QB_CODDIP, codip);
|
||||
q.put(QB_NPROG, nprog);
|
||||
err = q.read();
|
||||
_rel->lfile().put("CODDITTA", (long)_codditta);
|
||||
_rel->lfile().put("CODDIP", (long)_lCodDip);
|
||||
_rel->lfile().put("NPROG", _iNprog);
|
||||
err = _rel->read();
|
||||
return err;
|
||||
} */
|
||||
}
|
||||
*/
|
||||
|
||||
int TQuadriBB1_application::write(const TMask& m)
|
||||
{
|
||||
@ -283,10 +287,10 @@ void TQuadriBB1_application::init_mask(TMask& m)
|
||||
const long codip = m.get_long(QBF_CODDIP);
|
||||
if (codip==0L)
|
||||
return;
|
||||
if (is_erede(codditta,codip))
|
||||
if (is_erede(codditta,codip) && modifica(m))
|
||||
{
|
||||
m.disable(-GROUP_ALL); // Disabilita tutti i campi
|
||||
m.enable(-GROUP_EREDE); // Abilita solo quelli giusti
|
||||
m.disable(-GROUP_ALL);
|
||||
m.enable(-GROUP_EREDE);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -301,7 +305,22 @@ void TQuadriBB1_application::init_mask(TMask& m)
|
||||
|
||||
void TQuadriBB1_application::init_modify_mode(TMask& m)
|
||||
{
|
||||
init_mask(m);
|
||||
init_mask(m);
|
||||
/*
|
||||
if (QuadroB())
|
||||
{
|
||||
m.set(QBF_CODDIP, _lCodDip);
|
||||
m.set(QBF_COGNOME, _sCognome);
|
||||
m.set(QBF_NOME, _sNome);
|
||||
m.set(QBF_NPROG, _iNprog);
|
||||
}
|
||||
else
|
||||
{
|
||||
m.set(QB1F_CODDIP, _lCodDip);
|
||||
m.set(QB1F_COGNOME, _sCognome);
|
||||
m.set(QB1F_NOME, _sNome);
|
||||
m.set(QB1F_NPROG, _iNprog);
|
||||
}*/
|
||||
}
|
||||
|
||||
void TQuadriBB1_application::init_insert_mode(TMask& m)
|
||||
@ -311,11 +330,33 @@ void TQuadriBB1_application::init_insert_mode(TMask& m)
|
||||
|
||||
void TQuadriBB1_application::init_query_mode(TMask& m)
|
||||
{
|
||||
m.set(ANNODIC77, _anno_dic);
|
||||
m.set(ANNODIC77, _anno_dic);
|
||||
if (QuadroB())
|
||||
{
|
||||
m.send_key(K_SHIFT+K_CTRL+'h', -QBG_ANADIP); // nasconde dipend.
|
||||
m.send_key(K_SHIFT+K_CTRL+'s', -QBG_QUADROB); // ricerca su B
|
||||
}
|
||||
else
|
||||
{
|
||||
m.send_key(K_SHIFT+K_CTRL+'h', -QB1G_ANADIP); // nasconde dipend.
|
||||
m.send_key(K_SHIFT+K_CTRL+'s', -QB1G_QUADROB); // ricerca su B
|
||||
}
|
||||
}
|
||||
|
||||
void TQuadriBB1_application::init_query_insert_mode(TMask& m)
|
||||
{}
|
||||
{
|
||||
m.set(ANNODIC77, _anno_dic);
|
||||
if (QuadroB())
|
||||
{
|
||||
m.send_key(K_SHIFT+K_CTRL+'h', -QBG_ANADIP); // group 2 Nasconde QUADROB
|
||||
m.send_key(K_SHIFT+K_CTRL+'s', -QBG_QUADROB); // group 1 Ricerca su ANAGR.DIPENDENTI
|
||||
}
|
||||
else
|
||||
{
|
||||
m.send_key(K_SHIFT+K_CTRL+'h', -QB1G_ANADIP); // group 2 Nasconde QUADROB
|
||||
m.send_key(K_SHIFT+K_CTRL+'s', -QB1G_QUADROB); // group 1 Ricerca su ANAGR.DIPENDENTI
|
||||
}
|
||||
}
|
||||
|
||||
bool TQuadriBB1_application::codditta77_handler(TMask_field& f, KEY k)
|
||||
{
|
||||
@ -362,7 +403,17 @@ bool TQuadriBB1_application::CodDipHandler(TMask_field& f, KEY k)
|
||||
{
|
||||
TMask& m = f.mask();
|
||||
if (!m.is_running()) return TRUE;
|
||||
// if (k == K_TAB && ricerca(m))
|
||||
|
||||
if (k == K_ENTER)
|
||||
{
|
||||
const long codip = atol(f.get());
|
||||
if (codip==0L)
|
||||
return TRUE;
|
||||
|
||||
if (!esiste_dipendente(app()._codditta, codip))
|
||||
return f.warning_box("Dipendente inesistente");
|
||||
}
|
||||
|
||||
if (k == K_TAB)
|
||||
{
|
||||
const long codip = atol(f.get());
|
||||
@ -377,6 +428,34 @@ bool TQuadriBB1_application::CodDipHandler(TMask_field& f, KEY k)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
// Compila cognome e nome se vuoti
|
||||
void TQuadriBB1_application::BB1SettaCognomeNome(TMask& m)
|
||||
{
|
||||
const int iDlgCognome = app().QuadroB() ? QBF_COGNOME : QB1F_COGNOME;
|
||||
const int iDlgNome = app().QuadroB() ? QBF_NOME : QB1F_NOME;
|
||||
const int iDlgNProg = app().QuadroB() ? QBF_NPROG : QB1F_NPROG;
|
||||
const int iProg = m.get_int(iDlgNProg);
|
||||
TString sCognome(m.get(iDlgCognome));
|
||||
TString sNome;
|
||||
if (app()._lCodDip != 0L)
|
||||
{
|
||||
TLocalisamfile dip (LF_DIPEND);
|
||||
dip.zero();
|
||||
dip.put(DIP_CODDITTA, app()._codditta);
|
||||
dip.put(DIP_CODIP, app()._lCodDip);
|
||||
if (dip.read() == NOERR)
|
||||
{
|
||||
sCognome = dip.get("COGNOME");
|
||||
sNome = dip.get("NOME");
|
||||
app()._sCognome = sCognome;
|
||||
app()._sNome = sNome;
|
||||
app()._iNprog = iProg;
|
||||
m.set(iDlgCognome, sCognome);
|
||||
m.set(iDlgNome, sNome);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool TQuadriBB1_application::NprogExitHandler(TMask_field& f, KEY k)
|
||||
{
|
||||
TMask& m = f.mask();
|
||||
@ -388,21 +467,26 @@ bool TQuadriBB1_application::NprogExitHandler(TMask_field& f, KEY k)
|
||||
if (nprog.not_empty())
|
||||
{
|
||||
const int ID_CODDIP = app().QuadroB()? QBF_CODDIP : QB1F_CODDIP;
|
||||
// Controlla che esista il dipendente
|
||||
const long codip = m.get_long(ID_CODDIP);
|
||||
const long codip = app()._lCodDip = m.get_long(ID_CODDIP);
|
||||
const long codditta = app()._codditta;
|
||||
// const long codip = m.get_long(ID_CODDIP);
|
||||
// const long codditta = app()._codditta;
|
||||
|
||||
if (codip==0L)
|
||||
return TRUE;
|
||||
|
||||
if (!esiste_dipendente(codditta, codip))
|
||||
return f.warning_box("Dipendente inesistente");
|
||||
|
||||
// Nel B1 e nel B (per gli eredi) può esserci un solo record per dipendente
|
||||
if (app().QuadroB1() || (app().QuadroB() && is_erede(codditta,codip)) )
|
||||
// Se esiste gia' un record per questo dipendente MA NON la chiave completa
|
||||
// (ora presente nella maschera) rifiuta il record
|
||||
// (impedisce cioe' di andare in inserimento, a meno che non sia la prima
|
||||
// volta, cioe' a meno che non esista ancora nessun record per il dip.
|
||||
// (questo caso e' segnalato dal fallimento della EsisteGiaCodDip) )
|
||||
if (app().EsisteGiaCodDip(m) && !app().EsisteGiaRecordDip(m))
|
||||
return warning_box("Esiste già una riga per questo dipendente");
|
||||
|
||||
// Compila cognome e nome se vuoti
|
||||
BB1SettaCognomeNome(m);
|
||||
m.stop_run(K_AUTO_ENTER);
|
||||
}
|
||||
}
|
||||
@ -416,24 +500,27 @@ bool TQuadriBB1_application::PrimoNprogLibero(TMask& m, const long codditta, con
|
||||
{
|
||||
long nprog = 0L;
|
||||
const int id_nprog = app().QuadroB() ? QBF_NPROG : QB1F_NPROG;
|
||||
const bool erede = is_erede(codditta,codip);
|
||||
bool EsisteGiaDip = FALSE;
|
||||
const bool erede = is_erede(codditta,codip);
|
||||
bool EsisteGiaDip = FALSE;
|
||||
TLocalisamfile qb(app()._num);
|
||||
qb.zero();
|
||||
qb.put(QB_CODDITTA, codditta);
|
||||
qb.put(QB_CODDIP, codip);
|
||||
TRectype dep(qb.curr());
|
||||
for (qb.read(_isgteq); !qb.eof(); qb.next())
|
||||
TRectype dep(qb.curr());
|
||||
qb.read(_isgteq);
|
||||
TRecnotype lPosPrec = qb.recno();
|
||||
for ( ; !qb.eof(); qb.next())
|
||||
{
|
||||
if (qb.curr() > dep) break;
|
||||
EsisteGiaDip = TRUE;
|
||||
nprog = qb.get_long(QB_NPROG);
|
||||
}
|
||||
|
||||
qb.readat(lPosPrec);
|
||||
|
||||
// Nel B se e' un erede si puo' solo andare in modifica
|
||||
// Nel B1 è consentito un solo record per dipendente
|
||||
if ( (nprog == 0) || (app().QuadroB1() && !EsisteGiaDip) ||
|
||||
(app().QuadroB() && !erede) )
|
||||
(app().QuadroB() && !erede) )
|
||||
nprog++;
|
||||
|
||||
TString16 nprog_str; nprog_str << nprog;
|
||||
|
@ -1,7 +1,7 @@
|
||||
// Mod.770 - Quadro A
|
||||
|
||||
#define QUA_CODDITTA "CODDITTA"
|
||||
#define QUA_CODIP "CODIP"
|
||||
#define QUA_CODIP "CODDIP"
|
||||
#define QUA_NPROG "NPROG"
|
||||
#define QUA_AREAATT "AREAATT"
|
||||
#define QUA_TIPO "TIPO"
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
#define QA3_CODDITTA "CODDITTA"
|
||||
#define QA3_NPROG "NPROG"
|
||||
#define QA3_CODIP "CODIP"
|
||||
#define QA3_CODIP "CODDIP"
|
||||
#define QA3_DIRAPTI "DIRAPTI"
|
||||
#define QA3_NGINC15 "NGINC15"
|
||||
#define QA3_REDCOR16 "REDCOR16"
|
||||
|
Loading…
x
Reference in New Issue
Block a user