Patch level :10.0

Files correlati     :lv2.exe,lv2500.msk
Ricompilazione Demo : [ ]
Commento            :
Modifiche sulla fatturazione


git-svn-id: svn://10.65.10.50/trunk@18579 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
rajitgill 2009-03-20 17:48:18 +00:00
parent b87d64e9ac
commit 572e2ffc34
8 changed files with 110 additions and 27 deletions

Binary file not shown.

View File

@ -1,3 +1,3 @@
168
0
$lvcondv|||170|0|Tabella testate di contratto|||
$lvcondv|||205|0|Tabella testate di contratto|||

View File

@ -1,5 +1,5 @@
168
44
45
CODCONT|3|6|0|Codice Contratto
STATUS|1|2|0|Stato del contratto, <CH>chiuso, <CO>confermato, <DC>da confermare
PROPOSTA|8|1|0|Proposta di contratto
@ -9,7 +9,7 @@ DATASC|5|8|0|Data di scadenza del contratto
CODINDSP|2|3|0|Codice indirizzo di spedizione
DTSTAGIN|5|8|0|Data di inizio stagionalità
DTSTAGSC|5|8|0|Data di scadenza stagionalità
FATTSOSP|8|1|0|Fatturazione sospesa o escluso da fatturazione
FATTSOSP|8|1|0|Escluso da fatturazione
STRCONS|8|1|0|Stampa riepilogo consegne
TIPOLIS|2|1|0|Tipo listino
STPRZBOL|8|1|0|Visualizza i prezzi in bolla
@ -42,7 +42,8 @@ NUMUT|2|5|0|Numero utente
NUMETI|2|5|0|Numero etichette
RITAUDTTMP|8|1|0|Ritiro automatico dotazione temporanea
DTFIXDDT|5|8|0|Data fissa per creazione DDT da sporco
ELART|8|1|0|Elenco articoli
PREZROT|4|18|3|Prezzo rotti
IMPCANFIS|4|18|3|Importo per canone fisso
COMMENTI|11|10|0|Commenti e note
1
CODCF+CODCONT|

View File

@ -552,10 +552,25 @@ BEGIN
FIELD Perarr
END
NUMBER F_VALFIX 10
STRING F_CODARTFIX 20
BEGIN
PROMPT 2 16 "Codice per forfait a valore fisso "
FIELD Valfix
PROMPT 2 16 "Codice articolo per forfait a valore fisso "
FIELD Codartfix
KEY 1
FLAG "UG"
USE LF_ANAMAG
INPUT CODART F_CODARTFIX
DISPLAY "Codice@20" CODART
DISPLAY "Descrizione@50" DESCR
OUTPUT F_CODARTFIX CODART
END
LISTBOX F_TIPOPR 1 8
BEGIN
PROMPT 2 17 "Tipo di prezzo"
ITEM "0|Prezzo da contratto"
ITEM "1|Prezzo da bolla"
FIELD Tipopr
END
GROUPBOX DLG_NULL 78 4

View File

@ -1,4 +1,5 @@
#include <progind.h>
#include <config.h>
#include "lvlib.h"
#include "lv2500a.h"
@ -51,7 +52,28 @@ bool TFatturazione_lavanderie::da_raggruppare(const TRiga_documento & rin)
const TRectype & rcont = contr.row(codart);
const int tipoforf = rcont.get_int(LVRCONDV_TIPOFORF);
return tipoforf > 1;
// return tipoforf > 1; // Test originale
if (tipoforf > 1)
return true;
// Da qui in poi e' sottinteso tipoforf == 1
if (ini_get_int(CONFIG_DITTA, "lv", "TipoPr") == 1)
return false;
// Test GUY
const TString8 causale = rin.get(RDOC_CODAGG1);
const TRectype& cau = cache().get("&CAU", causale);
if (cau.get_bool("B1"))
{
const TCausale_magazzino& con = cached_causale_magazzino(cau.get("S2"));
if (con.sgn(s_dottm)) // Causale di incremento sotazione temporanea
return true;
}
if (cau.get_bool("B4")) // Causale di rotto
return true;
return false;
}
@ -152,23 +174,36 @@ void TFatturazione_lavanderie::add_rows(TRiga_documento & rout, TRiga_documento
{
const TString8 causale = rin.get(RDOC_CODAGG1);
const TRectype& cau = cache().get("&CAU", causale);
//movimento o meno la dotazione temporanea/odierna a seconda di cosa prevede la causale
if (cau.get_bool("B0"))
const TCausale_magazzino& rit = cached_causale_magazzino(cau.get("S1"));
const TCausale_magazzino& con = cached_causale_magazzino(cau.get("S2")); //movimento o meno la dotazione temporanea/odierna a seconda di cosa prevede la causale
const long clifo = rin.doc().get_long(DOC_CODCF);
const int indsped = rin.doc().get_int(DOC_CODINDSP);
TLaundry_contract contr(clifo, indsped, _data_elab);
if (cau.get_bool("B4") && contr.get_int(LVCONDV_ADDCAPROT)) // Guardo se è una causale di rotto e se è abilitato nella testata del contratto la fatturazione dei rotti
{
const TCausale_magazzino& rit = cached_causale_magazzino(cau.get("S1"));
const real qta = rit.sgn(s_consmese) * rin.get_real(RDOC_QTA);
rout.add(RDOC_QTA, qta);
const real qta = rit.sgn(s_consmese) * rin.get_real(RDOC_QTA);
rout.put(RDOC_PREZZO,contr.get_int(LVCONDV_PREZROT));
rout.add(RDOC_QTA, qta);
}
if (cau.get_bool("B1"))
else
{
const TCausale_magazzino& con = cached_causale_magazzino(cau.get("S2"));
const real qta = con.sgn(s_consmese) * rin.get_real(RDOC_QTA);
if (cau.get_bool("B0"))
{
const real qta = rit.sgn(s_consmese) * rin.get_real(RDOC_QTA);
rout.add(RDOC_QTA, qta);
rout.add(RDOC_QTA, qta);
}
if (cau.get_bool("B1"))
{
const real qta = con.sgn(s_consmese) * rin.get_real(RDOC_QTA);
rout.add(RDOC_QTA, qta);
}
}
}
void TFatturazione_lavanderie::create_row(TDocumento& doc_out, const TRiga_documento & rin)
@ -235,7 +270,7 @@ void TFatturazione_lav_app::main_loop()
while (msk.run()!=K_QUIT)
{
TString query;
query << "USE DOC KEY 3 SELECT (TIPOCF==\"C\")&&(BETWEEN(DATADOC,#DADATA,#ADATA))\n"
query << "USE DOC KEY 3 SELECT (TIPOCF==\"C\")&&(BETWEEN(DATADOC,#DADATA,#ADATA))&&(STATO=2)&&(TIPODOC==\"B01\")\n"
<< "BY TIPOCF CODCF DATADOC\n"
<< "FROM " << "DATADOC=#DADATA PROVV=D ANNO=#ANNO\n"
<< "TO " << " DATADOC=#ADATA PROVV=D ANNO=#ANNO\n";

View File

@ -4,7 +4,8 @@
#define F_COD_ELAB 104
#define F_DESC_ELAB 105
#define F_PERFAT 106
#define F_CODCATC 107
#define F_CODZONA 108

View File

@ -10,13 +10,13 @@ PAGE "Fatturazione" -1 -1 40 5
DATE F_DADATA
BEGIN
PROMPT 2 1 "Fattura dal "
CHECKTYPE REQUIRED
FLAGS "H"
END
DATE F_ADATA
BEGIN
PROMPT 45 1 "al "
CHECKTYPE REQUIRED
FLAGS "H"
END
DATE F_DATAFAT
@ -26,9 +26,37 @@ BEGIN
CHECKTYPE REQUIRED
END
STRING F_CODCATC 2
BEGIN
PROMPT 43 3 "Codice Categoria economica "
FIELD LF_CFVEN->CODCATC
USE CCO
INPUT CODTAB F_CODCATC
DISPLAY "Codice contabile" CODTAB
DISPLAY "Descrizione@30" S0
OUTPUT F_CODCATC CODTAB
HELP "Codice categoria contabile del C/F"
CHECKTYPE NORMAL
END
STRING F_CODZONA 2
BEGIN
PROMPT 2 4 "Codice Zona "
FIELD LF_CFVEN->CODZONA
GROUP 7
USE ZON
INPUT CODTAB F_CODZONA
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT F_CODZONA CODTAB
HELP "Codice della zona dell'agente"
CHECKTYPE NORMAL
END
STRING F_COD_ELAB 8
BEGIN
PROMPT 2 3 "Codice "
PROMPT 2 5 "Codice "
FLAG "U"
USE %ELD SELECT I0==2
INPUT CODTAB F_COD_ELAB
@ -42,7 +70,7 @@ END
STRING F_DESC_ELAB 50
BEGIN
PROMPT 2 4 "Descrizione "
PROMPT 2 6 "Descrizione "
USE %ELD KEY 2 SELECT I0==2
INPUT S0 F_DESC_ELAB
DISPLAY "Descrizione@50" S0
@ -54,7 +82,7 @@ END
RADIOBUTTON F_PERFAT 1 70
BEGIN
PROMPT 2 5 "@bPeriodicità di fatturazione "
PROMPT 2 7 "@bPeriodicità di fatturazione "
ITEM "0|Giornaliera"
ITEM "1|Settimanale"
ITEM "2|Quindicinale"

View File

@ -44,6 +44,9 @@
#define LVCONDV_NUMETI "MUNETI"
#define LVCONDV_RITAUDTTMP "RITAUDTTMP"
#define LVCONDV_DTFIXDDT "DTFIXDDT"
#define LVCONDV_PREZROT "PREZROT"
#define LVCONDV_IMCANFIS "IMCANFIS"
#define LVCONDV_COMMENTI "COMMENTI"
#endif