- 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
// app()._baipassa = FALSE; // funziona piu', in quanto passa dall' handler anche quando
// faccio il conferma.
return FALSE;
return TRUE;
}
void TRic_archivi::ripristina_trasfer()

View File

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

View File

@ -311,16 +311,55 @@ void TVar_sc::descr_condpag(const TString& codpag,int tipopag,const TString& ult
}
else
{
TTable cpg ("%CPG");
TString dep (format("%4d", (const char*) codpag));
cpg.zero();
cpg.put("CODTAB", dep);
if (cpg.read() == NOERR)
d_condpag = cpg.get("S0");
else
d_condpag = "";
}
TTable rpg ("%RPG");
int tipo;
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: 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,
@ -1203,36 +1242,84 @@ bool TVar_sc::nrata_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;
int tipo;
TString codpag = f.get();
if (codpag.not_empty())
{
TTable cpg ("%CPG");
TString dep (format("%-4s", (const char*) codpag));
{
if (f.mask().is_running())
{
TTable cpg ("%CPG");
TString dep (format("%-4s", (const char*) codpag));
cpg.zero();
cpg.put("CODTAB", dep);
if (cpg.read() == NOERR)
{
descr = cpg.get("S0");
tipo = atoi(cpg.get("S4"));
cpg.zero();
cpg.put("CODTAB", dep);
if (cpg.read() != NOERR)
return f.warning_box("Codice di pagamento errato o non presente in tabella");
}
else
return f.warning_box("Codice di pagamento errato o non presente in tabella");
TTable rpg ("%RPG");
int tipo;
int tipopag = f.mask().get_int(112);
if (tipopag != 0)
TString dep;
for (int i = 0; !rpg.eof(); rpg.next(), i++)
{
if (tipopag != tipo)
return f.warning_box("Il tipo pagamento della scadenza non e' congruo con il tipo pagamento del codice di pagamento");
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;
}
}
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);
if (ultclass.empty())
@ -1278,7 +1365,62 @@ bool TVar_sc::ultclass_handler(TMask_field& f, KEY k)
TString ultclass = f.get();
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");
TString dep (format("%d%s", tipopag,(const char*) ultclass));

View File

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