Patch level : 10.0 patch 510
Files correlati : lv3 Ricompilazione Demo : [ ] Commento : Corretta la gestione dei tasti funzione git-svn-id: svn://10.65.10.50/trunk@19618 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
48cb6f7053
commit
57d140b8fe
216
lv/lv3400.cpp
216
lv/lv3400.cpp
@ -4,6 +4,7 @@
|
||||
#include <execp.h>
|
||||
#include <reputils.h>
|
||||
#include <reprint.h>
|
||||
#include <toolfld.h>
|
||||
#include <utility.h>
|
||||
|
||||
#include "lvlib.h"
|
||||
@ -162,7 +163,6 @@ TQuantita_riga* TRighe_array::quantita(TString& codart, TDate& data, bool create
|
||||
//class TEvasione_ter_msk
|
||||
class TEvasione_ter_msk: public TAutomask
|
||||
{
|
||||
TDocumento _buonori;
|
||||
int _ndoc;
|
||||
int _autoselect;
|
||||
TString4 _tpev;
|
||||
@ -185,21 +185,41 @@ protected:
|
||||
void evadi_da_terminale();
|
||||
|
||||
virtual void on_idle();
|
||||
virtual bool on_key(KEY key);
|
||||
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
|
||||
|
||||
public:
|
||||
TEvasione_ter_msk();
|
||||
};
|
||||
|
||||
bool TEvasione_ter_msk::on_key(KEY key)
|
||||
{
|
||||
if (key >= K_F3 && key <= K_F7)
|
||||
{
|
||||
FOR_EACH_MASK_FIELD(*this, i, f)
|
||||
{
|
||||
if (f->is_kind_of(CLASS_BUTTON_TOOL) && f->active())
|
||||
{
|
||||
TButton_tool& tf = (TButton_tool&)*f;
|
||||
|
||||
if (tf.exit_key() == key)
|
||||
{
|
||||
send_key(K_SPACE, f->dlg());
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return TAutomask::on_key(key);
|
||||
}
|
||||
|
||||
//PRECARICA_RIGHE: metodo che carica in un TAssoc_array le righe documento
|
||||
void TEvasione_ter_msk::precarica_righe()
|
||||
{
|
||||
TDoc_key kdoc(get_date(F_TDATADOC1).year(), ini_get_string(CONFIG_DITTA, "lv", "NUM_PRE", NULL, 0), get_long(F_TNDOC1));
|
||||
TDoc_key kdoc(get_date(F_TDATADOC).year(), ini_get_string(CONFIG_DITTA, "lv", "NUM_PRE", NULL, 0), get_long(F_TNDOC));
|
||||
|
||||
TBuono_prelievo doc(kdoc);
|
||||
|
||||
_buonori = doc;
|
||||
|
||||
TDate oggi(TODAY);
|
||||
|
||||
for(int i = 1; i <= doc.rows(); i++)
|
||||
@ -228,7 +248,7 @@ void TEvasione_ter_msk::genera_buono()
|
||||
//per prima cosa salva il buono di prelievo
|
||||
registra();
|
||||
|
||||
TDoc_key kdoc(get_date(F_TDATADOC1).year(), ini_get_string(CONFIG_DITTA, "lv", "NUM_PRE", NULL, 0), get_long(F_TNDOC1));
|
||||
TDoc_key kdoc(get_date(F_TDATADOC).year(), ini_get_string(CONFIG_DITTA, "lv", "NUM_PRE", NULL, 0), get_long(F_TNDOC));
|
||||
TBuono_prelievo bpre(kdoc);
|
||||
const long codcf = bpre.codcf();
|
||||
const int codcont = bpre.codcont();
|
||||
@ -244,7 +264,7 @@ void TEvasione_ter_msk::genera_buono()
|
||||
char stato = cache().get("%TIP", tipodoc, "S2").left(1)[0];
|
||||
|
||||
const TDate databpre = bpre.datadoc();
|
||||
const TDate databolla = get_date(F_TDATADOC1);
|
||||
const TDate databolla = get_date(F_TDATADOC);
|
||||
const TDate datagen(TODAY);
|
||||
TDate dadata = databpre;
|
||||
TDate adata = datagen;
|
||||
@ -419,8 +439,8 @@ void TEvasione_ter_msk::genera_buono()
|
||||
else
|
||||
warning_box(TR("Non è stato possibile generare nessun documento"));
|
||||
|
||||
reset(F_TNDOC1);
|
||||
send_key(K_SPACE, F_TNDOC1);
|
||||
reset(F_TNDOC);
|
||||
send_key(K_SPACE, F_TNDOC);
|
||||
}
|
||||
|
||||
//EVADI: metodo che setta a evaso tutte le righe del documento
|
||||
@ -436,7 +456,7 @@ void TEvasione_ter_msk::evadi()
|
||||
//REGISTRA: metodo che salva il buono di prelievo così com'è
|
||||
void TEvasione_ter_msk::registra()
|
||||
{
|
||||
TDoc_key kdoc(get_date(F_TDATADOC1).year(), ini_get_string(CONFIG_DITTA, "lv", "NUM_PRE", NULL, 0), get_long(F_TNDOC1));
|
||||
TDoc_key kdoc(get_date(F_TDATADOC).year(), ini_get_string(CONFIG_DITTA, "lv", "NUM_PRE", NULL, 0), get_long(F_TNDOC));
|
||||
|
||||
TBuono_prelievo doc(kdoc);
|
||||
|
||||
@ -651,7 +671,7 @@ void TEvasione_ter_msk::evadi_da_terminale()
|
||||
}
|
||||
else
|
||||
{
|
||||
TDoc_key kdoc(get_date(F_TDATADOC1).year(), ini_get_string(CONFIG_DITTA, "lv", "NUM_PRE", NULL, 0), get_int(F_TNDOC1));
|
||||
TDoc_key kdoc(get_date(F_TDATADOC).year(), ini_get_string(CONFIG_DITTA, "lv", "NUM_PRE", NULL, 0), get_int(F_TNDOC));
|
||||
|
||||
TToken_string key;
|
||||
key.add(codart);
|
||||
@ -693,97 +713,110 @@ bool TEvasione_ter_msk::on_field_event(TOperable_field& f, TField_event e, long
|
||||
{
|
||||
//a seconda del bottone premuto esegui un metodo diverso
|
||||
switch (f.dlg())
|
||||
{
|
||||
case DLG_SELECT:
|
||||
{
|
||||
case DLG_SELECT:
|
||||
if (e == fe_button)
|
||||
{
|
||||
if (e == fe_button)
|
||||
evadi();
|
||||
}
|
||||
evadi();
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
case DLG_PREVIEW:
|
||||
if (e == fe_button)
|
||||
{
|
||||
if (e == fe_button)
|
||||
{
|
||||
show(F_TDATADOC1);
|
||||
show(F_TBARCODE);
|
||||
show(F_TPACCHI);
|
||||
show(F_TQTAPACCO);
|
||||
show(F_TQTACON);
|
||||
show(F_TQTADACON);
|
||||
|
||||
show(F_TRIGHE);
|
||||
riempi_sheet();
|
||||
}
|
||||
show(F_TBARCODE);
|
||||
show(F_TPACCHI);
|
||||
show(F_TQTAPACCO);
|
||||
show(F_TQTACON);
|
||||
show(F_TQTADACON);
|
||||
|
||||
show(F_TRIGHE);
|
||||
riempi_sheet();
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
case DLG_ELABORA:
|
||||
{
|
||||
if (e == fe_button)
|
||||
if (controlla())
|
||||
genera_buono();
|
||||
else
|
||||
case DLG_ELABORA:
|
||||
if (e == fe_button)
|
||||
if (controlla())
|
||||
genera_buono();
|
||||
else
|
||||
{
|
||||
if(yesno_box(TR("ATTENZIONE: non tutte le righe sono evase. Si desidera continuare ugualmente?")))
|
||||
{
|
||||
if(yesno_box(TR("ATTENZIONE: non tutte le righe sono evase. Si desidera continuare ugualmente?")))
|
||||
{
|
||||
if(yesno_box(TR("Si desidera considerare evase tutte le righe?"
|
||||
"(in caso contrario le righe evase parzialmente verranno spezzate su due righe)")))
|
||||
evadi();
|
||||
else
|
||||
{
|
||||
spezza_riga();
|
||||
genera_buono();
|
||||
}
|
||||
}
|
||||
if(yesno_box(TR("Si desidera considerare evase tutte le righe?"
|
||||
"(in caso contrario le righe evase parzialmente verranno spezzate su due righe)")))
|
||||
evadi();
|
||||
else
|
||||
send_key(K_SPACE, DLG_CANCEL);
|
||||
{
|
||||
spezza_riga();
|
||||
genera_buono();
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
send_key(K_SPACE, DLG_CANCEL);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case DLG_CANCEL:
|
||||
if (e == fe_button && jolly == 0)
|
||||
{
|
||||
show(F_TDATADOC1);
|
||||
show(F_TBARCODE);
|
||||
show(F_TPACCHI);
|
||||
show(F_TQTAPACCO);
|
||||
show(F_TQTACON);
|
||||
show(F_TQTADACON);
|
||||
show(F_TBARCODE);
|
||||
show(F_TPACCHI);
|
||||
show(F_TQTAPACCO);
|
||||
show(F_TQTACON);
|
||||
show(F_TQTADACON);
|
||||
|
||||
hide(F_TRIGHE);
|
||||
hide(F_TRIGHE);
|
||||
|
||||
_autoselect = 1;
|
||||
_autoselect = 1;
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
case DLG_SAVEREC:
|
||||
if (e == fe_button)
|
||||
{
|
||||
if (e == fe_button)
|
||||
registra();
|
||||
registra();
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
case F_TNDOC:
|
||||
{
|
||||
if (e == fe_modify && !f.empty())
|
||||
{
|
||||
show(F_TCODCF);
|
||||
show(F_TRAGSOC);
|
||||
show(F_TNDOC1); set(F_TNDOC1, get_int(F_TNDOC));
|
||||
show(F_TDATADOC1); set(F_TDATADOC1, get_date(F_TDATADOC));
|
||||
show(F_TBARCODE);
|
||||
show(F_TPACCHI);
|
||||
show(F_TQTAPACCO);
|
||||
show(F_TQTACON);
|
||||
show(F_TQTADACON);
|
||||
if (e == fe_modify)
|
||||
if (!f.empty())
|
||||
{
|
||||
show(F_TCODCF);
|
||||
show(F_TRAGSOC);
|
||||
show(F_TBARCODE);
|
||||
show(F_TPACCHI);
|
||||
show(F_TQTAPACCO);
|
||||
show(F_TQTACON);
|
||||
show(F_TQTADACON);
|
||||
|
||||
hide(F_TCODNUM);
|
||||
hide(F_TTPDOC);
|
||||
hide(F_TNDOC);
|
||||
hide(F_TDATADOC);
|
||||
hide(F_TANNO);
|
||||
hide(F_TDATAPRCO);
|
||||
|
||||
update();
|
||||
hide(F_TCODNUM);
|
||||
hide(F_TTPDOC);
|
||||
hide(F_TANNO);
|
||||
hide(F_TDATAPRCO);
|
||||
|
||||
precarica_righe();
|
||||
}
|
||||
precarica_righe();
|
||||
}
|
||||
else
|
||||
{
|
||||
show(F_TCODNUM);
|
||||
show(F_TTPDOC);
|
||||
show(F_TANNO);
|
||||
show(F_TDATAPRCO);
|
||||
|
||||
hide(F_TCODCF);
|
||||
hide(F_TRAGSOC);
|
||||
hide(F_TBARCODE);
|
||||
hide(F_TPACCHI);
|
||||
hide(F_TQTAPACCO);
|
||||
hide(F_TQTACON);
|
||||
hide(F_TQTADACON);
|
||||
|
||||
reset(F_TDATADOC);
|
||||
_ra.destroy();
|
||||
}
|
||||
}
|
||||
break;
|
||||
case F_TBARCODE:
|
||||
@ -797,29 +830,6 @@ bool TEvasione_ter_msk::on_field_event(TOperable_field& f, TField_event e, long
|
||||
send_key(K_SPACE, DLG_ELABORA);
|
||||
}
|
||||
}
|
||||
case F_TNDOC1:
|
||||
{
|
||||
if (e == fe_modify && f.get().empty())
|
||||
{
|
||||
hide(F_TCODCF);
|
||||
hide(F_TRAGSOC);
|
||||
hide(F_TNDOC1);
|
||||
hide(F_TDATADOC1);
|
||||
hide(F_TBARCODE);
|
||||
hide(F_TPACCHI);
|
||||
hide(F_TQTAPACCO);
|
||||
hide(F_TQTACON);
|
||||
hide(F_TQTADACON);
|
||||
|
||||
show(F_TCODNUM);
|
||||
show(F_TTPDOC);
|
||||
show(F_TNDOC); reset(F_TNDOC);
|
||||
show(F_TDATADOC); reset(F_TDATADOC);
|
||||
show(F_TANNO);
|
||||
show(F_TDATAPRCO);
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:break;
|
||||
}
|
||||
return true;
|
||||
@ -838,7 +848,7 @@ void TEvasione_ter_msk:: on_idle()
|
||||
|
||||
TEvasione_ter_msk::TEvasione_ter_msk():TAutomask("lv3400a")
|
||||
{
|
||||
//precarico i campi fissi
|
||||
//precarico i campi fissi
|
||||
set(F_TCODNUM, ini_get_string(CONFIG_DITTA, "lv", "NUM_PRE", NULL, 0));
|
||||
set(F_TTPDOC, ini_get_string(CONFIG_DITTA, "lv", "TIPODOC_PRE", NULL, 0));
|
||||
|
||||
@ -851,9 +861,7 @@ TEvasione_ter_msk::TEvasione_ter_msk():TAutomask("lv3400a")
|
||||
set(F_TANNO, annoes);
|
||||
|
||||
hide(F_TCODCF);
|
||||
hide(F_TRAGSOC);
|
||||
hide(F_TNDOC1);
|
||||
hide(F_TDATADOC1);
|
||||
hide(F_TRAGSOC);
|
||||
hide(F_TBARCODE);
|
||||
hide(F_TPACCHI);
|
||||
hide(F_TQTAPACCO);
|
||||
|
@ -8,7 +8,6 @@
|
||||
#define F_TDATAPRCO 407
|
||||
#define F_TCODCF 408
|
||||
#define F_TRAGSOC 409
|
||||
#define F_TNDOC1 410
|
||||
#define F_TDATADOC1 411
|
||||
#define F_TBARCODE 412
|
||||
#define F_TPACCHI 413
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "lv3400a.h"
|
||||
|
||||
PAGE "Evasione Buoni di prelievo" -1 -1 35 10
|
||||
PAGE "Evasione Buoni di prelievo" -1 -1 45 10
|
||||
|
||||
STRING F_TCODNUM 4
|
||||
BEGIN
|
||||
@ -39,15 +39,15 @@ BEGIN
|
||||
OUTPUT F_TRAGSOC LF_CLIFO->RAGSOC
|
||||
END
|
||||
|
||||
NUMBER F_TANNO 4
|
||||
BEGIN
|
||||
PROMPT 1 3 "Anno Esercizio "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
DATE F_TDATADOC
|
||||
BEGIN
|
||||
PROMPT 1 4 "Data Doc. "
|
||||
PROMPT 1 3 "Data Doc. "
|
||||
END
|
||||
|
||||
NUMBER F_TANNO 4
|
||||
BEGIN
|
||||
PROMPT 1 4 "Anno Esercizio "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
DATE F_TDATAPRCO
|
||||
@ -57,7 +57,7 @@ END
|
||||
|
||||
NUMBER F_TCODCF 6
|
||||
BEGIN
|
||||
PROMPT 1 0 "Cliente "
|
||||
PROMPT 1 0 "Cliente "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
@ -67,16 +67,6 @@ BEGIN
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER F_TNDOC1 6
|
||||
BEGIN
|
||||
PROMPT 1 2 "Buono Numero "
|
||||
END
|
||||
|
||||
DATE F_TDATADOC1
|
||||
BEGIN
|
||||
PROMPT 1 3 "Data Doc. "
|
||||
END
|
||||
|
||||
STRING F_TBARCODE 50 12
|
||||
BEGIN
|
||||
PROMPT 1 4 "Barcode "
|
||||
@ -116,37 +106,37 @@ TOOLBAR "Topbar" 0 0 0 2
|
||||
|
||||
BUTTON DLG_SELECT 2 2
|
||||
BEGIN
|
||||
PROMPT 1 1 "Tutti"
|
||||
PROMPT 1 1 "Tutti(F3)"
|
||||
PICTURE TOOL_MULTISEL
|
||||
MESSAGE EXIT K_F5
|
||||
MESSAGE EXIT,K_F3
|
||||
END
|
||||
|
||||
BUTTON DLG_PREVIEW 2 2
|
||||
BEGIN
|
||||
PROMPT 1 1 "Controlla"
|
||||
PROMPT 1 1 "Controlla(F4)"
|
||||
PICTURE TOOL_PREVIEW
|
||||
MESSAGE EXIT K_F6
|
||||
MESSAGE EXIT,K_F4
|
||||
END
|
||||
|
||||
BUTTON DLG_ELABORA 2 2
|
||||
BEGIN
|
||||
PROMPT 1 1 "Evadi"
|
||||
PROMPT 1 1 "Evadi(F5)"
|
||||
PICTURE TOOL_ELABORA
|
||||
MESSAGE EXIT K_F7
|
||||
MESSAGE EXIT,K_F5
|
||||
END
|
||||
|
||||
BUTTON DLG_SAVEREC 2 2
|
||||
BEGIN
|
||||
PROMPT 1 1 "Salva"
|
||||
PROMPT 1 1 "Salva(F6)"
|
||||
PICTURE TOOL_SAVEREC
|
||||
MESSAGE_EXIT K_F8
|
||||
MESSAGE EXIT,K_F6
|
||||
END
|
||||
|
||||
BUTTON DLG_CANCEL 2 2
|
||||
BEGIN
|
||||
PROMPT 1 1 "Annulla"
|
||||
PROMPT 1 1 "Annulla(F7)"
|
||||
PICTURE TOOL_CANCEL
|
||||
MESSAGE EXIT K_F9
|
||||
MESSAGE EXIT,K_F7
|
||||
END
|
||||
|
||||
BUTTON DLG_QUIT 2 2
|
||||
|
Loading…
x
Reference in New Issue
Block a user