Patch level : 10.0
Files correlati : lv0.exe lv0600a.msk lv0600a.rep lv3.exe Ricompilazione Demo : [ ] Commento : Riportate Bonazzate git-svn-id: svn://10.65.10.50/branches/R_10_00@22500 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
		
							parent
							
								
									b0b9dcb98e
								
							
						
					
					
						commit
						dc91a5c341
					
				
							
								
								
									
										121
									
								
								lv/lv0400.cpp
									
									
									
									
									
								
							
							
						
						
									
										121
									
								
								lv/lv0400.cpp
									
									
									
									
									
								
							@ -689,63 +689,6 @@ bool TContratti_msk::on_field_event(TOperable_field& o,TField_event e,long jolly
 | 
			
		||||
        }
 | 
			
		||||
        
 | 
			
		||||
 | 
			
		||||
        //PROPONI PREZZO
 | 
			
		||||
        TToken_string key;
 | 
			
		||||
        key.add('C');
 | 
			
		||||
        key.add(field(F_CODCF).get());
 | 
			
		||||
        const TRectype& cfven = cache().get(LF_CFVEN, key);
 | 
			
		||||
 | 
			
		||||
        bool trvlst = false;
 | 
			
		||||
 | 
			
		||||
        if (!cfven.empty())
 | 
			
		||||
        {
 | 
			
		||||
          //se è settata la categoria merceologica, leggo sia il listino che la cat merc, altrimenti solo il listino
 | 
			
		||||
          TString8 codlis = cfven.get(CFV_CODLIST);
 | 
			
		||||
          TString8 catven;
 | 
			
		||||
          if (!ini_get_bool(CONFIG_DITTA,"ve", "GESLISCV"))
 | 
			
		||||
            catven = "";
 | 
			
		||||
          else
 | 
			
		||||
            catven = cfven.get(CFV_CATVEN);
 | 
			
		||||
 | 
			
		||||
          //cerco il prezzo sul listino
 | 
			
		||||
          key.cut(0);
 | 
			
		||||
          key.add('L');     //tipo
 | 
			
		||||
          key.add(catven);  //catven
 | 
			
		||||
          key.add("");      //tipocf
 | 
			
		||||
          key.add("");      //codcf
 | 
			
		||||
          key.add(codlis);  //codlis
 | 
			
		||||
          key.add('A');     //tiporiga
 | 
			
		||||
          key.add(codart);  //codriga
 | 
			
		||||
          key.add("");      //um
 | 
			
		||||
          key.add("");      //nscagl
 | 
			
		||||
          const TRectype& rcondv = cache().get(LF_RCONDV, key);
 | 
			
		||||
 | 
			
		||||
          if (!rcondv.empty())
 | 
			
		||||
          {
 | 
			
		||||
            m.set(S_PREZZOST, rcondv.get_real(RCONDV_PREZZO));
 | 
			
		||||
            trvlst = true;
 | 
			
		||||
          }
 | 
			
		||||
        }        
 | 
			
		||||
 | 
			
		||||
        real prezzo;
 | 
			
		||||
        //se non ho trovato un listino, o se non c'è un listino impostato
 | 
			
		||||
        //propongo come prezzo il valore convenzionale
 | 
			
		||||
        if (!trvlst)
 | 
			
		||||
        {
 | 
			
		||||
          key.cut(0);
 | 
			
		||||
          key.add(codart);
 | 
			
		||||
          key.add(1);
 | 
			
		||||
          const TRectype& umart = cache().get(LF_UMART, key);
 | 
			
		||||
          m.set(S_PREZZOST, umart.get_real(UMART_PREZZO));
 | 
			
		||||
          if (umart.get(UMART_PREZZO).full())
 | 
			
		||||
          {
 | 
			
		||||
            prezzo = umart.get_real(UMART_PREZZO);
 | 
			
		||||
            trvlst = true;
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (!trvlst && insert_mode())
 | 
			
		||||
          warning_box(TR("Non è stato trovato nessun prezzo da proporre"));
 | 
			
		||||
 | 
			
		||||
        //se ho scritto un articolo diverso da quello che esisteva prima
 | 
			
		||||
        //e se si desidera veramente modificarlo, allora permetto la modifica
 | 
			
		||||
@ -753,14 +696,74 @@ bool TContratti_msk::on_field_event(TOperable_field& o,TField_event e,long jolly
 | 
			
		||||
        //e lascio tutto invariato
 | 
			
		||||
        if (codart != _artrig)  
 | 
			
		||||
        {
 | 
			
		||||
          TToken_string& row = ss.row(ss.selected());
 | 
			
		||||
          real prezzo(row.get(ss.cid2index(S_PREZZOST)));
 | 
			
		||||
 | 
			
		||||
          if (_artrig.empty() || noyes_box("Si desidera veramente modificare l'articolo %s",(const char*) _artrig))
 | 
			
		||||
          {
 | 
			
		||||
            _artrig = codart;      
 | 
			
		||||
            //PROPONI PREZZO
 | 
			
		||||
            TToken_string key;
 | 
			
		||||
            key.add('C');
 | 
			
		||||
            key.add(field(F_CODCF).get());
 | 
			
		||||
            const TRectype& cfven = cache().get(LF_CFVEN, key);
 | 
			
		||||
            bool trvlst = false;
 | 
			
		||||
 | 
			
		||||
            if (!cfven.empty())
 | 
			
		||||
            {
 | 
			
		||||
              //se è settata la categoria merceologica, leggo sia il listino che la cat merc, altrimenti solo il listino
 | 
			
		||||
 | 
			
		||||
              TString8 codlis = cfven.get(CFV_CODLIST);
 | 
			
		||||
              TString8 catven;
 | 
			
		||||
              if (!ini_get_bool(CONFIG_DITTA,"ve", "GESLISCV"))
 | 
			
		||||
                catven = "";
 | 
			
		||||
              else
 | 
			
		||||
                catven = cfven.get(CFV_CATVEN);
 | 
			
		||||
 | 
			
		||||
              //cerco il prezzo sul listino
 | 
			
		||||
              key.cut(0);
 | 
			
		||||
              key.add('L');     //tipo
 | 
			
		||||
              key.add(catven);  //catven
 | 
			
		||||
              key.add("");      //tipocf
 | 
			
		||||
              key.add("");      //codcf
 | 
			
		||||
              key.add(codlis);  //codlis
 | 
			
		||||
              key.add('A');     //tiporiga
 | 
			
		||||
              key.add(codart);  //codriga
 | 
			
		||||
              key.add("");      //um
 | 
			
		||||
              key.add("");      //nscagl
 | 
			
		||||
              const TRectype& rcondv = cache().get(LF_RCONDV, key);
 | 
			
		||||
 | 
			
		||||
              if (!rcondv.empty())
 | 
			
		||||
              {
 | 
			
		||||
                prezzo = rcondv.get_real(RCONDV_PREZZO);
 | 
			
		||||
                trvlst = true;
 | 
			
		||||
              }
 | 
			
		||||
            }        
 | 
			
		||||
 | 
			
		||||
            //se non ho trovato un listino, o se non c'è un listino impostato
 | 
			
		||||
            //propongo come prezzo il valore convenzionale
 | 
			
		||||
            if (!trvlst)
 | 
			
		||||
            {
 | 
			
		||||
              key.cut(0);
 | 
			
		||||
              key.add(codart);
 | 
			
		||||
              key.add(1);
 | 
			
		||||
              const TRectype& umart = cache().get(LF_UMART, key);
 | 
			
		||||
              m.set(S_PREZZOST, umart.get_real(UMART_PREZZO));
 | 
			
		||||
              if (umart.get(UMART_PREZZO).full())
 | 
			
		||||
              {
 | 
			
		||||
                prezzo = umart.get_real(UMART_PREZZO);
 | 
			
		||||
                trvlst = true;
 | 
			
		||||
              }
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            if (!trvlst && insert_mode())
 | 
			
		||||
              warning_box(TR("Non è stato trovato nessun prezzo da proporre"));
 | 
			
		||||
          }
 | 
			
		||||
          else
 | 
			
		||||
            m.set(S_CODART, _artrig);
 | 
			
		||||
          
 | 
			
		||||
          TToken_string& row = ss.row(ss.selected());
 | 
			
		||||
          row.add(_artrig, ss.cid2index(S_CODART));
 | 
			
		||||
          row.add(prezzo.string(), ss.cid2index(S_PREZZOST));
 | 
			
		||||
          row.add(_artrig, ss.cid2index(S_CODART));
 | 
			
		||||
          ss.force_update(ss.selected());
 | 
			
		||||
        }
 | 
			
		||||
        //se all'articolo è associata un'unità di misura, la propongo
 | 
			
		||||
 | 
			
		||||
@ -2,7 +2,7 @@
 | 
			
		||||
<report name="lv0600a" orientation="1" lpi="6" command="lv0 -1 lv0600a">
 | 
			
		||||
 <description>Stampa Storico Consegne per Cliente</description>
 | 
			
		||||
 <font face="Courier New" size="10" />
 | 
			
		||||
 <section type="Head" height="3">
 | 
			
		||||
 <section type="Head" height="3" pattern="1">
 | 
			
		||||
  <field x="24.5" y="0.5" type="Testo" align="center" width="55" height="2" pattern="1" text="Stampa Storico Consegne per Cliente">
 | 
			
		||||
   <font face="Courier New" bold="1" size="14" />
 | 
			
		||||
  </field>
 | 
			
		||||
@ -15,8 +15,8 @@
 | 
			
		||||
   <prescript description="H0.0 PRESCRIPT">MESSAGE _PAGENO</prescript>
 | 
			
		||||
  </field>
 | 
			
		||||
 </section>
 | 
			
		||||
 <section type="Head" level="1" />
 | 
			
		||||
 <section repeat="1" type="Head" level="2" height="4.5" page_break="1">
 | 
			
		||||
 <section type="Head" level="1" pattern="1" />
 | 
			
		||||
 <section repeat="1" type="Head" level="2" height="4.5" page_break="1" pattern="1">
 | 
			
		||||
  <groupby>33.CODCF</groupby>
 | 
			
		||||
  <field border="2" type="Linea" width="90" height="0" pattern="1" />
 | 
			
		||||
  <field x="1" y="1" type="Testo" width="8" pattern="1" text="Cliente">
 | 
			
		||||
@ -37,6 +37,9 @@
 | 
			
		||||
  <field x="22" y="2" type="Testo" width="18" pattern="1" text="Descr. Articolo">
 | 
			
		||||
   <font face="Courier New" bold="1" size="10" />
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="14" y="3" type="Testo" width="7" pattern="1" text="N.Doc.">
 | 
			
		||||
   <font face="Courier New" bold="1" size="10" />
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="22" y="3" type="Testo" width="10" pattern="1" text="Data Doc.">
 | 
			
		||||
   <font face="Courier New" bold="1" size="10" />
 | 
			
		||||
  </field>
 | 
			
		||||
@ -54,7 +57,7 @@
 | 
			
		||||
  </field>
 | 
			
		||||
  <field border="2" y="4" type="Linea" width="90" height="0" pattern="1" />
 | 
			
		||||
 </section>
 | 
			
		||||
 <section type="Head" level="3">
 | 
			
		||||
 <section type="Head" level="3" pattern="1">
 | 
			
		||||
  <groupby>CODART</groupby>
 | 
			
		||||
  <field x="1" type="Stringa" width="20" pattern="1">
 | 
			
		||||
   <source>34.CODART</source>
 | 
			
		||||
@ -63,8 +66,11 @@
 | 
			
		||||
   <source>3000@.DESCR</source>
 | 
			
		||||
  </field>
 | 
			
		||||
 </section>
 | 
			
		||||
 <section type="Body" />
 | 
			
		||||
 <section type="Body" level="1" height="1">
 | 
			
		||||
 <section type="Body" pattern="1" />
 | 
			
		||||
 <section type="Body" level="1" height="1" pattern="1">
 | 
			
		||||
  <field x="14" type="Numero" align="right" width="7" pattern="1">
 | 
			
		||||
   <source>34.NDOC</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="22" type="Data" width="10" pattern="1">
 | 
			
		||||
   <source>1000@.DATADOC</source>
 | 
			
		||||
  </field>
 | 
			
		||||
@ -78,17 +84,18 @@
 | 
			
		||||
   <source>34.CODAGG1</source>
 | 
			
		||||
  </field>
 | 
			
		||||
  <field x="73" type="Numero" align="right" width="12" pattern="1">
 | 
			
		||||
   <source>34.PREZZO</source>
 | 
			
		||||
   <source>34.IMPNS</source>
 | 
			
		||||
  </field>
 | 
			
		||||
 </section>
 | 
			
		||||
 <section type="Foot" />
 | 
			
		||||
 <section type="Foot" level="1" />
 | 
			
		||||
 <section type="Foot" level="2" />
 | 
			
		||||
 <section type="Foot" level="3" />
 | 
			
		||||
 <section type="Foot" pattern="1" />
 | 
			
		||||
 <section type="Foot" level="1" pattern="1" />
 | 
			
		||||
 <section type="Foot" level="2" pattern="1" />
 | 
			
		||||
 <section type="Foot" level="3" pattern="1" />
 | 
			
		||||
 <sql>USE 34 
 | 
			
		||||
SELECT ((34.CODNUM="B01")(BETWEEN(33.DATADOC,#F_DATA_FROM,#F_DATA_TO))(BETWEEN(33.CODCF,#F_CODCF_FROM,#F_CODCF_TO))(BETWEEN(CODART,#F_CODARTI_FROM,#F_CODARTI_TO))(BETWEEN(CODAGG1,#F_CODCAUSA_FROM,#F_CODCAUSA_TO)))
 | 
			
		||||
SELECT ((BETWEEN(33.DATADOC,#F_DATA_FROM,#F_DATA_TO))(BETWEEN(33.CODCF,#F_CODCF_FROM,#F_CODCF_TO))(BETWEEN(CODART,#F_CODARTI_FROM,#F_CODARTI_TO))(BETWEEN(CODAGG1,#F_CODCAUSA_FROM,#F_CODCAUSA_TO)))
 | 
			
		||||
BY 33.CODCF 34.CODART 33.DATADOC
 | 
			
		||||
JOIN 33 TO 34 ALIAS 1000 INTO CODNUM==CODNUM ANNO==ANNO PROVV==PROVV NDOC==NDOC 
 | 
			
		||||
JOIN 20 TO 33 ALIAS 2000 INTO TIPOCF==TIPOCF CODCF==CODCF
 | 
			
		||||
JOIN 47 TO 34 ALIAS 3000 INTO CODART==CODART</sql>
 | 
			
		||||
JOIN 47 TO 34 ALIAS 3000 INTO CODART==CODART
 | 
			
		||||
FROM CODNUM=="B05"</sql>
 | 
			
		||||
</report>
 | 
			
		||||
@ -26,6 +26,7 @@ BEGIN
 | 
			
		||||
  OUTPUT F_RAGSOC_DA RAGSOC
 | 
			
		||||
  CHECKTYPE SEARCH
 | 
			
		||||
  FIELD #F_CODCF_FROM
 | 
			
		||||
  MESSAGE COPY,F_CODCF_A|CHECK,F_CODCF_A
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
STRING F_RAGSOC_DA 50 
 | 
			
		||||
@ -110,6 +111,7 @@ BEGIN
 | 
			
		||||
  OUTPUT F_DESART_DA DESCR  
 | 
			
		||||
  CHECKTYPE SEARCH
 | 
			
		||||
  FIELD #F_CODARTI_FROM
 | 
			
		||||
  MESSAGE COPY,F_CODART_A|CHECK,F_CODART_A
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
STRING F_DESART_DA 40 
 | 
			
		||||
@ -172,6 +174,7 @@ BEGIN
 | 
			
		||||
  OUTPUT F_DESCAUS_DA S0
 | 
			
		||||
  CHECKTYPE SEARCH
 | 
			
		||||
  FIELD #F_CODCAUSA_FROM
 | 
			
		||||
  MESSAGE COPY,F_CODCAUS_A|CHECK,F_CODCAUS_A
 | 
			
		||||
END
 | 
			
		||||
 | 
			
		||||
STRING F_DESCAUS_DA 50
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										110
									
								
								lv/lv3800.cpp
									
									
									
									
									
								
							
							
						
						
									
										110
									
								
								lv/lv3800.cpp
									
									
									
									
									
								
							@ -45,7 +45,12 @@ void TInvia_clienti_skema::aggiungi_riga(const long codcf)
 | 
			
		||||
  }
 | 
			
		||||
  
 | 
			
		||||
  new_rec("");
 | 
			
		||||
  set("CODCF",  TVariant(codcf));
 | 
			
		||||
  
 | 
			
		||||
  TString16 cod;
 | 
			
		||||
 | 
			
		||||
  cod.format("%06d", codcf);
 | 
			
		||||
 | 
			
		||||
  set("CODCF",  cod);
 | 
			
		||||
  set("RAGSOC", ragsoc);
 | 
			
		||||
  set("CITTA",  localita);
 | 
			
		||||
}
 | 
			
		||||
@ -53,7 +58,19 @@ void TInvia_clienti_skema::aggiungi_riga(const long codcf)
 | 
			
		||||
TInvia_clienti_skema::TInvia_clienti_skema()
 | 
			
		||||
                    : TAS400_recordset("AS400(122)")
 | 
			
		||||
{
 | 
			
		||||
  create_field("CODCF",     -1,  20,  _longzerofld, true);  //codice cliente
 | 
			
		||||
/*
 | 
			
		||||
 | 
			
		||||
FILE CLIENTI.TXT
 | 
			
		||||
 | 
			
		||||
Campo             Tipo            Posizione
 | 
			
		||||
-------------------------------------------
 | 
			
		||||
Codice Cliente    Alfanumerico    1-20
 | 
			
		||||
Ragione Sociale   Alfanumerico    21-70
 | 
			
		||||
Citta             Alfanumerico    71-120
 | 
			
		||||
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
  create_field("CODCF",     -1,  20,  _alfafld, true);  //codice cliente
 | 
			
		||||
  create_field("RAGSOC",    -1,  50,  _alfafld,     true);  //ragione sociale  
 | 
			
		||||
  create_field("CITTA",     -1,  50,  _alfafld,     true);  //città
 | 
			
		||||
  create_field("ACAPO",     -1,   2,  _alfafld,     true, TVariant("\r\n"));  //caratteri di a capo
 | 
			
		||||
@ -66,6 +83,9 @@ TInvia_clienti_skema::TInvia_clienti_skema()
 | 
			
		||||
//Classe TInvia_articoli_skema
 | 
			
		||||
class TInvia_articoli_skema: public TAS400_recordset
 | 
			
		||||
{
 | 
			
		||||
  TString4 _umkg;  // Unità di misura dei Kg 
 | 
			
		||||
  TString4 _umgr;  // Unità di misura dei gr 
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  void aggiungi_riga(const TString& codart);
 | 
			
		||||
  TInvia_articoli_skema();
 | 
			
		||||
@ -74,36 +94,81 @@ public:
 | 
			
		||||
void TInvia_articoli_skema::aggiungi_riga(const TString& codart)
 | 
			
		||||
{
 | 
			
		||||
  //preparo la cache su anamag
 | 
			
		||||
  const TRectype& anamag = cache().get(LF_ANAMAG, codart);
 | 
			
		||||
  TArticolo & anamag = cached_article(codart);
 | 
			
		||||
 | 
			
		||||
  const TString80 desart = anamag.get(ANAMAG_DESCR);
 | 
			
		||||
  const TString80 tpart = anamag.get(ANAMAG_TIPOPARTE);
 | 
			
		||||
  TString8  codlav; codlav.format("%05d", anamag.get(ANAMAG_CODLAV1));
 | 
			
		||||
  TString16 peso;   peso.format("%010d", anamag.get(ANAMAG_PESO));
 | 
			
		||||
  const TString80 tpart = anamag.get(ANAMAG_CODARTALT);
 | 
			
		||||
  TString8 codlav;
 | 
			
		||||
  codlav.format("%05d", anamag.get_int(ANAMAG_CODLAV1));
 | 
			
		||||
  real peso = anamag.get_real(ANAMAG_PESO);
 | 
			
		||||
  const TString4 ump  = anamag.get(ANAMAG_UMP);
 | 
			
		||||
  const real lunghezza = anamag.get_real(ANAMAG_USER9);
 | 
			
		||||
  const real larghezza = anamag.get_real(ANAMAG_USER10);
 | 
			
		||||
  
 | 
			
		||||
  if (ump.full())
 | 
			
		||||
  {
 | 
			
		||||
    if (ump != _umkg)
 | 
			
		||||
    {
 | 
			
		||||
      peso = anamag.convert_to_um(peso, _umkg, ump, false); // Converto in Kg
 | 
			
		||||
      peso.round(3);                                                    // Arrotondo al grammo 
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  else
 | 
			
		||||
    peso = ZERO;
 | 
			
		||||
  
 | 
			
		||||
  new_rec("");
 | 
			
		||||
  set("CODART",    codart);
 | 
			
		||||
  set("DESART",    desart);
 | 
			
		||||
  set("CODLAV",    codlav);
 | 
			
		||||
  set("TPART",     tpart);
 | 
			
		||||
  set("PESO",      peso);
 | 
			
		||||
  set("LUNGHEZZA", lunghezza);
 | 
			
		||||
  set("LARGHEZZA", larghezza);
 | 
			
		||||
  set("PESO",      peso.stringa(10, 3, '0'));
 | 
			
		||||
  set("LUNGHEZZA", lunghezza.string(4, 0));
 | 
			
		||||
  set("LARGHEZZA", larghezza.string(4, 0));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
TInvia_articoli_skema::TInvia_articoli_skema()
 | 
			
		||||
                     : TAS400_recordset("AS400(127)")
 | 
			
		||||
                     : TAS400_recordset("AS400(115)")
 | 
			
		||||
{
 | 
			
		||||
  /*
 | 
			
		||||
 | 
			
		||||
  FILE ARTICOLI.TXT
 | 
			
		||||
 | 
			
		||||
Campo                 Tipo                  Posizione
 | 
			
		||||
-----------------------------------------------------
 | 
			
		||||
Codice Articolo       Alfanumerico          1-20
 | 
			
		||||
Descrizione Articolo  Alfanumerico          21-70
 | 
			
		||||
Codice Lavaggio       Numerico intero
 | 
			
		||||
                      Allineato a destra.   71-75
 | 
			
		||||
Tipo Articolo         Alfanumerico          76-95
 | 
			
		||||
Peso (Kg)             Numerico
 | 
			
		||||
                      con 3 decimali
 | 
			
		||||
                      Allineato a destra
 | 
			
		||||
                      (formato 999999,999)   96-105
 | 
			
		||||
Lunghezza             Numerico
 | 
			
		||||
                      Allineato a destra
 | 
			
		||||
                      (formato 99999)       106-109
 | 
			
		||||
Larghezza             Numerico
 | 
			
		||||
                      Allineato a destra
 | 
			
		||||
                      (formato 99999)       110-113
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
  create_field("CODART",     -1,  20,  _alfafld,    true);  //codice articolo
 | 
			
		||||
  create_field("DESART",     -1,  50,  _alfafld,    true);  //descrizione
 | 
			
		||||
  create_field("CODALV",     -1,   5,  _intzerofld, true);  //codice lavaggio
 | 
			
		||||
  create_field("CODLAV",     -1,   5,  _alfafld,    true);  //codice lavaggio
 | 
			
		||||
  create_field("TPART",      -1,  20,  _alfafld,    true);  //tipo articolo
 | 
			
		||||
  create_field("PESO",       -1,  20,  _alfafld,    true);  //peso
 | 
			
		||||
  create_field("LUNGHEZZA",  -1,   5,  _realfld,    true);  //lunghezza
 | 
			
		||||
  create_field("LARGHEZZA",  -1,   5,  _realfld,    true);  //larghezza
 | 
			
		||||
  create_field("PESO",       -1,  10,  _alfafld,    true);  //peso
 | 
			
		||||
  create_field("LUNGHEZZA",  -1,   4,  _alfafld,    true);  //lunghezza
 | 
			
		||||
  create_field("LARGHEZZA",  -1,   4,  _alfafld,    true);  //larghezza
 | 
			
		||||
  create_field("ACAPO",     -1,   2,  _alfafld,     true, TVariant("\r\n"));  //caratteri di a capo
 | 
			
		||||
  
 | 
			
		||||
  _umkg = ini_get_string(CONFIG_DITTA, "lv", "UmKg", "KG");
 | 
			
		||||
  
 | 
			
		||||
  TISAM_recordset ums("USE %UMS SELECT (NUM(S7==#KG))&&(STR(R10==0.001))");
 | 
			
		||||
  ums.set_var("#KG", _umkg);
 | 
			
		||||
  if (ums.move_first())
 | 
			
		||||
    _umgr = ums.get("CODTAB").as_string();
 | 
			
		||||
  else
 | 
			
		||||
    _umgr = _umkg == "KG" ? "GR" : "";
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
                                 //////////////////////////////////////
 | 
			
		||||
@ -133,7 +198,11 @@ void TInvia_dotazioni_skema::aggiungi_riga(const long codcf, const long codcont)
 | 
			
		||||
    const TString80 codart = rcont.get(LVRCONDV_CODART).as_string();
 | 
			
		||||
    
 | 
			
		||||
    new_rec("");
 | 
			
		||||
    set("CODCF",  TVariant(codcf));
 | 
			
		||||
    TString16 cod;
 | 
			
		||||
 | 
			
		||||
    cod.format("%06d", codcf);
 | 
			
		||||
 | 
			
		||||
    set("CODCF",  cod);
 | 
			
		||||
    set("CODART", codart);
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
@ -141,6 +210,17 @@ void TInvia_dotazioni_skema::aggiungi_riga(const long codcf, const long codcont)
 | 
			
		||||
TInvia_dotazioni_skema::TInvia_dotazioni_skema()
 | 
			
		||||
                      : TAS400_recordset("AS400(42)")
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
FILE DOTAZIONE.TXT
 | 
			
		||||
 | 
			
		||||
Campo                 Tipo                  Posizione
 | 
			
		||||
-----------------------------------------------------
 | 
			
		||||
Codice Cliente        Alfanumerico          1-20
 | 
			
		||||
Codice Articolo       Alfanumerico          21-40
 | 
			
		||||
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
  create_field("CODCF",     -1,  20,  _alfafld, true);  //codice cliente
 | 
			
		||||
  create_field("CODART",     -1,  20,  _alfafld, true);  //codice cliente
 | 
			
		||||
  create_field("ACAPO",     -1,   2,  _alfafld,     true, TVariant("\r\n"));  //caratteri di a capo
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user