- Correzione errore MI6147 su ricezione archivi da PC/Sistema per uscire dalla

maschera con ALT+C (Conferma).
- Correzione errore MI2178 - MI2177 Lista movimenti da ricevere.
- Correzione errore MI2172 - MI2179 Variazione movimenti SC da ricevere.


git-svn-id: svn://10.65.10.50/trunk@3857 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
ale 1996-10-31 16:59:54 +00:00
parent 9cebacf72d
commit 620c0d1df6
4 changed files with 204 additions and 50 deletions

View File

@ -722,7 +722,7 @@ bool TRic_archivi::baipassa(TMask& m,KEY k)
// else // Modifica del 05-06-96 xche' con le nuove maschere non // else // Modifica del 05-06-96 xche' con le nuove maschere non
// app()._baipassa = FALSE; // funziona piu', in quanto passa dall' handler anche quando // app()._baipassa = FALSE; // funziona piu', in quanto passa dall' handler anche quando
// faccio il conferma. // faccio il conferma.
return FALSE; return TRUE;
} }
void TRic_archivi::ripristina_trasfer() void TRic_archivi::ripristina_trasfer()

View File

@ -455,8 +455,6 @@ void TRic_ListaMov::apri_file_SC()
exp1.add("NUMPART==NUMPART"); exp1.add("NUMPART==NUMPART");
_relSC->add(_tpagsca,exp1,1,0,0,FALSE); _relSC->add(_tpagsca,exp1,1,0,0,FALSE);
_curSC = add_cursor(new TCursor (_relSC, "", 1)); // Cursore definito sui movimenti del saldaconto _curSC = add_cursor(new TCursor (_relSC, "", 1)); // Cursore definito sui movimenti del saldaconto
_ho_stampato = FALSE;
} }
} }
@ -970,7 +968,8 @@ bool TRic_ListaMov::controlla_riva()
int tipodet, tipocr, gruppocr, contocr; int tipodet, tipocr, gruppocr, contocr;
long sottocontocr; long sottocontocr;
real impo, impos; real impo, impos;
bool testata = TRUE; bool testata = TRUE;
bool no_grave = FALSE;
if (current_cursor()->is_first_match(LF_RMOVIVA)) if (current_cursor()->is_first_match(LF_RMOVIVA))
{ {
@ -1080,37 +1079,47 @@ bool TRic_ListaMov::controlla_riva()
iva.zero(); iva.zero();
iva.put("CODTAB", codiva); iva.put("CODTAB", codiva);
if (iva.read() != NOERR) if (iva.read() != NOERR)
{ {
rmoviva.readat(nrec); no_grave = TRUE;
return TRUE; // rmoviva.readat(nrec);
// return TRUE;
} }
if ( tipocr != 0 && tipocr != 1 && tipocr != 2 && tipocr != 3 && if ( tipocr != 0 && tipocr != 1 && tipocr != 2 && tipocr != 3 &&
tipocr != 4 && tipocr != 5 && tipocr != 8 && tipocr != 9 ) tipocr != 4 && tipocr != 5 && tipocr != 8 && tipocr != 9 )
{ {
rmoviva.readat(nrec); no_grave = TRUE;
return TRUE; // rmoviva.readat(nrec);
// return TRUE;
} }
if (gruppocr == 0 || contocr == 0 || sottocontocr == 0l) if (gruppocr == 0 || contocr == 0 || sottocontocr == 0l)
{ {
rmoviva.readat(nrec); no_grave = TRUE;
return TRUE; // rmoviva.readat(nrec);
// return TRUE;
} }
else if (gruppocr != 0 && contocr != 0 && sottocontocr != 0l) else if (gruppocr != 0 && contocr != 0 && sottocontocr != 0l)
{ {
bool ok = errori_partita(gruppocr,contocr,sottocontocr); bool ok = errori_partita(gruppocr,contocr,sottocontocr);
if (!ok) if (!ok)
{ {
rmoviva.readat(nrec); no_grave = TRUE;
return TRUE; // rmoviva.readat(nrec);
// return TRUE;
} }
} }
if (tipodet != 0 && tipodet != 1 && tipodet != 3 && tipodet != 9) if (tipodet != 0 && tipodet != 1 && tipodet != 3 && tipodet != 9)
{ {
rmoviva.readat(nrec); no_grave = TRUE;
return TRUE; // rmoviva.readat(nrec);
// return TRUE;
} }
} }
if (no_grave)
{
rmoviva.readat(nrec);
return TRUE;
}
rmoviva.readat(nrec); rmoviva.readat(nrec);
} }
return FALSE; return FALSE;
@ -3107,6 +3116,7 @@ bool TRic_ListaMov::set_print(int m)
_errore_grave_SC = FALSE; _errore_grave_SC = FALSE;
_intestaSC = TRUE; _intestaSC = TRUE;
_prima_volta = TRUE; _prima_volta = TRUE;
_ho_stampato = FALSE;
} }
else else
{ {
@ -3171,6 +3181,7 @@ bool TRic_ListaMov::set_print(int m)
_errore_grave_SC = FALSE; _errore_grave_SC = FALSE;
_intestaSC = TRUE; _intestaSC = TRUE;
_prima_volta = TRUE; _prima_volta = TRUE;
_ho_stampato = FALSE;
} }
else else
{ {

View File

@ -311,16 +311,55 @@ void TVar_sc::descr_condpag(const TString& codpag,int tipopag,const TString& ult
} }
else else
{ {
TTable cpg ("%CPG"); TTable rpg ("%RPG");
TString dep (format("%4d", (const char*) codpag)); int tipo;
cpg.zero(); TString dep;
cpg.put("CODTAB", dep); for (int i = 0; !rpg.eof(); rpg.next(), i++)
if (cpg.read() == NOERR) {
d_condpag = cpg.get("S0"); dep.format("%-s%3d", (const char*) codpag, i);
else
d_condpag = ""; rpg.zero();
} rpg.put("CODTAB", dep);
if (rpg.read() == NOERR)
{
tipo = rpg.get_int("I1");
if (tipo == tipopag)
{
switch(tipo)
{
case 1: d_condpag = "Rimessa diretta";
break;
case 2: d_condpag = "Tratta";
break;
case 3: d_condpag = "Ricevuta bancaria";
break;
case 4: d_condpag = "Cessione";
break;
case 5: d_condpag = "Paghero'";
break;
case 6: d_condpag = "Lettera di credito";
break;
case 7: d_condpag = "Tratta accettata";
break;
case 8: d_condpag = "Rapporti interbancari diretti";
break;
case 9: d_condpag = "Bonifico";
break;
case 10: d_condpag = "Altro";
break;
default: break;
};
break;
}
}
else
{
d_condpag = "";
break;
}
}
}
} }
void TVar_sc::setta_mask_scad(char tipo,int gruppo,int conto,long sottoc, void TVar_sc::setta_mask_scad(char tipo,int gruppo,int conto,long sottoc,
@ -1203,36 +1242,84 @@ bool TVar_sc::nrata_handler(TMask_field& f, KEY k)
bool TVar_sc::codpag_handler(TMask_field& f, KEY k) bool TVar_sc::codpag_handler(TMask_field& f, KEY k)
{ {
if ( (k == K_TAB || k == K_ENTER) && f.mask().is_running()) if ( (k == K_TAB || k == K_ENTER) )
{ {
TString descr; TString descr;
int tipo;
TString codpag = f.get(); TString codpag = f.get();
if (codpag.not_empty()) if (codpag.not_empty())
{ {
TTable cpg ("%CPG"); if (f.mask().is_running())
TString dep (format("%-4s", (const char*) codpag)); {
TTable cpg ("%CPG");
TString dep (format("%-4s", (const char*) codpag));
cpg.zero(); cpg.zero();
cpg.put("CODTAB", dep); cpg.put("CODTAB", dep);
if (cpg.read() == NOERR) if (cpg.read() != NOERR)
{ return f.warning_box("Codice di pagamento errato o non presente in tabella");
descr = cpg.get("S0");
tipo = atoi(cpg.get("S4"));
} }
else TTable rpg ("%RPG");
return f.warning_box("Codice di pagamento errato o non presente in tabella"); int tipo;
int tipopag = f.mask().get_int(112); int tipopag = f.mask().get_int(112);
if (tipopag != 0)
TString dep;
for (int i = 0; !rpg.eof(); rpg.next(), i++)
{ {
if (tipopag != tipo) dep.format("%-s%3d", (const char*) codpag, i);
return f.warning_box("Il tipo pagamento della scadenza non e' congruo con il tipo pagamento del codice di pagamento");
rpg.zero();
rpg.put("CODTAB", dep);
if (rpg.read() == NOERR)
{
tipo = rpg.get_int("I1");
if (tipo == tipopag)
{
switch(tipo)
{
case 1: descr = "Rimessa diretta";
break;
case 2: descr = "Tratta";
break;
case 3: descr = "Ricevuta bancaria";
break;
case 4: descr = "Cessione";
break;
case 5: descr = "Paghero'";
break;
case 6: descr = "Lettera di credito";
break;
case 7: descr = "Tratta accettata";
break;
case 8: descr = "Rapporti interbancari diretti";
break;
case 9: descr = "Bonifico";
break;
case 10: descr = "Altro";
break;
default: break;
};
break;
}
}
else
{
descr = "";
break;
}
}
if (f.mask().is_running())
{
if (tipopag != 0)
{
if (tipopag != tipo)
return f.warning_box("Il tipo pagamento della scadenza non e' congruo con il tipo pagamento del codice di pagamento");
}
else
f.mask().set(112,tipo);
} }
else
f.mask().set(112,tipo);
} }
TString ultclass = f.mask().get(113); TString ultclass = f.mask().get(113);
if (ultclass.empty()) if (ultclass.empty())
@ -1278,7 +1365,62 @@ bool TVar_sc::ultclass_handler(TMask_field& f, KEY k)
TString ultclass = f.get(); TString ultclass = f.get();
int tipopag = f.mask().get_int(112); int tipopag = f.mask().get_int(112);
if (ultclass.empty()) return TRUE; if (ultclass.empty())
{
TTable rpg ("%RPG");
int tipo;
TString codpag = f.mask().get(111);
int tipopag = f.mask().get_int(112);
TString dep;
for (int i = 0; !rpg.eof(); rpg.next(), i++)
{
dep.format("%-s%3d", (const char*) codpag, i);
rpg.zero();
rpg.put("CODTAB", dep);
if (rpg.read() == NOERR)
{
tipo = rpg.get_int("I1");
if (tipo == tipopag)
{
switch(tipo)
{
case 1: descr = "Rimessa diretta";
break;
case 2: descr = "Tratta";
break;
case 3: descr = "Ricevuta bancaria";
break;
case 4: descr = "Cessione";
break;
case 5: descr = "Paghero'";
break;
case 6: descr = "Lettera di credito";
break;
case 7: descr = "Tratta accettata";
break;
case 8: descr = "Rapporti interbancari diretti";
break;
case 9: descr = "Bonifico";
break;
case 10: descr = "Altro";
break;
default: break;
};
break;
}
}
else
{
descr = "";
break;
}
}
f.mask().set(114, descr);
return TRUE;
}
TTable clr ("%CLR"); TTable clr ("%CLR");
TString dep (format("%d%s", tipopag,(const char*) ultclass)); TString dep (format("%d%s", tipopag,(const char*) ultclass));

View File

@ -1,3 +1,4 @@
TOOLBAR "" 0 20 0 2 TOOLBAR "" 0 20 0 2
BUTTON DLG_OK 8 2 BUTTON DLG_OK 8 2
@ -192,7 +193,7 @@ BEGIN
USE %VAL USE %VAL
INPUT CODTAB 124 INPUT CODTAB 124
DISPLAY "Codice" CODTAB DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@5" S0 DISPLAY "Descrizione@50" S0
OUTPUT 124 CODTAB OUTPUT 124 CODTAB
CHECKTYPE NORMAL CHECKTYPE NORMAL
FLAGS "U" FLAGS "U"