From 4f63bae40f9211689c415ddd68c555d01229e226 Mon Sep 17 00:00:00 2001 From: luca Date: Fri, 9 Oct 2009 13:58:33 +0000 Subject: [PATCH] Patch level :10.0 Files correlati : Ricompilazione Demo : [ ] Commento : raffinato l'aggiungitore di articoli git-svn-id: svn://10.65.10.50/trunk@19415 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- ve/ve2700.cpp | 30 +++++++++++++++++++++++++++--- ve/ve2700a.uml | 45 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+), 3 deletions(-) diff --git a/ve/ve2700.cpp b/ve/ve2700.cpp index ba9cb2063..b157b3b79 100755 --- a/ve/ve2700.cpp +++ b/ve/ve2700.cpp @@ -425,7 +425,7 @@ void TAggiorna_listini_edit_mask::add_art() const int recset_items = recset.items(); //crea uno sheet volante con gli articoli aggiungibili - TArray_sheet sheet(-1, -1, 78, 20, TR("Articoli aggiungibili"), HR("@1|Codice@20|UM|Prezzo@8R|Descrizione@50")); + TArray_sheet sheet(-1, -1, 78, 20, TR("Articoli aggiungibili"), HR("@1|Codice@20|UM|Prezzo@8R|Gr.Merc|Descrizione@50")); TProgind pi(recset_items, TR("Ricerca articoli aggiungibili..."), true, true); @@ -444,6 +444,8 @@ void TAggiorna_listini_edit_mask::add_art() row.add(um); const real prezzo = recset.get("UMART.PREZZO").as_real(); row.add(prezzo.is_zero() ? "" : prezzo.string()); + const TString& grm = recset.get(ANAMAG_GRMERC).as_string(); + row.add(grm); const TString& descr = recset.get(ANAMAG_DESCR).as_string(); row.add(descr); @@ -468,7 +470,29 @@ void TAggiorna_listini_edit_mask::add_art() { const TPrice prezzo(real(riga->get(3))); sf_listini.row(numriga + 1).add(prezzo.string(true), prezzo_pos); - } + + //aggiunge i prezzi sui listini figli (sia riga alta che riga bassa ricaricata) + TSheet_field& sf_listini_figli = sfield(F_LISTINI_FIGLI); + FOR_EACH_SHEET_ROW(sf_listini_figli, i, son) + { + sf_listini.row(numriga).add(prezzo.get_num().string(), prezzo_pos + i + 1); + const real ricarico = son->get(sf_listini_figli.cid2index(F_RICARICO)); + const TPrice son_prezzo = prezzo.get_num() * (CENTO + ricarico) / CENTO; + sf_listini.row(numriga + 1).add(son_prezzo.get_num().string(), prezzo_pos + i + 1); + } + + //aggiorna l'articolo in anagrafica con il grmerc se lui non ce l'ha + if (riga->get_char(4) <= ' ') + { + TLocalisamfile anamag(LF_ANAMAG); + anamag.put(ANAMAG_CODART, codart); + if (anamag.read() == NOERR) + { + anamag.put(ANAMAG_GRMERC, grmerc); + anamag.rewrite(); + } + } + } //if(numriga>=0... } sf_listini.force_update(); } @@ -564,7 +588,7 @@ void TAggiorna_listini_edit_mask::save_listini() } else //non lo trova quindi lo aggiunge { - if (err == _isreinsert) + if (err == _iskeynotfound) { file.curr() = key_rec; file.put(RCONDV_PREZZO, prezzo); diff --git a/ve/ve2700a.uml b/ve/ve2700a.uml index 146dd17c0..7d4b13e05 100755 --- a/ve/ve2700a.uml +++ b/ve/ve2700a.uml @@ -59,6 +59,51 @@ BEGIN FLAGS "D" END +TEXT DLG_NULL +BEGIN + PROMPT 0 4 "@bIstruzioni" +END + +TEXT DLG_NULL +BEGIN + PROMPT 0 5 "1) In fase di ricerca listino padre saranno visualizzati solo quelli che hanno figli" +END + +TEXT DLG_NULL +BEGIN + PROMPT 0 6 "2) Selezionare un gr/sotgr merceologico per avere i ricarichi collegati ai figli" +END + +TEXT DLG_NULL +BEGIN + PROMPT 0 7 "3) Modificare ricarichi e/o prezzi degli articoli" +END + +TEXT DLG_NULL +BEGIN + PROMPT 0 8 "4) Premere Applica per applicare i ricarichi alle righe selezionate" +END + +TEXT DLG_NULL +BEGIN + PROMPT 0 9 "5) Premere +Articoli per aggiungere articoli da anagrafica non presenti nel" +END + +TEXT DLG_NULL +BEGIN + PROMPT 0 10 " listino padre, aventi lo stesso gr. merc. selezionato o senza gr. merc." +END + +TEXT DLG_NULL +BEGIN + PROMPT 0 11 " (aggiungendo un articolo senza gr. merc., l'articolo stesso sarà registrato" +END + +TEXT DLG_NULL +BEGIN + PROMPT 0 12 " con il gr. merc. corrente in anagrafica)" +END + ENDPAGE ENDMASK