Patch level : 10.0 492

Files correlati     : ve0.exe ve6.exe
Ricompilazione Demo : [ ]
Commento

Cambiata la contabilizzazione per categoria di vendita cliente e categoria merceologica in categoria di vendita articolo e categoria vendita cliente secondo le necessità delle lavanderie. COmunque e nello standard quindi va provato nello standard


git-svn-id: svn://10.65.10.50/trunk@19548 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
alex 2009-10-30 00:18:03 +00:00
parent 53cc21039d
commit 009a3d6057
6 changed files with 41 additions and 41 deletions

View File

@ -11,7 +11,7 @@ BEGIN
PROMPT 1 1 "@bRicerca primaria del conto di costo ricavo" PROMPT 1 1 "@bRicerca primaria del conto di costo ricavo"
END END
LIST F_RICERCACR1 2 44 LIST F_RICERCACR1 2 50
BEGIN BEGIN
PROMPT 2 2 "Primo gruppo " PROMPT 2 2 "Primo gruppo "
ITEM "CF|Clienti/Fornitori" ITEM "CF|Clienti/Fornitori"
@ -19,12 +19,12 @@ ITEM "CA|Causale contabile"
ITEM "AN|Anagrafica magazzino" ITEM "AN|Anagrafica magazzino"
ITEM "CV|Categoria di vendita" ITEM "CV|Categoria di vendita"
ITEM "CC|Categoria contabile" ITEM "CC|Categoria contabile"
ITEM "VM|Categoria di vendita e gruppo merceologico" ITEM "VM|Categoria vendita articolo e Categoria di vendita"
//STR_EXPR (#THIS_FIELD=="-")||((#THIS_FIELD!=#F_RICERCACR1)&&(#THIS_FIELD!=#F_RICERCACR2)&&(#THIS_FIELD!=#F_RICERCACR3)&&(#THIS_FIELD!=#F_RICERCACR4)) //STR_EXPR (#THIS_FIELD=="-")||((#THIS_FIELD!=#F_RICERCACR1)&&(#THIS_FIELD!=#F_RICERCACR2)&&(#THIS_FIELD!=#F_RICERCACR3)&&(#THIS_FIELD!=#F_RICERCACR4))
//WARNING "La sequenza di ricerca primaria deve indicare cinque tipi diversi" //WARNING "La sequenza di ricerca primaria deve indicare cinque tipi diversi"
END END
LIST F_RICERCACR2 2 44 LIST F_RICERCACR2 2 50
BEGIN BEGIN
PROMPT 2 3 "Secondo gruppo " PROMPT 2 3 "Secondo gruppo "
ITEM "-|Nessuno" MESSAGE CLEAR,1@ ITEM "-|Nessuno" MESSAGE CLEAR,1@
@ -33,12 +33,12 @@ ITEM "CA|Causale contabile" MESSAGE ENABLE,F_RICERCACR3
ITEM "AN|Anagrafica magazzino" MESSAGE ENABLE,F_RICERCACR3 ITEM "AN|Anagrafica magazzino" MESSAGE ENABLE,F_RICERCACR3
ITEM "CV|Categoria di vendita" MESSAGE ENABLE,F_RICERCACR3 ITEM "CV|Categoria di vendita" MESSAGE ENABLE,F_RICERCACR3
ITEM "CC|Categoria contabile" MESSAGE ENABLE,F_RICERCACR3 ITEM "CC|Categoria contabile" MESSAGE ENABLE,F_RICERCACR3
ITEM "VM|Categoria di vendita e gruppo merceologico" MESSAGE ENABLE,F_RICERCACR3 ITEM "VM|Categoria vendita articolo e Categoria di vendita" MESSAGE ENABLE,F_RICERCACR3
//STR_EXPR (#THIS_FIELD=="-")||((#THIS_FIELD!=#F_RICERCACR1)&&(#THIS_FIELD!=#F_RICERCACR2)&&(#THIS_FIELD!=#F_RICERCACR3)&&(#THIS_FIELD!=#F_RICERCACR4)) //STR_EXPR (#THIS_FIELD=="-")||((#THIS_FIELD!=#F_RICERCACR1)&&(#THIS_FIELD!=#F_RICERCACR2)&&(#THIS_FIELD!=#F_RICERCACR3)&&(#THIS_FIELD!=#F_RICERCACR4))
//WARNING "La sequenza di ricerca primaria deve indicare cinque tipi diversi" //WARNING "La sequenza di ricerca primaria deve indicare cinque tipi diversi"
END END
LIST F_RICERCACR3 2 44 LIST F_RICERCACR3 2 50
BEGIN BEGIN
PROMPT 2 4 "Terzo gruppo " PROMPT 2 4 "Terzo gruppo "
ITEM "-|Nessuno" MESSAGE CLEAR,2@ ITEM "-|Nessuno" MESSAGE CLEAR,2@
@ -47,13 +47,13 @@ ITEM "CA|Causale contabile" MESSAGE ENABLE,F_RICERCACR4
ITEM "AN|Anagrafica magazzino" MESSAGE ENABLE,F_RICERCACR4 ITEM "AN|Anagrafica magazzino" MESSAGE ENABLE,F_RICERCACR4
ITEM "CV|Categoria di vendita" MESSAGE ENABLE,F_RICERCACR4 ITEM "CV|Categoria di vendita" MESSAGE ENABLE,F_RICERCACR4
ITEM "CC|Categoria contabile" MESSAGE ENABLE,F_RICERCACR4 ITEM "CC|Categoria contabile" MESSAGE ENABLE,F_RICERCACR4
ITEM "VM|Categoria di vendita e gruppo merceologico" MESSAGE ENABLE,F_RICERCACR4 ITEM "VM|Categoria vendita articolo e Categoria di vendita" MESSAGE ENABLE,F_RICERCACR4
GROUP 1 GROUP 1
//STR_EXPR (#THIS_FIELD=="-")||((#THIS_FIELD!=#F_RICERCACR1)&&(#THIS_FIELD!=#F_RICERCACR2)&&(#THIS_FIELD!=#F_RICERCACR3)&&(#THIS_FIELD!=#F_RICERCACR4)) //STR_EXPR (#THIS_FIELD=="-")||((#THIS_FIELD!=#F_RICERCACR1)&&(#THIS_FIELD!=#F_RICERCACR2)&&(#THIS_FIELD!=#F_RICERCACR3)&&(#THIS_FIELD!=#F_RICERCACR4))
//WARNING "La sequenza di ricerca primaria deve indicare cinque tipi diversi" //WARNING "La sequenza di ricerca primaria deve indicare cinque tipi diversi"
END END
LIST F_RICERCACR4 2 44 LIST F_RICERCACR4 2 50
BEGIN BEGIN
PROMPT 2 5 "Quarto gruppo " PROMPT 2 5 "Quarto gruppo "
ITEM "-|Nessuno" MESSAGE CLEAR,F_RICERCACR5 ITEM "-|Nessuno" MESSAGE CLEAR,F_RICERCACR5
@ -62,13 +62,13 @@ ITEM "CA|Causale contabile" MESSAGE ENABLE,F_RICERCACR5
ITEM "AN|Anagrafica magazzino" MESSAGE ENABLE,F_RICERCACR5 ITEM "AN|Anagrafica magazzino" MESSAGE ENABLE,F_RICERCACR5
ITEM "CV|Categoria di vendita" MESSAGE ENABLE,F_RICERCACR5 ITEM "CV|Categoria di vendita" MESSAGE ENABLE,F_RICERCACR5
ITEM "CC|Categoria contabile" MESSAGE ENABLE,F_RICERCACR5 ITEM "CC|Categoria contabile" MESSAGE ENABLE,F_RICERCACR5
ITEM "VM|Categoria di vendita e gruppo merceologico" MESSAGE ENABLE,F_RICERCACR5 ITEM "VM|Categoria vendita articolo e Categoria di vendita" MESSAGE ENABLE,F_RICERCACR5
GROUP 1 2 GROUP 1 2
//STR_EXPR (#THIS_FIELD=="-")||((#THIS_FIELD!=#F_RICERCACR1)&&(#THIS_FIELD!=#F_RICERCACR2)&&(#THIS_FIELD!=#F_RICERCACR3)&&(#THIS_FIELD!=#F_RICERCACR4)) //STR_EXPR (#THIS_FIELD=="-")||((#THIS_FIELD!=#F_RICERCACR1)&&(#THIS_FIELD!=#F_RICERCACR2)&&(#THIS_FIELD!=#F_RICERCACR3)&&(#THIS_FIELD!=#F_RICERCACR4))
//WARNING "La sequenza di ricerca primaria deve indicare cinque tipi diversi" //WARNING "La sequenza di ricerca primaria deve indicare cinque tipi diversi"
END END
LIST F_RICERCACR5 2 44 LIST F_RICERCACR5 2 50
BEGIN BEGIN
PROMPT 2 6 "Quinto gruppo " PROMPT 2 6 "Quinto gruppo "
ITEM "-|Nessuno" ITEM "-|Nessuno"
@ -77,7 +77,7 @@ ITEM "CA|Causale contabile"
ITEM "AN|Anagrafica magazzino" ITEM "AN|Anagrafica magazzino"
ITEM "CV|Categoria di vendita" ITEM "CV|Categoria di vendita"
ITEM "CC|Categoria contabile" ITEM "CC|Categoria contabile"
ITEM "VM|Categoria di vendita e gruppo merceologico" ITEM "VM|Categoria vendita articolo e Categoria di vendita"
GROUP 1 2 GROUP 1 2
//STR_EXPR (#THIS_FIELD=="-")||((#THIS_FIELD!=#F_RICERCACR1)&&(#THIS_FIELD!=#F_RICERCACR2)&&(#THIS_FIELD!=#F_RICERCACR3)&&(#THIS_FIELD!=#F_RICERCACR4)) //STR_EXPR (#THIS_FIELD=="-")||((#THIS_FIELD!=#F_RICERCACR1)&&(#THIS_FIELD!=#F_RICERCACR2)&&(#THIS_FIELD!=#F_RICERCACR3)&&(#THIS_FIELD!=#F_RICERCACR4))
//WARNING "La sequenza di ricerca primaria deve indicare cinque tipi diversi" //WARNING "La sequenza di ricerca primaria deve indicare cinque tipi diversi"

View File

@ -72,7 +72,7 @@ class TCVM_tab_app : public TRelation_application
TRelation* _rel; TRelation* _rel;
protected: protected:
int find_gm(TSheet_field& s, const TString& gm) const; int find_cve(TSheet_field& s, const TString& cve) const;
public: public:
virtual TMask* get_mask(int) { return _msk; } virtual TMask* get_mask(int) { return _msk; }
@ -112,12 +112,12 @@ void TCVM_tab_app::init_modify_mode(TMask& m)
bool TCVM_tab_app::user_create() bool TCVM_tab_app::user_create()
{ {
_rel = new TRelation("CVE"); _rel = new TRelation("CRA");
_msk = new TCVM_mask; _msk = new TCVM_mask;
return true; return true;
} }
int TCVM_tab_app::find_gm(TSheet_field& s, const TString& gm) const int TCVM_tab_app::find_cve(TSheet_field& s, const TString& cve) const
{ {
int mini = 0, maxi = s.items()-1, midi = 0; int mini = 0, maxi = s.items()-1, midi = 0;
@ -126,7 +126,7 @@ int TCVM_tab_app::find_gm(TSheet_field& s, const TString& gm) const
{ {
midi = (mini+maxi) / 2; midi = (mini+maxi) / 2;
s.row(midi).get(0, code); s.row(midi).get(0, code);
const int cmp = code.compare(gm); const int cmp = code.compare(cve);
if (cmp == 0) if (cmp == 0)
break; break;
if (cmp > 0) if (cmp > 0)
@ -134,7 +134,7 @@ int TCVM_tab_app::find_gm(TSheet_field& s, const TString& gm) const
else else
mini = midi+1; mini = midi+1;
} }
return code == gm ? midi : -1; return code == cve ? midi : -1;
} }
int TCVM_tab_app::read(TMask& m) int TCVM_tab_app::read(TMask& m)
@ -145,7 +145,7 @@ int TCVM_tab_app::read(TMask& m)
const TString& code = m.get(F_CVM_COD); const TString& code = m.get(F_CVM_COD);
if (code.full()) if (code.full())
{ {
TISAM_recordset gm("USE GMC"); TISAM_recordset gm("USE CVE");
for (bool ok = gm.move_first(); ok; ok = gm.move_next()) for (bool ok = gm.move_first(); ok; ok = gm.move_next())
{ {
TToken_string& row = s.row(-1); TToken_string& row = s.row(-1);
@ -157,11 +157,11 @@ int TCVM_tab_app::read(TMask& m)
{ {
TISAM_recordset cvm("USE &CVM\nFROM CODTAB=#COD\nTO CODTAB=#COD"); TISAM_recordset cvm("USE &CVM\nFROM CODTAB=#COD\nTO CODTAB=#COD");
cvm.set_var("#COD", code); cvm.set_var("#COD", code);
TString8 gm; TString8 cve;
for (bool ok = cvm.move_first(); ok; ok = cvm.move_next()) for (bool ok = cvm.move_first(); ok; ok = cvm.move_next())
{ {
gm = cvm.get("CODTAB[3,7]").as_string(); cve = cvm.get("CODTAB[4,5]").as_string();
const int i = find_gm(s, gm); const int i = find_cve(s, cve);
if (i >= 0) if (i >= 0)
{ {
const int gr = cvm.get("I0").as_int(); const int gr = cvm.get("I0").as_int();

View File

@ -1680,16 +1680,14 @@ error_type TContabilizzazione::search_costo_ricavo(TBill& conto, const TRiga_doc
if (tok == "VM") if (tok == "VM")
{ {
if (!is_cli) continue; // se non e' un cliente salta questa condizione if (!is_cli) continue; // se non e' un cliente salta questa condizione
// Costruisco il codice Categoria(2)+Gruppo(3)+Sottogruppo(2) // Costruisco il codice Categoria conto vendite artioli(3)+Categoria di vendita cliente(2)
TString8 cod = _clifo->curr(LF_CFVEN).get(CFV_CATVEN); TString8 cod = _anamag->get(ANAMAG_CATCONV);
cod << _anamag->get(ANAMAG_GRMERC);
const TRectype* t = &cache().get("&CVM", cod); cod << _clifo->curr(LF_CFVEN).get(CFV_CATVEN);
if (t->empty() && cod.len() > 5)
{ const TRectype* t = &cache().get("&CVM", cod);
cod.cut(5); // Tiene solo categoria+gruppo e scarta il sottogruppo
t = &cache().get("&CVM", cod); if (!t->empty())
}
if (!t->empty())
{ {
const int gr = t->get_int("I0"); const int gr = t->get_int("I0");
const int co = t->get_int("I1"); const int co = t->get_int("I1");

View File

@ -2031,8 +2031,10 @@ bool descr_handler( TMask_field& f, KEY key )
if (t.extended_desc_search()) if (t.extended_desc_search())
{ {
const TString& s = f.get();
TLocalisamfile& anamag = ((TEdit_field&)f).browse()->cursor()->file(); TLocalisamfile& anamag = ((TEdit_field&)f).browse()->cursor()->file();
f.mask().set(FR_CODART, anamag.get(ANAMAG_CODART), 3); if (s == anamag.get(ANAMAG_DESCR))
f.mask().set(FR_CODART, anamag.get(ANAMAG_CODART), 3);
} }
else else
if (f.mask().is_running()) if (f.mask().is_running())

View File

@ -2,8 +2,8 @@
#define F_CVM_DES 202 #define F_CVM_DES 202
#define F_CVM_SHT 203 #define F_CVM_SHT 203
#define F_CVM_CODGM 101 #define F_CVM_CODCVC 101
#define F_CVM_DESGM 102 #define F_CVM_DESCVC 102
#define F_CVM_GRUPPO 103 #define F_CVM_GRUPPO 103
#define F_CVM_CONTO 104 #define F_CVM_CONTO 104
#define F_CVM_SOTTOCONTO 105 #define F_CVM_SOTTOCONTO 105

View File

@ -8,27 +8,27 @@ PAGE "Conti per categoria di vendita e gruppo merceologico" 0 2 0 0
GROUPBOX DLG_NULL 78 3 GROUPBOX DLG_NULL 78 3
BEGIN BEGIN
PROMPT 1 0 "@bCategoria di vendita" PROMPT 1 0 "@bCategoria conto vendite"
END END
STRING F_CVM_COD 2 STRING F_CVM_COD 3
BEGIN BEGIN
PROMPT 2 1 "Codice " PROMPT 2 1 "Codice "
USE CVE USE CRA
INPUT CODTAB F_CVM_COD INPUT CODTAB F_CVM_COD
DISPLAY "Codice" CODTAB DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@50" S0 DISPLAY "Descrizione@50" S0
OUTPUT F_CVM_COD CODTAB OUTPUT F_CVM_COD CODTAB
OUTPUT F_CVM_DES S0 OUTPUT F_CVM_DES S0
CHECKTYPE FORCED CHECKTYPE FORCED
FLAGS "U" FLAGS "UZ"
KEY 1 KEY 1
END END
STRING F_CVM_DES 50 STRING F_CVM_DES 50
BEGIN BEGIN
PROMPT 16 1 "" PROMPT 16 1 ""
USE CVE KEY 2 USE CRA KEY 2
INPUT S0 F_CVM_DES INPUT S0 F_CVM_DES
DISPLAY "Descrizione@50" S0 DISPLAY "Descrizione@50" S0
DISPLAY "Codice" CODTAB DISPLAY "Codice" CODTAB
@ -47,7 +47,7 @@ END
SPREADSHEET F_CVM_SHT SPREADSHEET F_CVM_SHT
BEGIN BEGIN
PROMPT 0 4 "" PROMPT 0 4 ""
ITEM "Gruppo\nMerc.@6F" ITEM "Categoria\ndi vendita@6F"
ITEM "Descrizione\nGruppo merceologico@50" ITEM "Descrizione\nGruppo merceologico@50"
ITEM "Gruppo\nCont.@5" ITEM "Gruppo\nCont.@5"
ITEM "Conto\nCont.@5" ITEM "Conto\nCont.@5"
@ -64,16 +64,16 @@ PAGE "Conto" -1 -1 56 8
GROUPBOX DLG_NULL 54 4 GROUPBOX DLG_NULL 54 4
BEGIN BEGIN
PROMPT 1 0 "Gruppo Merceologico" PROMPT 1 0 "Categoria di vendita"
END END
STRING F_CVM_CODGM 5 STRING F_CVM_CODCVC 2
BEGIN BEGIN
PROMPT 2 1 "Codice " PROMPT 2 1 "Codice "
FLAGS "DU" FLAGS "DU"
END END
STRING F_CVM_DESGM 52 STRING F_CVM_DESCVC 52
BEGIN BEGIN
PROMPT 2 2 "" PROMPT 2 2 ""
FLAGS "D" FLAGS "D"