Patch level :
Files correlati : Ricompilazione Demo : [ ] Commento : git-svn-id: svn://10.65.10.50/trunk@17206 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
48ff1ac328
commit
977d7280a7
161
lv/lv0400.cpp
161
lv/lv0400.cpp
@ -1,3 +1,5 @@
|
||||
#include <automask.h>
|
||||
#include <execp.h>
|
||||
#include <msksheet.h>
|
||||
#include <relapp.h>
|
||||
#include <recarray.h>
|
||||
@ -6,9 +8,121 @@
|
||||
#include "lv0400.h"
|
||||
#include "../mg/anamag.h"
|
||||
|
||||
|
||||
class TContratti_msk: public TAutomask
|
||||
{
|
||||
protected:
|
||||
bool on_art_select();
|
||||
virtual bool on_field_event(TOperable_field& o,TField_event e,long jolly);
|
||||
public:
|
||||
TContratti_msk();
|
||||
};
|
||||
|
||||
bool TContratti_msk::on_art_select()
|
||||
{
|
||||
TSheet_field& ss=sfield(F_RIGHE);
|
||||
TToken_string & row = ss.row(ss.selected());
|
||||
const TString80 codart(row.get(ss.cid2index(S_CODART)));
|
||||
const TRectype & artrec = cache().get(LF_ANAMAG, codart);
|
||||
|
||||
set(F_GRMERC,artrec.get(ANAMAG_GRMERC).sleft(3));
|
||||
set(F_COLORE,artrec.get(ANAMAG_COLORE));
|
||||
set(F_LIVELLO,artrec.get(ANAMAG_LIVELLO));
|
||||
set(F_PPCONF,artrec.get(ANAMAG_PPCONF));
|
||||
set(F_PPCOLLO,artrec.get(ANAMAG_PPCOLLO));
|
||||
set(F_PPPALLET,artrec.get(ANAMAG_PPPALLET));
|
||||
set(F_TIPOPARTE,artrec.get(ANAMAG_TIPOPARTE));
|
||||
set(F_CODLAV1,artrec.get(ANAMAG_CODLAV1));
|
||||
set(F_CODLAV2,artrec.get(ANAMAG_CODLAV2));
|
||||
set(F_LINDEST1,artrec.get(ANAMAG_LINDEST1));
|
||||
set(F_LINDEST2,artrec.get(ANAMAG_LINDEST2));
|
||||
set(F_LAVATRICE,artrec.get(ANAMAG_LAVATRICE));
|
||||
set(F_ARTLAVCONT,artrec.get(ANAMAG_ARTLAVCONT));
|
||||
set(F_MANGDEST,artrec.get(ANAMAG_MANGDEST));
|
||||
|
||||
const int indsped=get_int(F_INDSPED);
|
||||
const TDate oggi(TODAY);
|
||||
|
||||
TString query, filter;
|
||||
|
||||
filter << "ANNOES=#ANNOES CODART=#CODART TIPOCF=C CODCF=#CLIENTE";
|
||||
if (indsped > 0)
|
||||
filter << " INDSPED=" << indsped;
|
||||
|
||||
query << "USE CLIFOGIAC KEY 3\n"
|
||||
<< "FROM " << filter << '\n'
|
||||
<< "TO " << filter << '\n';
|
||||
|
||||
TISAM_recordset recset (query);
|
||||
|
||||
recset.set_var("#CLIENTE",get_long(F_CODCF));
|
||||
recset.set_var("#ANNOES",TVariant((long)oggi.year()));
|
||||
recset.set_var("#CODART",TVariant(codart));
|
||||
|
||||
real dotod,consyear;
|
||||
|
||||
for (bool ok=recset.move_first(); ok; ok=recset.move_next())
|
||||
{
|
||||
dotod+=recset.get("GIAC").as_real();
|
||||
consyear+=recset.get("ACQ").as_real()+recset.get("ENT").as_real();
|
||||
}
|
||||
|
||||
set(F_DOTOD,dotod);
|
||||
set(F_CONSANNO,consyear);
|
||||
|
||||
const bool varclcons = get_int(F_PPCONF)>0;
|
||||
|
||||
ss.enable_cell(ss.selected(),ss.cid2index(S_CALCCONS));
|
||||
|
||||
ss.sheet_mask().set(S_CALCCONS,"0");
|
||||
row.add("0",ss.cid2index(S_CALCCONS));
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
bool TContratti_msk:: on_field_event(TOperable_field& o,TField_event e,long jolly)
|
||||
{
|
||||
switch(o.dlg())
|
||||
{
|
||||
case DLG_PLANNING:
|
||||
if (e==fe_button && !field(F_CODCONT).empty())
|
||||
{
|
||||
TRelation_application& app=(TRelation_application&) main_app();
|
||||
app.get_relation()->read(_isequal,_unlock);
|
||||
TString str;
|
||||
str << "lv0 -4 " << get(F_CODCF) << " " << get(F_CODCONT);
|
||||
TExternal_app planning(str);
|
||||
planning.run();
|
||||
app.get_relation()->read(_isequal,_lock);
|
||||
}
|
||||
break;
|
||||
case S_CODART:
|
||||
if (e==fe_modify)
|
||||
{
|
||||
TSheet_field& ss=sfield(F_RIGHE);
|
||||
TToken_string& row=ss.row(ss.selected());
|
||||
row.add(o.get(),0);
|
||||
on_art_select();
|
||||
}
|
||||
break;
|
||||
case F_RIGHE:
|
||||
if (e==se_enter)
|
||||
on_art_select();
|
||||
break;
|
||||
default:break;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
TContratti_msk::TContratti_msk() :TAutomask("lv0400a")
|
||||
{
|
||||
}
|
||||
|
||||
class TContratti_app: public TRelation_application
|
||||
{
|
||||
TMask* _msk;
|
||||
TContratti_msk* _msk;
|
||||
TRelation* _rel;
|
||||
bool _unicont;
|
||||
|
||||
@ -29,16 +143,13 @@ protected:
|
||||
virtual int write(const TMask& m);
|
||||
virtual int rewrite(const TMask& m);
|
||||
virtual bool remove();
|
||||
static bool notify(TSheet_field& ss, int r, KEY key);
|
||||
|
||||
};
|
||||
|
||||
bool TContratti_app:: user_create()
|
||||
{
|
||||
_rel=new TRelation (LF_LVCONDV);
|
||||
_msk= new TMask ("lv0400a");
|
||||
TSheet_field& sheet = _msk->sfield(F_RIGHE);
|
||||
sheet.set_notify(notify );
|
||||
_msk= new TContratti_msk;
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -92,46 +203,6 @@ bool TContratti_app:: get_next_key(TToken_string& key)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool TContratti_app::notify( TSheet_field& ss, int r, KEY key )
|
||||
{
|
||||
TMask& m = ss.mask();
|
||||
|
||||
switch (key)
|
||||
{
|
||||
case K_TAB: // modifica
|
||||
{
|
||||
TToken_string & row = ss.row(ss.selected());
|
||||
const TString80 codart(row.get(ss.cid2index(S_CODART)));
|
||||
const TRectype & artrec = cache().get(LF_ANAMAG, codart);
|
||||
|
||||
m.set(F_GRMERC,artrec.get(ANAMAG_GRMERC).sleft(3));
|
||||
m.set(F_COLORE,artrec.get(ANAMAG_COLORE));
|
||||
m.set(F_LIVELLO,artrec.get(ANAMAG_LIVELLO));
|
||||
m.set(F_PPCONF,artrec.get(ANAMAG_PPCONF));
|
||||
m.set(F_PPCOLLO,artrec.get(ANAMAG_PPCOLLO));
|
||||
m.set(F_PPPALLET,artrec.get(ANAMAG_PPPALLET));
|
||||
m.set(F_TIPOPARTE,artrec.get(ANAMAG_TIPOPARTE));
|
||||
m.set(F_CODLAV1,artrec.get(ANAMAG_CODLAV1));
|
||||
m.set(F_CODLAV2,artrec.get(ANAMAG_CODLAV2));
|
||||
m.set(F_LINDEST1,artrec.get(ANAMAG_LINDEST1));
|
||||
m.set(F_LINDEST2,artrec.get(ANAMAG_LINDEST2));
|
||||
m.set(F_LAVATRICE,artrec.get(ANAMAG_LAVATRICE));
|
||||
m.set(F_ARTLAVCONT,artrec.get(ANAMAG_ARTLAVCONT));
|
||||
m.set(F_MANGDEST,artrec.get(ANAMAG_MANGDEST));
|
||||
|
||||
const bool varclcons = m.get_int(F_PPCONF)>0;
|
||||
|
||||
ss.enable_cell(ss.selected(),ss.cid2index(S_CALCCONS));
|
||||
|
||||
ss.sheet_mask().set(S_CALCCONS,"0");
|
||||
row.add("0",ss.cid2index(S_CALCCONS));
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
void TContratti_app:: build_query(const TMask& m,TString& query) const
|
||||
|
206
lv/lv0400a.uml
206
lv/lv0400a.uml
@ -100,10 +100,9 @@ END
|
||||
BUTTON DLG_PLANNING 10 2
|
||||
BEGIN
|
||||
PROMPT 66 2 "~Planning"
|
||||
MESSAGE RUN,lv0 -4 #F_CODCF #F_CODCONT
|
||||
END
|
||||
|
||||
SPREADSHEET F_RIGHE 0 9
|
||||
SPREADSHEET F_RIGHE 0 8
|
||||
BEGIN
|
||||
PROMPT 0 5 "Righe contratto"
|
||||
ITEM "Articolo@20"
|
||||
@ -139,13 +138,19 @@ END
|
||||
|
||||
NUMBER F_DOTOD 9
|
||||
BEGIN
|
||||
PROMPT 2 15 "Dotazione odierna "
|
||||
PROMPT 2 15 "Dotaz. odierna "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_COLORE 20 10
|
||||
BEGIN
|
||||
PROMPT 30 15 "Colore "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_GRMERC 3
|
||||
BEGIN
|
||||
PROMPT 32 15 "Tipologia "
|
||||
PROMPT 55 15 "Tipologia "
|
||||
FLAG "UD"
|
||||
USE GMC KEY 1 SELECT CODTAB[4,5]==""
|
||||
INPUT CODTAB F_GRMERC
|
||||
@ -155,93 +160,87 @@ BEGIN
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_COLORE 20 15
|
||||
BEGIN
|
||||
PROMPT 54 15 "Colore "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER F_PPCONF 9
|
||||
BEGIN
|
||||
PROMPT 2 16 "Pz. per Pacco "
|
||||
PROMPT 2 16 "Pz. per Pacco "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER F_PPCOLLO 9
|
||||
BEGIN
|
||||
PROMPT 32 16 "Per Sacco "
|
||||
PROMPT 30 16 "Per Sacco "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER F_PPPALLET 9
|
||||
BEGIN
|
||||
PROMPT 54 16 "Per Carrello "
|
||||
PROMPT 55 16 "Per Carrello "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_MANGDEST 3
|
||||
BEGIN
|
||||
PROMPT 2 17 "Mangano Destinazione "
|
||||
PROMPT 2 17 "Mangano Dest. "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_ARTLAVCONT 4
|
||||
BEGIN
|
||||
PROMPT 32 17 "Art.Lava.cont. "
|
||||
PROMPT 30 17 "Art.Lav.cont."
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_LAVATRICE 4
|
||||
BEGIN
|
||||
PROMPT 54 17 "Lavatrice "
|
||||
PROMPT 55 17 "Lavatrice "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_CODLAV1 3
|
||||
BEGIN
|
||||
PROMPT 2 18 "Cod. Lavaggio 1 "
|
||||
PROMPT 2 18 "Cod. Lavag. 1 "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_CODLAV2 3
|
||||
BEGIN
|
||||
PROMPT 32 18 "Cod. Lavaggio 2 "
|
||||
PROMPT 30 18 "Cod. Lavag. 2"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_TIPOPARTE 1
|
||||
BEGIN
|
||||
PROMPT 65 18 "Tipo Parte "
|
||||
PROMPT 55 18 "Tipo Parte "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_LINDEST1 3
|
||||
BEGIN
|
||||
PROMPT 2 19 "Linea destinazione 1 "
|
||||
PROMPT 2 19 "Linea dest. 1 "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_LINDEST2 3
|
||||
BEGIN
|
||||
PROMPT 32 19 "Linea destinazione 2 "
|
||||
PROMPT 30 19 "Linea dest. 2"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_LIVELLO 1
|
||||
BEGIN
|
||||
PROMPT 65 19 "Livello "
|
||||
PROMPT 55 19 "Livello "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER F_CONSMESE 9
|
||||
BEGIN
|
||||
PROMPT 2 20 "Qtà. consegnata nel mese"
|
||||
PROMPT 2 20 "Consegnato mese"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMBER F_CONSANNO 9
|
||||
BEGIN
|
||||
PROMPT 41 20 "Qtà. consegnata nell' anno "
|
||||
PROMPT 30 20 "Consegn. anno"
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
@ -521,7 +520,8 @@ BEGIN
|
||||
OUTPUT S_DESCR DESCR
|
||||
OUTPUT S_PREZZOST COSTSTD
|
||||
FIELD CODART
|
||||
CHECKTYPE REQUIRED
|
||||
CHECKTYPE REQUIRED
|
||||
ADD RUN ve2 -3
|
||||
END
|
||||
|
||||
STRING S_DESCR 50
|
||||
@ -537,54 +537,44 @@ END
|
||||
|
||||
CURRENCY S_PREZZOST 15
|
||||
BEGIN
|
||||
PROMPT 1 4 "Prezzo in vigore "
|
||||
PROMPT 1 4 "Prezzo in vigore "
|
||||
FIELD PREZZO
|
||||
END
|
||||
|
||||
CURRENCY S_PREZZORN 15
|
||||
BEGIN
|
||||
PROMPT 45 4 "Prezzo di rinnovo "
|
||||
PROMPT 43 4 "Prezzo di rinnovo "
|
||||
FIELD PREZRIN
|
||||
END
|
||||
|
||||
CURRENCY S_IMPFISART 15
|
||||
BEGIN
|
||||
PROMPT 1 5 "Importo fisso "
|
||||
PROMPT 1 5 "Importo fisso "
|
||||
FIELD IMPFISART
|
||||
END
|
||||
|
||||
NUMBER S_SCONTO 6 2
|
||||
BEGIN
|
||||
PROMPT 45 5 "Sconto % "
|
||||
PROMPT 43 5 "Sconto % "
|
||||
FIELD SCONTPERC
|
||||
END
|
||||
|
||||
NUMBER S_CONG 9
|
||||
BEGIN
|
||||
PROMPT 1 6 "Conguaglio "
|
||||
PROMPT 1 6 "Conguaglio "
|
||||
FIELD QTACONG
|
||||
END
|
||||
|
||||
CURRENCY S_VALCONV 15
|
||||
BEGIN
|
||||
PROMPT 45 6 "Val. convenzionale"
|
||||
PROMPT 43 6 "Val. convenzionale"
|
||||
FLAGS "U"
|
||||
FIELD VALCONV
|
||||
END
|
||||
|
||||
LISTBOX S_ARTBLOC 25
|
||||
BEGIN
|
||||
PROMPT 1 7 "Articolo bloccato "
|
||||
ITEM "0|Nessuna"
|
||||
ITEM "1|Articolo in sostituzione"
|
||||
ITEM "2|Cliente in chiusura"
|
||||
ITEM "3|Contratto in rinnovo"
|
||||
FIELD ARTBLOC
|
||||
END
|
||||
|
||||
STRING S_UM 2
|
||||
BEGIN
|
||||
PROMPT 59 7 "Unità di misura"
|
||||
PROMPT 1 7 "Unità di misura "
|
||||
USE LF_UMART KEY 2
|
||||
JOIN UMS INTO CODTAB=UM
|
||||
INPUT CODART S_CODART SELECT
|
||||
@ -596,9 +586,65 @@ BEGIN
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
LISTBOX S_TIPOFORF 34
|
||||
STRING S_CAUSMAG 4
|
||||
BEGIN
|
||||
PROMPT 1 8 "Tipo Forfait"
|
||||
PROMPT 43 7 "Causale di default"
|
||||
USE CAU
|
||||
INPUT CODTAB S_CAUSMAG
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT S_CAUSMAG CODTAB
|
||||
FIELD CAUSMAG
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
CURRENCY S_PREZDAN 15
|
||||
BEGIN
|
||||
PROMPT 1 8 "Prezzo danneggiati "
|
||||
FLAGS "U"
|
||||
FIELD PREZDAN
|
||||
END
|
||||
|
||||
CURRENCY S_PRZDTTMP 15
|
||||
BEGIN
|
||||
PROMPT 43 8 "Prezzo dot. temp. "
|
||||
FLAGS "U"
|
||||
FIELD PRZDTTMP
|
||||
END
|
||||
|
||||
NUMBER S_DOTIN 9
|
||||
BEGIN
|
||||
PROMPT 1 9 "Dot. iniziale "
|
||||
FIELD DOTIN
|
||||
END
|
||||
|
||||
NUMBER S_DOTTMP 9
|
||||
BEGIN
|
||||
PROMPT 43 9 "Dot. temporanea "
|
||||
FIELD DOTTMP
|
||||
END
|
||||
|
||||
DATE S_INDTTMP
|
||||
BEGIN
|
||||
PROMPT 1 10 "Inizio dot. temporanea "
|
||||
FIELD INDTTMP
|
||||
END
|
||||
|
||||
DATE S_FIDTTMP
|
||||
BEGIN
|
||||
PROMPT 43 10 "Fine dot. temp "
|
||||
FIELD FIDTTMP
|
||||
END
|
||||
|
||||
NUMBER S_FORFPERCL 6 2
|
||||
BEGIN
|
||||
PROMPT 1 11 "% Forfait cliente "
|
||||
FIELD FORFPERCL
|
||||
END
|
||||
|
||||
LISTBOX S_TIPOFORF 1 34
|
||||
BEGIN
|
||||
PROMPT 1 12 "Tipo Forfait "
|
||||
ITEM "0|Nessuno"
|
||||
ITEM "1|A valore fisso"
|
||||
ITEM "2|Nolo in base a dot. iniziale"
|
||||
@ -611,80 +657,34 @@ BEGIN
|
||||
FIELD TIPOFORF
|
||||
END
|
||||
|
||||
NUMBER S_FORFPERCL 6 2
|
||||
LISTBOX S_ARTBLOC 1 34
|
||||
BEGIN
|
||||
PROMPT 55 8 "% Forfait cliente"
|
||||
FIELD FORFPERCL
|
||||
PROMPT 1 13 "Articolo bloccato "
|
||||
ITEM "0|Nessuna"
|
||||
ITEM "1|Articolo in sostituzione"
|
||||
ITEM "2|Cliente in chiusura"
|
||||
ITEM "3|Contratto in rinnovo"
|
||||
FIELD ARTBLOC
|
||||
END
|
||||
|
||||
CURRENCY S_PREZDAN 15
|
||||
LISTBOX S_CALCCONS 1 34
|
||||
BEGIN
|
||||
PROMPT 1 9 "Prezzo danneggiati "
|
||||
FLAGS "U"
|
||||
FIELD PREZDAN
|
||||
END
|
||||
|
||||
STRING S_CAUSMAG 4
|
||||
BEGIN
|
||||
PROMPT 52 9 "Causale di default "
|
||||
USE CAU
|
||||
INPUT CODTAB S_CAUSMAG
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT S_CAUSMAG CODTAB
|
||||
FIELD CAUSMAG
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
LISTBOX S_CALCCONS 26
|
||||
BEGIN
|
||||
PROMPT 14 10 "Calcolo del consegnato "
|
||||
PROMPT 1 14 "Calcolo del consegnato "
|
||||
ITEM "0|Conguaglio alla confezione"
|
||||
ITEM "1|Uguale al ritirato"
|
||||
FIELD CALCCONS
|
||||
END
|
||||
|
||||
NUMBER S_DOTIN 9
|
||||
LISTBOX S_TIPONOL 1 34
|
||||
BEGIN
|
||||
PROMPT 1 13 "Dotazione iniziale "
|
||||
FIELD DOTIN
|
||||
END
|
||||
|
||||
NUMBER S_DOTTMP 9
|
||||
BEGIN
|
||||
PROMPT 1 14 "Dotazione temporanea "
|
||||
FIELD DOTTMP
|
||||
END
|
||||
|
||||
CURRENCY S_PRZDTTMP 15
|
||||
BEGIN
|
||||
PROMPT 40 14 "Prezzo dot. temporanea"
|
||||
FLAGS "U"
|
||||
FIELD PRZDTTMP
|
||||
END
|
||||
|
||||
DATE S_INDTTMP
|
||||
BEGIN
|
||||
PROMPT 1 15 "Inizio dot. temporanea "
|
||||
FIELD INDTTMP
|
||||
END
|
||||
|
||||
DATE S_FIDTTMP
|
||||
BEGIN
|
||||
PROMPT 40 15 "Fine dot. temporanea "
|
||||
FIELD FIDTTMP
|
||||
END
|
||||
|
||||
LISTBOX S_TIPONOL 15
|
||||
BEGIN
|
||||
PROMPT 1 16 "Tipo Noleggio"
|
||||
PROMPT 1 15 "Tipo Noleggio "
|
||||
FIELD TIPONOL
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
BOOLEAN S_RITAUDTTMP
|
||||
BEGIN
|
||||
PROMPT 40 16 "Ritiro automatico dotazione temporanea"
|
||||
PROMPT 1 16 "Ritiro automatico dotazione temporanea"
|
||||
FIELD RITAUDTTMP
|
||||
END
|
||||
|
||||
@ -696,7 +696,7 @@ END
|
||||
|
||||
BOOLEAN S_ARROT
|
||||
BEGIN
|
||||
PROMPT 40 17 "Arrotondamento"
|
||||
PROMPT 1 18 "Arrotondamento"
|
||||
FIELD ARROT
|
||||
END
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user