Patch level : 10.0 patch 540
Files correlati : lv3 lv3200a.msk lv3200a.msk Ricompilazione Demo : [ ] Commento : 1) Ho evaso un buono di prelievo, ho psezzato le righe; mi ha cambiato stato al buono anche se non è evaso totalmente 2) Digitando il nuomero del buono di prelievo riesco a entrare in evasione di un buono già evaso; dovrebbe bloccarmi e dirmi che il buono è già evaso L'evasione da terminalino prevede il richiamo del documento tramite pistolata; è necessario che la stringa da pistolare sia D|anno|codnum|ndoc che è la chiave univoca di un documento git-svn-id: svn://10.65.10.50/trunk@19729 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
f45aa0e1d0
commit
96dfb9a7a1
@ -507,10 +507,13 @@ void TEvasione_msk::genera_documento()
|
||||
if (doc.rows() > 0)
|
||||
{
|
||||
err = doc.write();
|
||||
const TString4 stato = cache().get("%TIP", ini_get_string(CONFIG_DITTA, "lv", "TIPODOC_PRE", NULL, 0), "S2").mid(2,1);
|
||||
bpre.put(DOC_STATO, stato);
|
||||
bpre.rewrite();
|
||||
set(F_STATO, stato);
|
||||
if(controlla())
|
||||
{
|
||||
const TString4 stato = cache().get("%TIP", ini_get_string(CONFIG_DITTA, "lv", "TIPODOC_PRE", NULL, 0), "S2").mid(2,1);
|
||||
bpre.put(DOC_STATO, stato);
|
||||
bpre.rewrite();
|
||||
set(F_STATO, stato);
|
||||
}
|
||||
}
|
||||
|
||||
if (err == NOERR)
|
||||
|
@ -86,7 +86,7 @@ BEGIN
|
||||
OUTPUT F_DATADOC DATADOC
|
||||
OUTPUT F_CODCF CODCF
|
||||
OUTPUT F_RICALT LF_CLIFO->RICALT
|
||||
OUTPUT F_RAGSOC LF_CLIFO->RAGSOC
|
||||
OUTPUT F_RAGSOC LF_CLIFO->RAGSOC
|
||||
END
|
||||
|
||||
STRING F_STATO 3
|
||||
|
@ -192,7 +192,7 @@ class TEvasione_ter_msk: public TAutomask
|
||||
protected:
|
||||
void campi_cliente();
|
||||
|
||||
void precarica_righe();
|
||||
bool precarica_righe();
|
||||
void genera_buono();
|
||||
void evadi();
|
||||
void registra();
|
||||
@ -240,10 +240,9 @@ bool TEvasione_ter_msk::on_key(KEY key)
|
||||
}
|
||||
|
||||
//PRECARICA_RIGHE: metodo che carica in un TAssoc_array le righe fisiche del documento
|
||||
void TEvasione_ter_msk::precarica_righe()
|
||||
bool TEvasione_ter_msk::precarica_righe()
|
||||
{
|
||||
TDoc_key kdoc(get_date(F_TDATADOC).year(), ini_get_string(CONFIG_DITTA, "lv", "NUM_PRE", NULL, 0), get_long(F_TNDOC));
|
||||
|
||||
TDoc_key kdoc(get_int(F_TANNO), ini_get_string(CONFIG_DITTA, "lv", "NUM_PRE", NULL, 0), get_long(F_TNDOC));
|
||||
TBuono_prelievo doc(kdoc);
|
||||
|
||||
const TString4 stato = cache().get("%TIP", ini_get_string(CONFIG_DITTA, "lv", "TIPODOC_PRE", NULL, 0), "S2").mid(2,1);
|
||||
@ -254,8 +253,9 @@ void TEvasione_ter_msk::precarica_righe()
|
||||
str << "Il documento " << get_long(F_TNDOC) << " è già stato evaso";
|
||||
warning_box(str);
|
||||
|
||||
set(F_TNDOC, 0L, 1);
|
||||
return;
|
||||
reset(F_TCHIAVE);
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
TDate oggi(TODAY);
|
||||
@ -277,6 +277,7 @@ void TEvasione_ter_msk::precarica_righe()
|
||||
qr->set_qta_con(rdoc.qta_consegnata());
|
||||
qr->set_pacchi(rdoc.num_pacchi());
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
//GENERA_BUONO: metodo che genera il buono di consegna partendo dal buono di ritiro
|
||||
@ -467,9 +468,13 @@ void TEvasione_ter_msk::genera_buono()
|
||||
if (doc.rows() > 0)
|
||||
{
|
||||
err = doc.write();
|
||||
const TString4 stato = cache().get("%TIP", ini_get_string(CONFIG_DITTA, "lv", "TIPODOC_PRE", NULL, 0), "S2").mid(2,1);
|
||||
bpre.put(DOC_STATO, stato);
|
||||
bpre.rewrite();
|
||||
|
||||
if(controlla())
|
||||
{
|
||||
const TString4 stato = cache().get("%TIP", ini_get_string(CONFIG_DITTA, "lv", "TIPODOC_PRE", NULL, 0), "S2").mid(2,1);
|
||||
bpre.put(DOC_STATO, stato);
|
||||
bpre.rewrite();
|
||||
}
|
||||
}
|
||||
|
||||
if (err == NOERR)
|
||||
@ -499,6 +504,7 @@ void TEvasione_ter_msk::genera_buono()
|
||||
show(F_TCODNUM);
|
||||
show(F_TTPDOC);
|
||||
show(F_TDESCR);
|
||||
show(F_TCHIAVE);
|
||||
show(F_TANNO);
|
||||
show(F_TDATAPRCO);
|
||||
|
||||
@ -883,12 +889,20 @@ bool TEvasione_ter_msk::on_field_event(TOperable_field& f, TField_event e, long
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
case F_TNDOC:
|
||||
case F_TCHIAVE:
|
||||
{
|
||||
TString cazzone = get(F_TNDOC);
|
||||
if (e == fe_modify)
|
||||
if (f.get_long() > 0)
|
||||
{
|
||||
TDoc_key kdoc(f.get());
|
||||
if (kdoc.ndoc() > 0)
|
||||
{
|
||||
set(F_TANNO, kdoc.anno());
|
||||
set(F_TNDOC, kdoc.ndoc());
|
||||
field(F_TNDOC).check();
|
||||
|
||||
if(!precarica_righe())
|
||||
return false;
|
||||
|
||||
hide(F_TCODNUM);
|
||||
hide(F_TTPDOC);
|
||||
hide(F_TDESCR);
|
||||
@ -909,15 +923,22 @@ bool TEvasione_ter_msk::on_field_event(TOperable_field& f, TField_event e, long
|
||||
enable(DLG_SAVEREC);
|
||||
enable(DLG_CANCEL);
|
||||
|
||||
precarica_righe();
|
||||
|
||||
_autoselect = 1;
|
||||
field(F_TDATADOC).set_focus();
|
||||
field(F_TBARCODE).set_focus();
|
||||
f.hide();
|
||||
}
|
||||
else
|
||||
}
|
||||
}
|
||||
break;
|
||||
case F_TNDOC:
|
||||
{
|
||||
if (e == fe_modify)
|
||||
if (f.get_long() == 0)
|
||||
{
|
||||
show(F_TCHIAVE);
|
||||
show(F_TCODNUM);
|
||||
show(F_TTPDOC);
|
||||
show(F_TDESCR);
|
||||
show(F_TTPDOC);
|
||||
show(F_TANNO);
|
||||
show(F_TDATAPRCO);
|
||||
|
||||
@ -928,6 +949,12 @@ bool TEvasione_ter_msk::on_field_event(TOperable_field& f, TField_event e, long
|
||||
hide(F_TQTAPACCO);
|
||||
hide(F_TQTACON);
|
||||
hide(F_TQTADACON);
|
||||
|
||||
disable(DLG_SELECT);
|
||||
disable(DLG_PREVIEW);
|
||||
disable(DLG_ELABORA);
|
||||
disable(DLG_SAVEREC);
|
||||
disable(DLG_CANCEL);
|
||||
|
||||
reset(F_TDATADOC);
|
||||
_ra.destroy();
|
||||
@ -945,6 +972,7 @@ bool TEvasione_ter_msk::on_field_event(TOperable_field& f, TField_event e, long
|
||||
send_key(K_SPACE, DLG_ELABORA);
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:break;
|
||||
}
|
||||
return true;
|
||||
|
27
lv/lv3400a.h
27
lv/lv3400a.h
@ -1,19 +1,20 @@
|
||||
//Campi Maschera lv3200b
|
||||
//Campi Maschera lv3400a
|
||||
#define F_TCODNUM 401
|
||||
#define F_TTPDOC 402
|
||||
#define F_TDESCR 403
|
||||
#define F_TNDOC 404
|
||||
#define F_TANNO 405
|
||||
#define F_TDATADOC 406
|
||||
#define F_TDATAPRCO 407
|
||||
#define F_TCODCF 408
|
||||
#define F_TRAGSOC 409
|
||||
#define F_TBARCODE 410
|
||||
#define F_TPACCHI 411
|
||||
#define F_TQTAPACCO 412
|
||||
#define F_TQTACON 413
|
||||
#define F_TQTADACON 414
|
||||
#define F_TRIGHE 415
|
||||
#define F_TCHIAVE 404
|
||||
#define F_TNDOC 405
|
||||
#define F_TANNO 406
|
||||
#define F_TDATADOC 407
|
||||
#define F_TDATAPRCO 408
|
||||
#define F_TCODCF 409
|
||||
#define F_TRAGSOC 410
|
||||
#define F_TBARCODE 411
|
||||
#define F_TPACCHI 412
|
||||
#define F_TQTAPACCO 413
|
||||
#define F_TQTACON 414
|
||||
#define F_TQTADACON 415
|
||||
#define F_TRIGHE 416
|
||||
|
||||
#define S_TCODART 101
|
||||
#define S_TDACONS 102
|
||||
|
@ -55,26 +55,31 @@ PAGE "Evasione Buoni di prelievo" 0 2 0 0
|
||||
|
||||
STRING F_TCODNUM 4
|
||||
BEGIN
|
||||
PROMPT 0 1 ""
|
||||
PROMPT 0 0 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_TTPDOC 4
|
||||
BEGIN
|
||||
PROMPT 5 1 ""
|
||||
PROMPT 5 0 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_TDESCR 50 15
|
||||
BEGIN
|
||||
PROMPT 10 1 ""
|
||||
PROMPT 10 0 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_TCHIAVE 50 16
|
||||
BEGIN
|
||||
PROMPT 1 1 "Chiave "
|
||||
END
|
||||
|
||||
NUMBER F_TNDOC 6
|
||||
BEGIN
|
||||
PROMPT 1 2 "Numero Doc. "
|
||||
USE LF_DOC SELECT (STATO==2)
|
||||
PROMPT 1 2 "Numero Doc. "
|
||||
USE LF_DOC SELECT (STATO>=2)
|
||||
JOIN LF_CLIFO TO LF_DOC INTO TIPOCF==TIPOCF CODCF==CODCF
|
||||
INPUT PROVV "D"
|
||||
INPUT ANNO F_TANNO SELECT
|
||||
@ -88,11 +93,13 @@ BEGIN
|
||||
OUTPUT F_TCODCF CODCF
|
||||
OUTPUT F_TRAGSOC LF_CLIFO->RAGSOC
|
||||
CHECTYPE REQUIRED
|
||||
FLAGS "DG"
|
||||
END
|
||||
|
||||
DATE F_TDATADOC
|
||||
BEGIN
|
||||
PROMPT 1 3 "Data Doc. "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER F_TANNO 4
|
||||
|
Loading…
x
Reference in New Issue
Block a user