Merge branch 'Archiviazione_Integrazioni' into 'R12.00.1244'
Merge in master dell'archiviazione integrazioni See merge request sirio/CAMPO/campo!7
This commit is contained in:
		
						commit
						6cdf5b5acb
					
				@ -209,6 +209,7 @@
 | 
				
			|||||||
    <ClCompile Include="..\src\f9\f90400.cpp" />
 | 
					    <ClCompile Include="..\src\f9\f90400.cpp" />
 | 
				
			||||||
    <ClCompile Include="..\src\f9\f90200.cpp" />
 | 
					    <ClCompile Include="..\src\f9\f90200.cpp" />
 | 
				
			||||||
    <ClCompile Include="..\src\f9\f90500.cpp" />
 | 
					    <ClCompile Include="..\src\f9\f90500.cpp" />
 | 
				
			||||||
 | 
					    <ClCompile Include="..\src\f9\f90600.cpp" />
 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
  <ItemGroup>
 | 
					  <ItemGroup>
 | 
				
			||||||
    <ClInclude Include="..\src\f9\f90.h" />
 | 
					    <ClInclude Include="..\src\f9\f90.h" />
 | 
				
			||||||
@ -222,6 +223,11 @@
 | 
				
			|||||||
    <ClInclude Include="..\src\f9\f901tab.h" />
 | 
					    <ClInclude Include="..\src\f9\f901tab.h" />
 | 
				
			||||||
    <ClInclude Include="..\src\f9\f90200a.h" />
 | 
					    <ClInclude Include="..\src\f9\f90200a.h" />
 | 
				
			||||||
    <ClInclude Include="..\src\f9\f90500.h" />
 | 
					    <ClInclude Include="..\src\f9\f90500.h" />
 | 
				
			||||||
 | 
					    <ClInclude Include="..\src\f9\f90600.h" />
 | 
				
			||||||
 | 
					    <ClInclude Include="..\src\f9\f90600a.h" />
 | 
				
			||||||
 | 
					    <ClInclude Include="..\src\f9\f90600b.h" />
 | 
				
			||||||
 | 
					    <ClInclude Include="..\src\f9\f90600c.h" />
 | 
				
			||||||
 | 
					    <ClInclude Include="..\src\f9\f90600d.h" />
 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
  <ItemGroup>
 | 
					  <ItemGroup>
 | 
				
			||||||
    <MskCompiler Include="..\src\f9\f90100a.uml" />
 | 
					    <MskCompiler Include="..\src\f9\f90100a.uml" />
 | 
				
			||||||
@ -232,6 +238,9 @@
 | 
				
			|||||||
    <MskCompiler Include="..\src\f9\f90300a.uml" />
 | 
					    <MskCompiler Include="..\src\f9\f90300a.uml" />
 | 
				
			||||||
    <MskCompiler Include="..\src\f9\f90300b.uml" />
 | 
					    <MskCompiler Include="..\src\f9\f90300b.uml" />
 | 
				
			||||||
    <MskCompiler Include="..\src\f9\f90500a.uml" />
 | 
					    <MskCompiler Include="..\src\f9\f90500a.uml" />
 | 
				
			||||||
 | 
					    <MskCompiler Include="..\src\f9\f90600a.uml" />
 | 
				
			||||||
 | 
					    <MskCompiler Include="..\src\f9\f90600b.uml" />
 | 
				
			||||||
 | 
					    <MskCompiler Include="..\src\f9\f90600d.uml" />
 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
  <ItemGroup>
 | 
					  <ItemGroup>
 | 
				
			||||||
    <SqlCompiler Include="..\src\f9\sql\f90100.sql">
 | 
					    <SqlCompiler Include="..\src\f9\sql\f90100.sql">
 | 
				
			||||||
@ -247,14 +256,6 @@
 | 
				
			|||||||
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
 | 
					      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
 | 
				
			||||||
    </SqlCompiler>
 | 
					    </SqlCompiler>
 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
  <ItemGroup>
 | 
					 | 
				
			||||||
    <DirCompiler Include="..\src\f9\f181.dir" />
 | 
					 | 
				
			||||||
    <DirCompiler Include="..\src\f9\f183.dir" />
 | 
					 | 
				
			||||||
  </ItemGroup>
 | 
					 | 
				
			||||||
  <ItemGroup>
 | 
					 | 
				
			||||||
    <TrrCompiler Include="..\src\f9\f181.trr" />
 | 
					 | 
				
			||||||
    <TrrCompiler Include="..\src\f9\f183.trr" />
 | 
					 | 
				
			||||||
  </ItemGroup>
 | 
					 | 
				
			||||||
  <ItemGroup>
 | 
					  <ItemGroup>
 | 
				
			||||||
    <MenCompiler Include="..\src\fp\fpmenu.men" />
 | 
					    <MenCompiler Include="..\src\fp\fpmenu.men" />
 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
 | 
				
			|||||||
@ -19,9 +19,6 @@
 | 
				
			|||||||
    <Filter Include="SQL">
 | 
					    <Filter Include="SQL">
 | 
				
			||||||
      <UniqueIdentifier>{28870b23-e896-4312-855b-049305092f1d}</UniqueIdentifier>
 | 
					      <UniqueIdentifier>{28870b23-e896-4312-855b-049305092f1d}</UniqueIdentifier>
 | 
				
			||||||
    </Filter>
 | 
					    </Filter>
 | 
				
			||||||
    <Filter Include="Recdesc">
 | 
					 | 
				
			||||||
      <UniqueIdentifier>{95c95f84-ca93-4c2f-b1cf-e94922dfa7ef}</UniqueIdentifier>
 | 
					 | 
				
			||||||
    </Filter>
 | 
					 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
  <ItemGroup>
 | 
					  <ItemGroup>
 | 
				
			||||||
    <ClInclude Include="..\src\f9\f90.h">
 | 
					    <ClInclude Include="..\src\f9\f90.h">
 | 
				
			||||||
@ -57,6 +54,21 @@
 | 
				
			|||||||
    <ClInclude Include="..\src\f9\f90500.h">
 | 
					    <ClInclude Include="..\src\f9\f90500.h">
 | 
				
			||||||
      <Filter>Headers</Filter>
 | 
					      <Filter>Headers</Filter>
 | 
				
			||||||
    </ClInclude>
 | 
					    </ClInclude>
 | 
				
			||||||
 | 
					    <ClInclude Include="..\src\f9\f90600.h">
 | 
				
			||||||
 | 
					      <Filter>Headers</Filter>
 | 
				
			||||||
 | 
					    </ClInclude>
 | 
				
			||||||
 | 
					    <ClInclude Include="..\src\f9\f90600a.h">
 | 
				
			||||||
 | 
					      <Filter>Headers</Filter>
 | 
				
			||||||
 | 
					    </ClInclude>
 | 
				
			||||||
 | 
					    <ClInclude Include="..\src\f9\f90600b.h">
 | 
				
			||||||
 | 
					      <Filter>Headers</Filter>
 | 
				
			||||||
 | 
					    </ClInclude>
 | 
				
			||||||
 | 
					    <ClInclude Include="..\src\f9\f90600d.h">
 | 
				
			||||||
 | 
					      <Filter>Headers</Filter>
 | 
				
			||||||
 | 
					    </ClInclude>
 | 
				
			||||||
 | 
					    <ClInclude Include="..\src\f9\f90600c.h">
 | 
				
			||||||
 | 
					      <Filter>Headers</Filter>
 | 
				
			||||||
 | 
					    </ClInclude>
 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
  <ItemGroup>
 | 
					  <ItemGroup>
 | 
				
			||||||
    <ClCompile Include="..\src\f9\f90.cpp">
 | 
					    <ClCompile Include="..\src\f9\f90.cpp">
 | 
				
			||||||
@ -80,6 +92,9 @@
 | 
				
			|||||||
    <ClCompile Include="..\src\f9\f90500.cpp">
 | 
					    <ClCompile Include="..\src\f9\f90500.cpp">
 | 
				
			||||||
      <Filter>Sources</Filter>
 | 
					      <Filter>Sources</Filter>
 | 
				
			||||||
    </ClCompile>
 | 
					    </ClCompile>
 | 
				
			||||||
 | 
					    <ClCompile Include="..\src\f9\f90600.cpp">
 | 
				
			||||||
 | 
					      <Filter>Sources</Filter>
 | 
				
			||||||
 | 
					    </ClCompile>
 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
  <ItemGroup>
 | 
					  <ItemGroup>
 | 
				
			||||||
    <MskCompiler Include="..\src\f9\f90100a.uml">
 | 
					    <MskCompiler Include="..\src\f9\f90100a.uml">
 | 
				
			||||||
@ -106,6 +121,15 @@
 | 
				
			|||||||
    <MskCompiler Include="..\src\f9\f90500a.uml">
 | 
					    <MskCompiler Include="..\src\f9\f90500a.uml">
 | 
				
			||||||
      <Filter>Masks</Filter>
 | 
					      <Filter>Masks</Filter>
 | 
				
			||||||
    </MskCompiler>
 | 
					    </MskCompiler>
 | 
				
			||||||
 | 
					    <MskCompiler Include="..\src\f9\f90600a.uml">
 | 
				
			||||||
 | 
					      <Filter>Masks</Filter>
 | 
				
			||||||
 | 
					    </MskCompiler>
 | 
				
			||||||
 | 
					    <MskCompiler Include="..\src\f9\f90600b.uml">
 | 
				
			||||||
 | 
					      <Filter>Masks</Filter>
 | 
				
			||||||
 | 
					    </MskCompiler>
 | 
				
			||||||
 | 
					    <MskCompiler Include="..\src\f9\f90600d.uml">
 | 
				
			||||||
 | 
					      <Filter>Masks</Filter>
 | 
				
			||||||
 | 
					    </MskCompiler>
 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
  <ItemGroup>
 | 
					  <ItemGroup>
 | 
				
			||||||
    <SqlCompiler Include="..\src\f9\sql\f90100.sql">
 | 
					    <SqlCompiler Include="..\src\f9\sql\f90100.sql">
 | 
				
			||||||
@ -118,22 +142,6 @@
 | 
				
			|||||||
      <Filter>SQL</Filter>
 | 
					      <Filter>SQL</Filter>
 | 
				
			||||||
    </SqlCompiler>
 | 
					    </SqlCompiler>
 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
  <ItemGroup>
 | 
					 | 
				
			||||||
    <DirCompiler Include="..\src\f9\f181.dir">
 | 
					 | 
				
			||||||
      <Filter>Recdesc</Filter>
 | 
					 | 
				
			||||||
    </DirCompiler>
 | 
					 | 
				
			||||||
    <DirCompiler Include="..\src\f9\f183.dir">
 | 
					 | 
				
			||||||
      <Filter>Recdesc</Filter>
 | 
					 | 
				
			||||||
    </DirCompiler>
 | 
					 | 
				
			||||||
  </ItemGroup>
 | 
					 | 
				
			||||||
  <ItemGroup>
 | 
					 | 
				
			||||||
    <TrrCompiler Include="..\src\f9\f181.trr">
 | 
					 | 
				
			||||||
      <Filter>Recdesc</Filter>
 | 
					 | 
				
			||||||
    </TrrCompiler>
 | 
					 | 
				
			||||||
    <TrrCompiler Include="..\src\f9\f183.trr">
 | 
					 | 
				
			||||||
      <Filter>Recdesc</Filter>
 | 
					 | 
				
			||||||
    </TrrCompiler>
 | 
					 | 
				
			||||||
  </ItemGroup>
 | 
					 | 
				
			||||||
  <ItemGroup>
 | 
					  <ItemGroup>
 | 
				
			||||||
    <MenCompiler Include="..\src\fp\fpmenu.men">
 | 
					    <MenCompiler Include="..\src\fp\fpmenu.men">
 | 
				
			||||||
      <Filter>Menu</Filter>
 | 
					      <Filter>Menu</Filter>
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										4
									
								
								cd/test/ba1254.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								cd/test/ba1254.txt
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,4 @@
 | 
				
			|||||||
 | 
					recdesc\f23.trr
 | 
				
			||||||
 | 
					recdesc\f23.dir
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					aggiornata la tabella MOV con un campo nuovo per la gestione dell'archiviazione integrazioni
 | 
				
			||||||
							
								
								
									
										32
									
								
								cd/test/ba1254a.ini
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								cd/test/ba1254a.ini
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,32 @@
 | 
				
			|||||||
 | 
					[Main]
 | 
				
			||||||
 | 
					Demo=0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[ba0]
 | 
				
			||||||
 | 
					File(286) = recdesc\f23.dir|X
 | 
				
			||||||
 | 
					File(287) = recdesc\f23.trr|X
 | 
				
			||||||
 | 
					Patch = 1254
 | 
				
			||||||
 | 
					Versione = 21511200
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[ba99]
 | 
				
			||||||
 | 
					Kill(0) = wxmsw240.dll|x
 | 
				
			||||||
 | 
					Kill(1) = batbsce.txt|x
 | 
				
			||||||
 | 
					Kill(2) = bastfsc.rep|x
 | 
				
			||||||
 | 
					Kill(3) = bastfsc.msk|x
 | 
				
			||||||
 | 
					Kill(4) = bastcms.msk|x
 | 
				
			||||||
 | 
					Kill(5) = bastcms.rep|x
 | 
				
			||||||
 | 
					Kill(6) = bastuue.rep|x
 | 
				
			||||||
 | 
					Kill(7) = bastuue.msk|x
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[ba]
 | 
				
			||||||
 | 
					Data = 29-03-2023
 | 
				
			||||||
 | 
					Descrizione = Base
 | 
				
			||||||
 | 
					Dischi = 1
 | 
				
			||||||
 | 
					Moduli = sy
 | 
				
			||||||
 | 
					OEM = 
 | 
				
			||||||
 | 
					Patch = 1254
 | 
				
			||||||
 | 
					PostProcess = bainst -0 BA
 | 
				
			||||||
 | 
					PreProcess = 
 | 
				
			||||||
 | 
					Prezzo(1) = 
 | 
				
			||||||
 | 
					Prezzo(2) = 
 | 
				
			||||||
 | 
					Versione = 21511200
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										
											BIN
										
									
								
								cd/test/ba1254a1.zip
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								cd/test/ba1254a1.zip
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										7
									
								
								cd/test/f91254.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								cd/test/f91254.txt
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,7 @@
 | 
				
			|||||||
 | 
					f90600a.msk
 | 
				
			||||||
 | 
					f90600b.msk
 | 
				
			||||||
 | 
					f90600d.msk
 | 
				
			||||||
 | 
					f90.exe
 | 
				
			||||||
 | 
					fpmenu.men
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Primo rilascio dell'archiviazione integrazioni
 | 
				
			||||||
							
								
								
									
										23
									
								
								cd/test/f91254a.ini
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								cd/test/f91254a.ini
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,23 @@
 | 
				
			|||||||
 | 
					[Main]
 | 
				
			||||||
 | 
					Demo=0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[f90]
 | 
				
			||||||
 | 
					File(0) = f90.exe|X
 | 
				
			||||||
 | 
					File(10) = fpmenu.men|X
 | 
				
			||||||
 | 
					File(14) = f90600a.msk|X
 | 
				
			||||||
 | 
					File(15) = f90600b.msk|X
 | 
				
			||||||
 | 
					File(16) = f90600d.msk|X
 | 
				
			||||||
 | 
					Patch = 1254
 | 
				
			||||||
 | 
					Versione = 21511200
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[f9]
 | 
				
			||||||
 | 
					Data = 29-03-2023
 | 
				
			||||||
 | 
					Descrizione = Archiviazione Sostitutiva
 | 
				
			||||||
 | 
					Dischi = 1
 | 
				
			||||||
 | 
					Moduli = fp
 | 
				
			||||||
 | 
					OEM = 
 | 
				
			||||||
 | 
					Patch = 1254
 | 
				
			||||||
 | 
					PostProcess = 
 | 
				
			||||||
 | 
					PreProcess = 
 | 
				
			||||||
 | 
					Versione = 21511200
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										
											BIN
										
									
								
								cd/test/f91254a1.zip
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								cd/test/f91254a1.zip
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							@ -1,3 +1,3 @@
 | 
				
			|||||||
23
 | 
					23
 | 
				
			||||||
0
 | 
					0
 | 
				
			||||||
$mov|0|0|634|0|Movimenti di prima nota|||
 | 
					$mov|0|0|714|0|Movimenti di prima nota|||
 | 
				
			||||||
 | 
				
			|||||||
@ -1,5 +1,5 @@
 | 
				
			|||||||
23
 | 
					23
 | 
				
			||||||
67
 | 
					68
 | 
				
			||||||
ANNOES|9|4|0|Codice esercizio
 | 
					ANNOES|9|4|0|Codice esercizio
 | 
				
			||||||
NUMREG|3|7|0|Numero di operazione
 | 
					NUMREG|3|7|0|Numero di operazione
 | 
				
			||||||
DATAREG|5|8|0|Data operazione
 | 
					DATAREG|5|8|0|Data operazione
 | 
				
			||||||
@ -67,6 +67,7 @@ IDDOCSDI|1|20|0|Identificativo documento SDI
 | 
				
			|||||||
DATADOCSDI|5|8|0|Data documento SDI
 | 
					DATADOCSDI|5|8|0|Data documento SDI
 | 
				
			||||||
COLL_GOLEM|11|10|0|Documenti generici
 | 
					COLL_GOLEM|11|10|0|Documenti generici
 | 
				
			||||||
CARTACEI|11|10|0|Documenti cartacei
 | 
					CARTACEI|11|10|0|Documenti cartacei
 | 
				
			||||||
 | 
					KEYPAF|1|80|0|Chiavi del PAFW300 [KEYPRGINVIO;KEYHEADERFATT;KEYBODYFATT]
 | 
				
			||||||
4
 | 
					4
 | 
				
			||||||
NUMREG| 
 | 
					NUMREG| 
 | 
				
			||||||
DATAREG+NUMREG|X
 | 
					DATAREG+NUMREG|X
 | 
				
			||||||
 | 
				
			|||||||
@ -218,6 +218,8 @@ bool TFppro::associa_mov(const long numreg)
 | 
				
			|||||||
	return ok;
 | 
						return ok;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const TString & TFppro::get_tipoprot()
 | 
					const TString & TFppro::get_tipoprot()
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	TString query;
 | 
						TString query;
 | 
				
			||||||
 | 
				
			|||||||
@ -85,6 +85,7 @@ public:
 | 
				
			|||||||
  TFppro(TToken_string& keys) : TFppro() { set_keys(keys); }
 | 
					  TFppro(TToken_string& keys) : TFppro() { set_keys(keys); }
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class TProtocollo : TObject
 | 
					class TProtocollo : TObject
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  TString _tipoprot;
 | 
					  TString _tipoprot;
 | 
				
			||||||
 | 
				
			|||||||
@ -14,6 +14,7 @@ int main(int argc, char** argv)
 | 
				
			|||||||
		case 2: rt = f90300(argc, argv); break; // Gestione documenti cartacei
 | 
							case 2: rt = f90300(argc, argv); break; // Gestione documenti cartacei
 | 
				
			||||||
		case 3: rt = f90400(argc, argv); break; // Test classi
 | 
							case 3: rt = f90400(argc, argv); break; // Test classi
 | 
				
			||||||
		case 4: rt = f90500(argc, argv); break; // Ripristino archiviazioni
 | 
							case 4: rt = f90500(argc, argv); break; // Ripristino archiviazioni
 | 
				
			||||||
 | 
							case 5: rt = f90600(argc, argv); break; // Archiviazione Integrazioni
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  return rt;
 | 
					  return rt;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -6,5 +6,6 @@ int f90200(int argc, char* argv[]);
 | 
				
			|||||||
int f90300(int argc, char* argv[]);
 | 
					int f90300(int argc, char* argv[]);
 | 
				
			||||||
int f90400(int argc, char* argv[]);
 | 
					int f90400(int argc, char* argv[]);
 | 
				
			||||||
int f90500(int argc, char* argv[]);
 | 
					int f90500(int argc, char* argv[]);
 | 
				
			||||||
 | 
					int f90600(int argc, char* argv[]);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif // _F90_H_
 | 
					#endif // _F90_H_
 | 
				
			||||||
 | 
				
			|||||||
@ -1255,8 +1255,6 @@ TApri_estr_msk::TApri_estr_msk() : TAutomask("f90100d.msk"), _provv(true), _tipo
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
////////////////////////////////////////////////////////
 | 
					////////////////////////////////////////////////////////
 | 
				
			||||||
// TF9_app
 | 
					// TF9_app
 | 
				
			||||||
////////////////////////////////////////////////////////
 | 
					////////////////////////////////////////////////////////
 | 
				
			||||||
 | 
				
			|||||||
@ -4,6 +4,7 @@
 | 
				
			|||||||
#define B_SHOWESTR    203
 | 
					#define B_SHOWESTR    203
 | 
				
			||||||
#define B_SHOWESCL    204
 | 
					#define B_SHOWESCL    204
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define F_SEL         101
 | 
					#define F_SEL         101
 | 
				
			||||||
#define F_ARCH_B      102
 | 
					#define F_ARCH_B      102
 | 
				
			||||||
#define F_IDESTR      103
 | 
					#define F_IDESTR      103
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										1187
									
								
								src/f9/f90600.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1187
									
								
								src/f9/f90600.cpp
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										188
									
								
								src/f9/f90600.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										188
									
								
								src/f9/f90600.h
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,188 @@
 | 
				
			|||||||
 | 
					#ifndef _F90600_H_
 | 
				
			||||||
 | 
					#define _F90600_H_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "mask.h"
 | 
				
			||||||
 | 
					#include "execp.h"
 | 
				
			||||||
 | 
					#include "f90600a.h"
 | 
				
			||||||
 | 
					#include "mov.h"
 | 
				
			||||||
 | 
					#include "automask.h"
 | 
				
			||||||
 | 
					#include "applicat.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "f9lib.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class TConfigIntf9_mask : public TAutomask
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					protected:
 | 
				
			||||||
 | 
						bool				on_key(const KEY key);
 | 
				
			||||||
 | 
						bool        on_field_event(TOperable_field& o, TField_event e, long jolly);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public:
 | 
				
			||||||
 | 
						// @cmember Costruttore (crea la maschera leggendo la descrizione dal file .msk)
 | 
				
			||||||
 | 
						TConfigIntf9_mask(const char* filename, int num = 0) : TAutomask(filename, num) {};
 | 
				
			||||||
 | 
						// @cmember Costruttore (crea una maschera vuota con i parametri dati)
 | 
				
			||||||
 | 
						TConfigIntf9_mask(const char* title, int pages, int cols, int rows, int xpos = -1, int ypos = -1) : TAutomask(title, pages, cols, rows, xpos, ypos) {};
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class TApri_pacchetto_msk : public TAutomask
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						TString _idestr;
 | 
				
			||||||
 | 
						TDate   _dataestr;
 | 
				
			||||||
 | 
						bool    _provv;
 | 
				
			||||||
 | 
						char    _tipodoc;
 | 
				
			||||||
 | 
						TString _statoestr;
 | 
				
			||||||
 | 
						TDate   _datadal;
 | 
				
			||||||
 | 
						TDate   _dataal;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						bool on_field_event(TOperable_field& o, TField_event e, long jolly) override;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						//bool inall_handler() const;
 | 
				
			||||||
 | 
						//bool inescludi_handler() const;
 | 
				
			||||||
 | 
						//bool inselect_handler() const;
 | 
				
			||||||
 | 
						//void conferma_esclusi() const;
 | 
				
			||||||
 | 
					public:
 | 
				
			||||||
 | 
						void fill_estr() const;
 | 
				
			||||||
 | 
						void fill_res() const;
 | 
				
			||||||
 | 
						void set_from_estrazione(TToken_string& row_estrazione);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						TApri_pacchetto_msk();
 | 
				
			||||||
 | 
						~TApri_pacchetto_msk() {}
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class TArchInt_mask : public TAutomask
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						TApri_pacchetto_msk   _inclusi_msk;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						bool        on_field_event(TOperable_field& o, TField_event e, long jolly) override;
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						void        load_sheet_causali(const TString& tipo_sel);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void        open_apri_estr_win();
 | 
				
			||||||
 | 
						void        fill() const;
 | 
				
			||||||
 | 
						void				delete_pack(bool all = false);
 | 
				
			||||||
 | 
						void        delete_estr_fld(const TString& idestr);
 | 
				
			||||||
 | 
						void        controllo_errori();
 | 
				
			||||||
 | 
						void				open_win_estr();
 | 
				
			||||||
 | 
						void				open_win_conf();
 | 
				
			||||||
 | 
						bool				save_conf(TMask& config_mask);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						TArchInt_mask();
 | 
				
			||||||
 | 
						~TArchInt_mask() {}
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class Tf9IntEstrai_mask : public TMask
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						TEstrazione * _estrazione;  // Oggetto estrazione in corso di elaborazione
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void enable_fields(bool en = true);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						TDate   get_dataini()       const { return get_date(ES_DATAINI); }
 | 
				
			||||||
 | 
						TDate   get_dataend()       const { return get_date(ES_DATAEND); }
 | 
				
			||||||
 | 
						char    get_tipodoc()       const { return get(ES_TIPODOC)[0]; }
 | 
				
			||||||
 | 
						TipoIVA get_tipoiva()       const { return get_tipodoc() == 'A' ? iva_acquisti : iva_vendite; }
 | 
				
			||||||
 | 
						TString get_descr()         const { return get(ES_DESCR); }
 | 
				
			||||||
 | 
						bool    is_provviso()       const { return get(ES_FLAGPROV)[0] == 'P'; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* Prepara l'estrazione caricando tutti i movimenti dato un periodo (data registrazione),
 | 
				
			||||||
 | 
						 * e avvia la procedura di estrazione.
 | 
				
			||||||
 | 
						 * [See TEstrazione::estrai()].
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
 | 
						int  estrai();
 | 
				
			||||||
 | 
						/** Segna su DRD che l'estrazione e' in errore diag. gestionale. */
 | 
				
			||||||
 | 
						//void segna_in_errore() const;
 | 
				
			||||||
 | 
						bool causale_in_lista(const TString& cod_cau, TToken_string cau_list);
 | 
				
			||||||
 | 
						TToken_string select_causali(const TString& tipo_sdi, const char reg);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						static bool estrai_handler(TMask_field& f, KEY key);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						//static bool enable_handler(TMask_field& f, KEY key);
 | 
				
			||||||
 | 
						//static bool dataini_handler(TMask_field& f, KEY key);
 | 
				
			||||||
 | 
						//static bool dataend_handler(TMask_field& f, KEY key);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public:
 | 
				
			||||||
 | 
						Tf9IntEstrai_mask();
 | 
				
			||||||
 | 
						~Tf9IntEstrai_mask() { safe_delete(_estrazione); };
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class TControlloIntegrazioni_mask : public TAutomask
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						TArray                _controllo_mov; // Usare import_error_list().
 | 
				
			||||||
 | 
						char                  _ordin;
 | 
				
			||||||
 | 
						char                  _verso;
 | 
				
			||||||
 | 
						int                   _selected_mov;
 | 
				
			||||||
 | 
						bool                  _sel_esclusi;
 | 
				
			||||||
 | 
						bool                  _is_escluso;
 | 
				
			||||||
 | 
						TString               _cod_soc;
 | 
				
			||||||
 | 
						TString               _id_estr;
 | 
				
			||||||
 | 
						char                  _tipo_doc_err{};
 | 
				
			||||||
 | 
						TDate                 _datada;
 | 
				
			||||||
 | 
						TDate                 _dataa;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						//Filter variables
 | 
				
			||||||
 | 
						TDate						_flt_da_data;
 | 
				
			||||||
 | 
						TDate						_flt_a_data;
 | 
				
			||||||
 | 
						TString4				_flt_tipodoc;
 | 
				
			||||||
 | 
						TString16				_flt_numdoc;
 | 
				
			||||||
 | 
						real						_flt_tot_doc_da;
 | 
				
			||||||
 | 
						real						_flt_tot_doc_a;
 | 
				
			||||||
 | 
						TString16				_flt_codforn;
 | 
				
			||||||
 | 
						TString				  _flt_ragsoc;
 | 
				
			||||||
 | 
						TString16				_flt_piva;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void associa();
 | 
				
			||||||
 | 
						bool associa_int_ven(const long numreg, TToken_string key_paf);
 | 
				
			||||||
 | 
						//void conferma_esclusi() const;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						TArray& import_error_list();
 | 
				
			||||||
 | 
						void    fill_sheets();
 | 
				
			||||||
 | 
						void    fill_pafw300_sheet(bool filter = false);
 | 
				
			||||||
 | 
						TMask&  get_win_filter();
 | 
				
			||||||
 | 
						void    open_win_filter();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						TToken_string* selected_mov();
 | 
				
			||||||
 | 
						TToken_string* selected_fat() const;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** Gestisce la selezione multipla negli sheet di controllo movimenti */
 | 
				
			||||||
 | 
						//void selfatt(TOperable_field& o, long jolly) const;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						bool on_field_event(TOperable_field& o, TField_event e, long jolly) override;
 | 
				
			||||||
 | 
					public:
 | 
				
			||||||
 | 
						TControlloIntegrazioni_mask(const char* codsoc, const char* id_estr, bool esclusi = false);
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class TArchiviazioneIntegrazioni : public TSkeleton_application
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						TArchInt_mask							* _msk;
 | 
				
			||||||
 | 
						Tf9IntEstrai_mask    * _estr_msk;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						TArray								_esclusi;       // Vettore con i movimenti esclusi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public:
 | 
				
			||||||
 | 
						virtual bool create();
 | 
				
			||||||
 | 
						virtual bool destroy();
 | 
				
			||||||
 | 
						virtual void main_loop();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						TArray & esclusi() { return _esclusi; }
 | 
				
			||||||
 | 
						static const char*  traduci_stato(const TString& cod);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void run_estr_msk() { _estr_msk->run(); }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						TArchiviazioneIntegrazioni() {}
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					inline TArchiviazioneIntegrazioni& f9Int_app()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						static TArchiviazioneIntegrazioni* app = nullptr;
 | 
				
			||||||
 | 
						if (app == nullptr)
 | 
				
			||||||
 | 
							app = (TArchiviazioneIntegrazioni*)&main_app();
 | 
				
			||||||
 | 
						return *app;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#endif //_F90600_H_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										69
									
								
								src/f9/f90600a.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										69
									
								
								src/f9/f90600a.h
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,69 @@
 | 
				
			|||||||
 | 
					// Sheet Pacchetti gia' elaborati
 | 
				
			||||||
 | 
					#define S_ELAB        201
 | 
				
			||||||
 | 
					#define F_TEXT        202
 | 
				
			||||||
 | 
					#define B_SHOWESTR    203
 | 
				
			||||||
 | 
					#define B_SHOWESCL    204
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define F_SEL         101
 | 
				
			||||||
 | 
					#define F_ARCH_B      102
 | 
				
			||||||
 | 
					#define F_IDESTR      103
 | 
				
			||||||
 | 
					#define F_DATAESTR    104
 | 
				
			||||||
 | 
					#define F_PROV_B      105
 | 
				
			||||||
 | 
					#define F_TIPODOC     106
 | 
				
			||||||
 | 
					#define F_DATADAL     107
 | 
				
			||||||
 | 
					#define F_DATAAL      108
 | 
				
			||||||
 | 
					#define F_USER        109
 | 
				
			||||||
 | 
					#define F_STATESTR    110
 | 
				
			||||||
 | 
					#define F_DESCR_E     111
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Campi del vettore _movs per promemoria
 | 
				
			||||||
 | 
					// F_SEL          101
 | 
				
			||||||
 | 
					// F_NUMREG       102
 | 
				
			||||||
 | 
					// F_DATAREG      103
 | 
				
			||||||
 | 
					// F_DATADOC      104
 | 
				
			||||||
 | 
					// F_CODCAUS      105
 | 
				
			||||||
 | 
					// F_MESELIQ      106
 | 
				
			||||||
 | 
					// F_NUMDOC       107
 | 
				
			||||||
 | 
					// F_IMPTOTDOC    108
 | 
				
			||||||
 | 
					// F_FORN         109
 | 
				
			||||||
 | 
					// F_RAGSOC       110
 | 
				
			||||||
 | 
					// F_PROTIVA      111
 | 
				
			||||||
 | 
					// F_DESCR        112
 | 
				
			||||||
 | 
					// F_ESCLUDI      113
 | 
				
			||||||
 | 
					// F_ESCLUSO      114
 | 
				
			||||||
 | 
					// F_DESCRERR     115
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Campi maschera finestra runtime estrazione
 | 
				
			||||||
 | 
					#define ES_DATAINI    501
 | 
				
			||||||
 | 
					#define ES_DATAEND    502
 | 
				
			||||||
 | 
					#define ES_FLAGPROV   503
 | 
				
			||||||
 | 
					#define ES_TIPODOC    504
 | 
				
			||||||
 | 
					#define ES_DATEGROUP  505
 | 
				
			||||||
 | 
					#define ES_FLAGGROUP  506
 | 
				
			||||||
 | 
					#define ES_TIPOGROUP  507
 | 
				
			||||||
 | 
					#define ES_DESCGROUP  508
 | 
				
			||||||
 | 
					#define ES_DESCR      509
 | 
				
			||||||
 | 
					#define ES_DOCSDI      510
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Campi maschera configurazione
 | 
				
			||||||
 | 
					#define CF_CODGROUP   501
 | 
				
			||||||
 | 
					#define CF_CODSOC     502
 | 
				
			||||||
 | 
					#define CF_ADDRGROUP  503
 | 
				
			||||||
 | 
					#define CF_ADDRDOC    504
 | 
				
			||||||
 | 
					#define CF_ADDRDOCLOC 505
 | 
				
			||||||
 | 
					#define CF_ESTRGROUP  506
 | 
				
			||||||
 | 
					#define CF_CARTEXP    507
 | 
				
			||||||
 | 
					#define CF_LVLGROUP   508
 | 
				
			||||||
 | 
					#define CF_LVLOLD			509
 | 
				
			||||||
 | 
					#define CF_LVLNEW			510
 | 
				
			||||||
 | 
					#define CF_TABLEVEL	  511
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Campi maschera descrizione estrazione
 | 
				
			||||||
 | 
					#define DES_TEXT      501
 | 
				
			||||||
 | 
					#define DES_GROUP     502
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Campi maschera esclusi
 | 
				
			||||||
 | 
					#define ESC_BESTR     501
 | 
				
			||||||
 | 
					#define ESC_BEXIT     502
 | 
				
			||||||
 | 
					#define ESC_SSHEE     503
 | 
				
			||||||
							
								
								
									
										155
									
								
								src/f9/f90600a.uml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										155
									
								
								src/f9/f90600a.uml
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,155 @@
 | 
				
			|||||||
 | 
					#include "f90600a.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					TOOLBAR "topbar" 0 0 0 2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_ELABORA 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 2 "Estrazione"
 | 
				
			||||||
 | 
					  PICTURE TOOL_ELABORA
 | 
				
			||||||
 | 
						FLAGS ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_DELREC 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 1 "~Elimina"
 | 
				
			||||||
 | 
						PICTURE TOOL_DELREC
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_CONFIG 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 3 "Configurazione"
 | 
				
			||||||
 | 
					  PICTURE TOOL_CONFIG
 | 
				
			||||||
 | 
						FLAGS ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_FINDREC 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 4 "Controllo Estr."
 | 
				
			||||||
 | 
					  PICTURE TOOL_PERMISSIONS
 | 
				
			||||||
 | 
						FLAGS ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON B_SHOWESTR 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 5 "Apri Estr."
 | 
				
			||||||
 | 
					  PICTURE BMP_EXPORT
 | 
				
			||||||
 | 
						FLAGS ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_RECALC
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 6 "Ricarica"
 | 
				
			||||||
 | 
					  PICTURE TOOL_CONVERT
 | 
				
			||||||
 | 
					  FLAS ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_NULL 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 7 ""
 | 
				
			||||||
 | 
					  PICTURE 0
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON B_SHOWESCL 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 8 "Mostra esclusi"
 | 
				
			||||||
 | 
						PICTURE TOOL_PERMISSIONS
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include <helpbar.h>
 | 
				
			||||||
 | 
					ENDPAGE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					PAGE "Monitor Estrazioni" 0 2 0 0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					TEXT F_TEXT
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 0 0 "@BElenco Pacchetti"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					SPREADSHEET S_ELAB -1 -1
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 0 1 "Elenco pacchetti elaborati"
 | 
				
			||||||
 | 
					  ITEM ""
 | 
				
			||||||
 | 
						ITEM "Archiviato@8"
 | 
				
			||||||
 | 
						ITEM "ID Estrazione@14"
 | 
				
			||||||
 | 
						ITEM "Data@8"
 | 
				
			||||||
 | 
						ITEM "Provv.@4"
 | 
				
			||||||
 | 
						ITEM "Tipo@8"
 | 
				
			||||||
 | 
						ITEM "dal@8"
 | 
				
			||||||
 | 
						ITEM "al@8"
 | 
				
			||||||
 | 
						ITEM "Utente@8"
 | 
				
			||||||
 | 
						ITEM "Stato estrazione@22"
 | 
				
			||||||
 | 
						ITEM "Descrizione@50"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					ENDPAGE
 | 
				
			||||||
 | 
					ENDMASK
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					PAGE "Pacchetti" -1 -1 78 13
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BOOLEAN F_SEL
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 1 ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BOOLEAN F_ARCH_B
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_IDESTR 18
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BOOLEAN F_PROV_B
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_DESCR_E 50
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_TIPODOC 13
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DATE F_DATADAL
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DATE F_DATAAL
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_USER 20
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_DATAESTR 19
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_STATESTR 38
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ENDPAGE
 | 
				
			||||||
 | 
					ENDMASK
 | 
				
			||||||
							
								
								
									
										61
									
								
								src/f9/f90600b.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										61
									
								
								src/f9/f90600b.h
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,61 @@
 | 
				
			|||||||
 | 
					// Maschera controllo errori in comune con monitor e esclusi
 | 
				
			||||||
 | 
					// Sheet Pacchetti gia' elaborati
 | 
				
			||||||
 | 
					#define B_ASSOC       202
 | 
				
			||||||
 | 
					#define B_SELESCL     203
 | 
				
			||||||
 | 
					#define B_ESCL        204
 | 
				
			||||||
 | 
					#define B_ALLESCL     205
 | 
				
			||||||
 | 
					#define B_FILTER_CONF	208
 | 
				
			||||||
 | 
					#define B_FILTER_ON		209
 | 
				
			||||||
 | 
					#define B_FILTER_OFF	210
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Sheet movimenti da controllare
 | 
				
			||||||
 | 
					#define S_CONTROLLO   206
 | 
				
			||||||
 | 
					#define S_FPPRO       207
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Cambi maschera ordinamento sheet FPPRO
 | 
				
			||||||
 | 
					#define F_ORDER       301
 | 
				
			||||||
 | 
					#define F_VERSO       302
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//Filtro FPPRO
 | 
				
			||||||
 | 
					#define F_FLTDATAGRP  310
 | 
				
			||||||
 | 
					#define F_FLTDATADA   311
 | 
				
			||||||
 | 
					#define F_FLTDATAA    312
 | 
				
			||||||
 | 
					#define F_FLTDOCGRP   313
 | 
				
			||||||
 | 
					#define F_FLTTIPODOC  314
 | 
				
			||||||
 | 
					#define F_FLTNUMDOC   315
 | 
				
			||||||
 | 
					#define F_FLTTOTDOCDA 316
 | 
				
			||||||
 | 
					#define F_FLTTOTDOCA  317
 | 
				
			||||||
 | 
					#define F_FLTFORNGRP  318
 | 
				
			||||||
 | 
					#define F_FLTCODFORN  319
 | 
				
			||||||
 | 
					#define F_FLTRAGSOC   320
 | 
				
			||||||
 | 
					#define F_FLTPIVA     321
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define F_CSEL        101
 | 
				
			||||||
 | 
					#define F_CNUMREG     102
 | 
				
			||||||
 | 
					#define F_CDATAREG    103
 | 
				
			||||||
 | 
					#define F_CDATADOC    104
 | 
				
			||||||
 | 
					#define F_CCODCAUS    105
 | 
				
			||||||
 | 
					#define F_CMESELIQ    106
 | 
				
			||||||
 | 
					#define F_CNUMDOC     107
 | 
				
			||||||
 | 
					#define F_CIMPTOTDOC  108
 | 
				
			||||||
 | 
					#define F_CFORN       109
 | 
				
			||||||
 | 
					#define F_CRAGSOC     110
 | 
				
			||||||
 | 
					#define F_CPROTIVA    111
 | 
				
			||||||
 | 
					#define F_CDESCR      112
 | 
				
			||||||
 | 
					#define F_CESCLUDI    113
 | 
				
			||||||
 | 
					#define F_CESCLUSO    114
 | 
				
			||||||
 | 
					#define F_CDESCRERR   115
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Sheet fatture FPPRO da associare
 | 
				
			||||||
 | 
					#define F_FSEL        101
 | 
				
			||||||
 | 
					#define F_FTIPODOC    102
 | 
				
			||||||
 | 
					#define F_FDATA       103
 | 
				
			||||||
 | 
					#define F_FNUMDOC     104
 | 
				
			||||||
 | 
					#define F_FIMPTOTDOC  105
 | 
				
			||||||
 | 
					#define F_FFORNITORE  106
 | 
				
			||||||
 | 
					#define F_FRAGSOC     107
 | 
				
			||||||
 | 
					#define F_FSTATOPIVA  108
 | 
				
			||||||
 | 
					#define F_FPIVA       109
 | 
				
			||||||
 | 
					#define F_FPROKEYS    110
 | 
				
			||||||
							
								
								
									
										316
									
								
								src/f9/f90600b.uml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										316
									
								
								src/f9/f90600b.uml
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,316 @@
 | 
				
			|||||||
 | 
					#include "f90600b.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					TOOLBAR "topbar" 0 0 0 2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON B_ASSOC 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 6 "Associa mov."
 | 
				
			||||||
 | 
					  PICTURE TOOL_SAVEREC
 | 
				
			||||||
 | 
						FLAGS ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_NULL 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT -1 1 ""
 | 
				
			||||||
 | 
					  PICTURE 0
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON B_SELESCL 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 8 "Sel. esclusi"
 | 
				
			||||||
 | 
					  PICTURE TOOL_MULTISEL
 | 
				
			||||||
 | 
						FLAGS ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON B_ESCL 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 7 "Conf. esclusi"
 | 
				
			||||||
 | 
					  PICTURE TOOL_WARNING
 | 
				
			||||||
 | 
						FLAGS ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON B_ALLESCL 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 7 "Sel. tutti"
 | 
				
			||||||
 | 
					  PICTURE TOOL_MULTISEL
 | 
				
			||||||
 | 
						FLAGS ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_NULL 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT -1 1 ""
 | 
				
			||||||
 | 
					  PICTURE 0
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON B_FILTER_CONF 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 5 "Impostaz. Filtro"
 | 
				
			||||||
 | 
					  PICTURE TOOL_ELABORA
 | 
				
			||||||
 | 
						FLAGS ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON B_FILTER_ON 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 5 "Filtro ON"
 | 
				
			||||||
 | 
					  PICTURE TOOL_CHECK
 | 
				
			||||||
 | 
						FLAGS ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON B_FILTER_OFF 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 5 "Filtro OFF"
 | 
				
			||||||
 | 
					  PICTURE TOOL_CHECK
 | 
				
			||||||
 | 
						FLAGS ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include <helpbar.h>
 | 
				
			||||||
 | 
					ENDPAGE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					PAGE "Elenco di controllo" -1 -1 78 13
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					TEXT DLG_NULL
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 0 0 "Movimenti da controllare"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					SPREADSHEET S_CONTROLLO -1 10
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 0 1 "Movimenti da controllare"
 | 
				
			||||||
 | 
						ITEM " "
 | 
				
			||||||
 | 
						ITEM "Numero\nReg.@8"
 | 
				
			||||||
 | 
						ITEM "Data\nReg.@8"
 | 
				
			||||||
 | 
						ITEM "Data\nDoc.@8"
 | 
				
			||||||
 | 
						ITEM "Codice\nCaus.@8"
 | 
				
			||||||
 | 
						ITEM "Mese\nliquidazione@8"
 | 
				
			||||||
 | 
						ITEM "Numero\nDocumento@8"
 | 
				
			||||||
 | 
						ITEM "Totale\nDocumento@8"
 | 
				
			||||||
 | 
						ITEM "Cliente/\nFornitore@8"
 | 
				
			||||||
 | 
						ITEM "Ragione\nSociale@8"
 | 
				
			||||||
 | 
						ITEM "Cod. regis./\nprot.IVA@8"	
 | 
				
			||||||
 | 
						ITEM "Descrizione@8"
 | 
				
			||||||
 | 
						ITEM "ESCLUDI@5"
 | 
				
			||||||
 | 
						ITEM "ESCLUSO@6"
 | 
				
			||||||
 | 
						ITEM "Descrizione\nErrore"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					TEXT DLG_NULL
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 0 12 "Fatture el. in ingresso"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					SPREADSHEET S_FPPRO -1 -1
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 0 13 "Movimenti da controllare"
 | 
				
			||||||
 | 
						ITEM " "
 | 
				
			||||||
 | 
						ITEM "Tipo Doc."
 | 
				
			||||||
 | 
						ITEM "Data@8"
 | 
				
			||||||
 | 
						ITEM "Num. Doc.@12"
 | 
				
			||||||
 | 
						ITEM "Tot. Doc.@9"
 | 
				
			||||||
 | 
						ITEM "Cliente@20"
 | 
				
			||||||
 | 
						ITEM "Fornitore@20"
 | 
				
			||||||
 | 
						ITEM "Stato P.IVA"
 | 
				
			||||||
 | 
						ITEM "P.IVA@8"
 | 
				
			||||||
 | 
						ITEM "Chiavi PAF@60"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ENDPAGE	
 | 
				
			||||||
 | 
					ENDMASK
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					PAGE "Controllo" -1 -1 78 13
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BOOLEAN F_CSEL
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NUMERIC F_CNUMREG 7
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DATA F_CDATAREG
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DATA F_CDATADOC
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_CCODCAUS 3
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NUMERIC F_CMESELIQ 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_CNUMDOC 50
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NUMERIC F_CIMPTOTDOC 15 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NUMERIC F_CFORN 6
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_CRAGSOC 80
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_CPROTIVA 10
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_CDESCR 50
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BOOLEAN F_CESCLUDI
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 1 "Escludi"
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_CESCLUSO 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 "ESCLUSO"
 | 
				
			||||||
 | 
						FLAG "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_CDESCRERR 110
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 "DESCRIZIONE ERRORE"
 | 
				
			||||||
 | 
						FLAG "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					ENDPAGE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					TOOLBAR "topbar" 0 0 0 2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_USER 2 2 
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 1 "Collega"
 | 
				
			||||||
 | 
					  PICTURE TOOL_LINK
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_NULL 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT -1 0 ""
 | 
				
			||||||
 | 
					  PICTURE 0
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_QUIT 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 3 1 "Fine"
 | 
				
			||||||
 | 
					  MESSAGE EXIT,K_QUIT
 | 
				
			||||||
 | 
					  PICTURE TOOL_QUIT
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					ENPAGE
 | 
				
			||||||
 | 
					ENDMASK
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					PAGE "Passive" -1 -1 78 13
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BOOLEAN F_FSEL
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_FTIPODOC 4
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 " "
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DATA F_FDATA
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 " "
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_FNUMDOC 20
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 " "
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NUMERIC F_FIMPTOTDOC 15 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 " "
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_FFORNITORE 80
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 " "
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_FRAGSOC 80
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 " "
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_FSTATOPIVA 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 " "
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_FPIVA 15
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 " "
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_FPROKEYS 80
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 " "
 | 
				
			||||||
 | 
						FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ENDPAGE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					TOOLBAR "topbar" 0 0 0 2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_NULL 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT -1 0 ""
 | 
				
			||||||
 | 
					  PICTURE 0
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_QUIT 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 3 1 "Fine"
 | 
				
			||||||
 | 
					  MESSAGE EXIT,K_QUIT
 | 
				
			||||||
 | 
					  PICTURE TOOL_QUIT
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ENPAGE
 | 
				
			||||||
 | 
					ENDMASK
 | 
				
			||||||
							
								
								
									
										17
									
								
								src/f9/f90600c.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								src/f9/f90600c.h
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,17 @@
 | 
				
			|||||||
 | 
					#define S_ESCL				201
 | 
				
			||||||
 | 
					#define F_ETEXT				202
 | 
				
			||||||
 | 
					#define B_ESTRAI      203
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Elenco movimenti esclusi
 | 
				
			||||||
 | 
					#define FE_SEL				  101
 | 
				
			||||||
 | 
					#define FE_NUMREG			102
 | 
				
			||||||
 | 
					#define FE_DATAREG		  103
 | 
				
			||||||
 | 
					#define FE_DATADOC		  104
 | 
				
			||||||
 | 
					#define FE_CODCAUS		  105
 | 
				
			||||||
 | 
					#define FE_MESELIQ		  106
 | 
				
			||||||
 | 
					#define FE_NUMDOC			107
 | 
				
			||||||
 | 
					#define FE_IMPTOTDOC   108
 | 
				
			||||||
 | 
					#define FE_FORN        109
 | 
				
			||||||
 | 
					#define FE_RAGSOC      110
 | 
				
			||||||
 | 
					#define FE_PROTIVA		  111
 | 
				
			||||||
 | 
					#define FE_DESCR			  112
 | 
				
			||||||
							
								
								
									
										48
									
								
								src/f9/f90600d.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								src/f9/f90600d.h
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,48 @@
 | 
				
			|||||||
 | 
					#define S_INCL        201
 | 
				
			||||||
 | 
					#define F_ETEXT       202
 | 
				
			||||||
 | 
					#define B_ISELESCL    203
 | 
				
			||||||
 | 
					#define B_IESCL       204
 | 
				
			||||||
 | 
					#define B_IALLESCL    205
 | 
				
			||||||
 | 
					#define F_IIDESTR     206
 | 
				
			||||||
 | 
					#define F_IDATA       207
 | 
				
			||||||
 | 
					#define F_IPROV       208
 | 
				
			||||||
 | 
					#define F_ITIPOD      209
 | 
				
			||||||
 | 
					#define F_ISTATOESTR  210
 | 
				
			||||||
 | 
					#define F_IDAL        211
 | 
				
			||||||
 | 
					#define F_IAL         212
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define S_RES         301
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Elenco movimenti inclusi
 | 
				
			||||||
 | 
					#define FI_SEL         101
 | 
				
			||||||
 | 
					#define FI_NUMREG      102
 | 
				
			||||||
 | 
					#define FI_DATAREG     103
 | 
				
			||||||
 | 
					#define FI_DATADOC     104
 | 
				
			||||||
 | 
					#define FI_CODCAUS     105
 | 
				
			||||||
 | 
					#define FI_TIPOMOV     106
 | 
				
			||||||
 | 
					#define FI_MESELIQ     107
 | 
				
			||||||
 | 
					#define FI_NUMDOC      108
 | 
				
			||||||
 | 
					#define FI_IMPTOTDOC   109
 | 
				
			||||||
 | 
					#define FI_FORN        110
 | 
				
			||||||
 | 
					#define FI_RAGSOC      111
 | 
				
			||||||
 | 
					#define FI_PROTIVA     112
 | 
				
			||||||
 | 
					#define FI_DESCR       113
 | 
				
			||||||
 | 
					#define FI_IESCLUDI    114
 | 
				
			||||||
 | 
					#define FI_IESCLUSO    115
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Elenco risultato movimenti (S_RES)
 | 
				
			||||||
 | 
					#define F_RSEL        101
 | 
				
			||||||
 | 
					#define F_RNUMREG     102
 | 
				
			||||||
 | 
					#define F_RDATAREG    103
 | 
				
			||||||
 | 
					#define F_RDATADOC    104
 | 
				
			||||||
 | 
					#define F_RTIPODOCSDI	105
 | 
				
			||||||
 | 
					#define F_RCODCAUS    106
 | 
				
			||||||
 | 
					#define F_RTIPOMOV    107
 | 
				
			||||||
 | 
					#define F_RMESELIQ    108
 | 
				
			||||||
 | 
					#define F_RNUMDOC     109
 | 
				
			||||||
 | 
					#define F_RIMPTOTDOC  110
 | 
				
			||||||
 | 
					#define F_RFORN       111
 | 
				
			||||||
 | 
					#define F_RRAGSOC     112
 | 
				
			||||||
 | 
					#define F_RPROTIVA    113
 | 
				
			||||||
 | 
					#define F_RDESCR      114
 | 
				
			||||||
 | 
					#define F_RDESCRERR   115
 | 
				
			||||||
							
								
								
									
										399
									
								
								src/f9/f90600d.uml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										399
									
								
								src/f9/f90600d.uml
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,399 @@
 | 
				
			|||||||
 | 
					#include "f90600d.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					TOOLBAR "topbar" 0 0 0 2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_INFO 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 1 "Info"
 | 
				
			||||||
 | 
					  MESSAGE EXIT,K_F2
 | 
				
			||||||
 | 
					  PICTURE TOOL_INFO
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_HELP 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 2 1 "Help"
 | 
				
			||||||
 | 
					  MESSAGE EXIT,K_F1
 | 
				
			||||||
 | 
					  PICTURE TOOL_HELP
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_NULL 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT -1 0 ""
 | 
				
			||||||
 | 
					  PICTURE 0
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON B_ISELESCL 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 8 "Sel. esclusi"
 | 
				
			||||||
 | 
					  PICTURE TOOL_MULTISEL
 | 
				
			||||||
 | 
						FLAGS ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON B_IESCL 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 7 "Conf. esclusi"
 | 
				
			||||||
 | 
					  PICTURE TOOL_WARNING
 | 
				
			||||||
 | 
						FLAGS ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON B_IALLESCL 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 7 "Sel. tutti"
 | 
				
			||||||
 | 
					  PICTURE TOOL_MULTISEL
 | 
				
			||||||
 | 
						FLAGS ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_NULL 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT -1 0 ""
 | 
				
			||||||
 | 
					  PICTURE 0
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_QUIT 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 3 1 "Fine"
 | 
				
			||||||
 | 
					  MESSAGE EXIT,K_QUIT
 | 
				
			||||||
 | 
					  PICTURE TOOL_QUIT
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					ENDPAGE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					PAGE "Movimenti" 0 2 0 0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_IIDESTR 18
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 0 0 "Id estrazione"
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DATA F_IDATA
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 45 0 "Data estrazione "
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BOOLEAN F_IPROV
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 0 1 "Provvisorio"
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_ITIPOD 9
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 15 1 "Tipo Documenti"
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_ISTATOESTR 38
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 45 1 "Stato estrazione"
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DATA F_IDAL
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 0 2 "Dal"
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DATA F_IAL
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 15 2 "Al"
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					TEXT F_ETEXT
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 0 3 "@BMovimenti estratti nel pacchetto:"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					SPREADSHEET S_INCL -1 -1
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 0 4 "Movimenti estratti"
 | 
				
			||||||
 | 
					  ITEM " "
 | 
				
			||||||
 | 
					  ITEM "Numero\nReg.@8"
 | 
				
			||||||
 | 
					  ITEM "Data\nReg.@8"
 | 
				
			||||||
 | 
					  ITEM "Data\nDoc.@8"
 | 
				
			||||||
 | 
					  ITEM "Codice\nCaus.@8"
 | 
				
			||||||
 | 
					  ITEM "Tipo Doc.@5"
 | 
				
			||||||
 | 
					  ITEM "Mese\nliquidazione@8"
 | 
				
			||||||
 | 
					  ITEM "Numero\nDocumento@8"
 | 
				
			||||||
 | 
					  ITEM "Totale\nDocumento@8"
 | 
				
			||||||
 | 
					  ITEM "Cliente/\nFornitore@8"
 | 
				
			||||||
 | 
					  ITEM "Ragione\nSociale@8"
 | 
				
			||||||
 | 
					  ITEM "Cod. regis./\nprot.IVA@8"
 | 
				
			||||||
 | 
					  ITEM "Descrizione@8"
 | 
				
			||||||
 | 
					  ITEM "ESCLUDI@5"
 | 
				
			||||||
 | 
						ITEM "ESCLUSO@6"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ENDPAGE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					PAGE "Risultato estrazione" 0 0 0 0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					SPREADSHEET S_RES -1 -1
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 0 0 "Movimenti"
 | 
				
			||||||
 | 
					  ITEM "Estratto"
 | 
				
			||||||
 | 
					  ITEM "Numero\nReg.@8"
 | 
				
			||||||
 | 
					  ITEM "Data\nReg.@8"
 | 
				
			||||||
 | 
					  ITEM "Data\nDoc.@8"
 | 
				
			||||||
 | 
					  ITEM "Tipo Doc\nSDI@9"
 | 
				
			||||||
 | 
					  ITEM "Codice\nCaus.@8"
 | 
				
			||||||
 | 
					  ITEM "Tipo Mov.@5"
 | 
				
			||||||
 | 
					  ITEM "Mese\nliquidazione@8"
 | 
				
			||||||
 | 
					  ITEM "Numero\nDocumento@8"
 | 
				
			||||||
 | 
					  ITEM "Totale\nDocumento@8"
 | 
				
			||||||
 | 
					  ITEM "Cliente/\nFornitore@8"
 | 
				
			||||||
 | 
					  ITEM "Ragione\nSociale@8"
 | 
				
			||||||
 | 
					  ITEM "Cod. regis./\nprot.IVA@8"
 | 
				
			||||||
 | 
					  ITEM "Descrizione@8"
 | 
				
			||||||
 | 
					  ITEM "Descrizione Estrazione@30"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ENDPAGE
 | 
				
			||||||
 | 
					ENDMASK
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					PAGE "Mov Inclusi" -1 -1 78 13
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BOOLEAN FI_SEL
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 1 ""
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NUMERIC FI_NUMREG 7
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 2 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DATA FI_DATAREG
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 3 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DATA FI_DATADOC
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 4 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING FI_CODCAUS 3
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 5 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING FI_TIPOMOV 3
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 6 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NUMERIC FI_MESELIQ 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 7 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING FI_NUMDOC 50
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 8 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NUMERIC FI_IMPTOTDOC 15 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 9 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NUMERIC FI_FORN 6
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 10 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING FI_RAGSOC 80
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 11 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING FI_PROTIVA 10
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 12 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING FI_DESCR 50
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 13 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					LIST FI_IESCLUDI 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 1 "Escludi"
 | 
				
			||||||
 | 
					  ITEM "|"
 | 
				
			||||||
 | 
					  ITEM "S|SI"
 | 
				
			||||||
 | 
					  ITEM "N|NO"
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BOOLEAN FI_IESCLUSO
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
						PROMPT 1 1 "ESCLUSO"
 | 
				
			||||||
 | 
						FLAG "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ENDPAGE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					TOOLBAR "topbar" 0 0 0 2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_USER 2 2 
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 1 "Collega"
 | 
				
			||||||
 | 
					  PICTURE TOOL_LINK
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_NULL 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT -1 0 ""
 | 
				
			||||||
 | 
					  PICTURE 0
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_QUIT 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 3 1 "Fine"
 | 
				
			||||||
 | 
					  MESSAGE EXIT,K_QUIT
 | 
				
			||||||
 | 
					  PICTURE TOOL_QUIT
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ENPAGE
 | 
				
			||||||
 | 
					ENDMASK
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					PAGE "Risultato estratti" -1 -1 78 13
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BOOLEAN F_RSEL
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 1 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NUMERIC F_RNUMREG 7
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 2 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DATA F_RDATAREG
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 3 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DATA F_RDATADOC
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 4 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_RTIPODOCSDI 4
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 5 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_RCODCAUS 3
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 6 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_RTIPOMOV 3
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 7 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NUMERIC F_RMESELIQ 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 8 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_RNUMDOC 50
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 9 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NUMERIC F_RIMPTOTDOC 15 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 10 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NUMERIC F_RFORN 6
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 11 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_RRAGSOC 80
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 12 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_RPROTIVA 10
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 13 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_RDESCR 50
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 14 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_RDESCRERR 92
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 15 ""
 | 
				
			||||||
 | 
					  FLAGS "D"
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ENDPAGE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					TOOLBAR "topbar" 0 0 0 2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_USER 2 2 
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 1 "Collega"
 | 
				
			||||||
 | 
					  PICTURE TOOL_LINK
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_NULL 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT -1 0 ""
 | 
				
			||||||
 | 
					  PICTURE 0
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUTTON DLG_QUIT 2 2
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 3 1 "Fine"
 | 
				
			||||||
 | 
					  MESSAGE EXIT,K_QUIT
 | 
				
			||||||
 | 
					  PICTURE TOOL_QUIT
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ENPAGE
 | 
				
			||||||
 | 
					ENDMASK
 | 
				
			||||||
@ -66,6 +66,9 @@ struct statistics
 | 
				
			|||||||
  size_t fv_err;
 | 
					  size_t fv_err;
 | 
				
			||||||
  size_t fv_estr;
 | 
					  size_t fv_estr;
 | 
				
			||||||
  size_t fv_nocatdoc;
 | 
					  size_t fv_nocatdoc;
 | 
				
			||||||
 | 
						size_t int_match;
 | 
				
			||||||
 | 
						size_t int_nomatch;
 | 
				
			||||||
 | 
						size_t int_err;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
extern statistics _stats;
 | 
					extern statistics _stats;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -115,6 +118,15 @@ enum state_fppro
 | 
				
			|||||||
  err_read_db   = 999   // Errore lettura da fppro
 | 
					  err_read_db   = 999   // Errore lettura da fppro
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					enum state_estr_int
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						int_with_err = -1,   // Movimento associato male con FPPRO
 | 
				
			||||||
 | 
						guessed_int = 100,
 | 
				
			||||||
 | 
						no_guessed_int = 0,
 | 
				
			||||||
 | 
						err_read_db_int = 999,   // Errore lettura da fppro
 | 
				
			||||||
 | 
						wrong_keys = -2
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class TF9_config
 | 
					class TF9_config
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  // todo: controllare che siano sqlsafe
 | 
					  // todo: controllare che siano sqlsafe
 | 
				
			||||||
@ -308,7 +320,8 @@ enum err_mov
 | 
				
			|||||||
	mov_no_filecart,    // Il documento cartaceo non ha associato un file, o questo non e' stato trovato.
 | 
						mov_no_filecart,    // Il documento cartaceo non ha associato un file, o questo non e' stato trovato.
 | 
				
			||||||
	mov_annesso_nexist, // Un annesso obbligatorio e' mancante.
 | 
						mov_annesso_nexist, // Un annesso obbligatorio e' mancante.
 | 
				
			||||||
	mov_nocat_butok,    // Non è stata trovata nessuna categoria documentale per il seguente documento. Verra usato il TIPODOCSDI presente nel FPPRO 
 | 
						mov_nocat_butok,    // Non è stata trovata nessuna categoria documentale per il seguente documento. Verra usato il TIPODOCSDI presente nel FPPRO 
 | 
				
			||||||
	mov_no_sdi					// Nessuno tipo doc SDI abbinato 
 | 
						mov_no_sdi,					// Nessuno tipo doc SDI abbinato 
 | 
				
			||||||
 | 
						mov_nomatch_keys	  // La chiave del documento salavta in MOV non si matcha con nessun documento elettronico
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class TMovimento_estr : public TObject // aggiungere metodi per TArray
 | 
					class TMovimento_estr : public TObject // aggiungere metodi per TArray
 | 
				
			||||||
@ -326,6 +339,7 @@ class TMovimento_estr : public TObject // aggiungere metodi per TArray
 | 
				
			|||||||
	TString				_reg_protiva;
 | 
						TString				_reg_protiva;
 | 
				
			||||||
	TString				_descr;
 | 
						TString				_descr;
 | 
				
			||||||
	state_fppro		_state;
 | 
						state_fppro		_state;
 | 
				
			||||||
 | 
						state_estr_int _state_int;
 | 
				
			||||||
	TString				_descr_err;          // Messaggio di errore visibile dal controllo estrazione.
 | 
						TString				_descr_err;          // Messaggio di errore visibile dal controllo estrazione.
 | 
				
			||||||
	bool					_estratto;
 | 
						bool					_estratto;
 | 
				
			||||||
	err_mov				_descr_estr; // Messaggio di informazioni visibile dal 'Apri Estr.'
 | 
						err_mov				_descr_estr; // Messaggio di informazioni visibile dal 'Apri Estr.'
 | 
				
			||||||
@ -371,6 +385,7 @@ public:
 | 
				
			|||||||
	void set_err(const char * descr = "", err_mov descr_estr = mov_no_error);
 | 
						void set_err(const char * descr = "", err_mov descr_estr = mov_no_error);
 | 
				
			||||||
	void reset_err() { set_err(); }
 | 
						void reset_err() { set_err(); }
 | 
				
			||||||
	void set_state(state_fppro state) { _state = state; }
 | 
						void set_state(state_fppro state) { _state = state; }
 | 
				
			||||||
 | 
						void set_state_int(state_estr_int state) { _state_int = state; }
 | 
				
			||||||
	void set_descr_estr(err_mov descr_estr) { _descr_estr = descr_estr; }
 | 
						void set_descr_estr(err_mov descr_estr) { _descr_estr = descr_estr; }
 | 
				
			||||||
	void set_numdoc(const char * numdoc) { _numdoc = numdoc; }
 | 
						void set_numdoc(const char * numdoc) { _numdoc = numdoc; }
 | 
				
			||||||
	void set_estratto(bool estratto) { _estratto = estratto; }
 | 
						void set_estratto(bool estratto) { _estratto = estratto; }
 | 
				
			||||||
@ -424,12 +439,16 @@ class TEstrazione : public TObject
 | 
				
			|||||||
   * \return \a not_fa se il movimento passato non è una fattura.
 | 
					   * \return \a not_fa se il movimento passato non è una fattura.
 | 
				
			||||||
   */
 | 
					   */
 | 
				
			||||||
  static state_fppro  check_fppro(int numreg);
 | 
					  static state_fppro  check_fppro(int numreg);
 | 
				
			||||||
 | 
						state_estr_int			guess_int(int numreg);
 | 
				
			||||||
 | 
						bool								checkPAF(TLocalisamfile& mov);
 | 
				
			||||||
 | 
						bool								checkPAA(TLocalisamfile& mov);
 | 
				
			||||||
 | 
						const bool          check_keys(TToken_string keys);
 | 
				
			||||||
  bool                check_periodo_def() const;
 | 
					  bool                check_periodo_def() const;
 | 
				
			||||||
  void                copy_file_to_webapp_fld(TMovimento_estr& movimento) const;
 | 
					  void                copy_file_to_webapp_fld(TMovimento_estr& movimento) const;
 | 
				
			||||||
  void         fill_id(const TRectype& clifo, TString& statopaiv, TString& idfisc, TString& paiv, TString& codfis);
 | 
					  void								fill_id(const TRectype& clifo, TString& statopaiv, TString& idfisc, TString& paiv, TString& codfis);
 | 
				
			||||||
  TipoIVA      get_tipoiva() const { return _head.tipo_doc == 'A' ? iva_acquisti : iva_vendite; }
 | 
					  TipoIVA							get_tipoiva() const { return _head.tipo_doc == 'A' ? iva_acquisti : iva_vendite; }
 | 
				
			||||||
  bool         is_doc_xml(const TRectype& mov);
 | 
					  bool								is_doc_xml(const TRectype& mov);
 | 
				
			||||||
  bool         load_docs(TMovimento_estr& movimento) {	return movimento.load_docs();	}
 | 
					  bool								load_docs(TMovimento_estr& movimento) {	return movimento.load_docs();	}
 | 
				
			||||||
  // Se il movimento e' di vendita e ha i riferimenti al documento generatore provo a stamparlo con ve, e lo inserisco tra i cartacei F9.
 | 
					  // Se il movimento e' di vendita e ha i riferimenti al documento generatore provo a stamparlo con ve, e lo inserisco tra i cartacei F9.
 | 
				
			||||||
  // bool         stampa_documento(const TMovimento_estr& movimento, TFilename& file);
 | 
					  // bool         stampa_documento(const TMovimento_estr& movimento, TFilename& file);
 | 
				
			||||||
  bool         grab_pdf_from_spotlite(const TMovimento_estr& movimento, TFilename& file) const;
 | 
					  bool         grab_pdf_from_spotlite(const TMovimento_estr& movimento, TFilename& file) const;
 | 
				
			||||||
@ -448,7 +467,7 @@ private:
 | 
				
			|||||||
  /** Controlla ultimo id estrazione della giornata e in base al tipo di estrazione,
 | 
					  /** Controlla ultimo id estrazione della giornata e in base al tipo di estrazione,
 | 
				
			||||||
   * genera il progressivo seguente. Chiamata da \a estrai() e \a estrai_single().
 | 
					   * genera il progressivo seguente. Chiamata da \a estrai() e \a estrai_single().
 | 
				
			||||||
   * \return Nuovo id estrazione. */
 | 
					   * \return Nuovo id estrazione. */
 | 
				
			||||||
  TString     next_estr_today(char tipo) const;
 | 
					  TString     next_estr_today(char tipo, const bool estr_int = false) const;
 | 
				
			||||||
  static bool pura_iva(const TRectype& mov);
 | 
					  static bool pura_iva(const TRectype& mov);
 | 
				
			||||||
  void        write_errorsql_log(const TString& query);
 | 
					  void        write_errorsql_log(const TString& query);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -465,6 +484,8 @@ public:
 | 
				
			|||||||
   * \return D_GEST_ERR (02) se la diagnostica ha riportato degli errori.
 | 
					   * \return D_GEST_ERR (02) se la diagnostica ha riportato degli errori.
 | 
				
			||||||
   */
 | 
					   */
 | 
				
			||||||
  const char* diagnostica_mov();
 | 
					  const char* diagnostica_mov();
 | 
				
			||||||
 | 
						/** DIAGNOSTICA GESTIONALE SPECIALIZZATA PER TD16/TD17/TD18....*/
 | 
				
			||||||
 | 
						const char* diagnostica_mov_integrazione();
 | 
				
			||||||
  /** Estrazione per pacchetti "normali" (non da esclusi).
 | 
					  /** Estrazione per pacchetti "normali" (non da esclusi).
 | 
				
			||||||
   * Viene chiamata dall'handler estrai_handler: bottone estrai nella maschera estrazione.
 | 
					   * Viene chiamata dall'handler estrai_handler: bottone estrai nella maschera estrazione.
 | 
				
			||||||
   *
 | 
					   *
 | 
				
			||||||
@ -479,6 +500,10 @@ public:
 | 
				
			|||||||
   * \return true Scrittura sul db senza errori.
 | 
					   * \return true Scrittura sul db senza errori.
 | 
				
			||||||
   * \return false Errore scrittura db. */
 | 
					   * \return false Errore scrittura db. */
 | 
				
			||||||
  bool estrazione_iva(bool escluso = false);
 | 
					  bool estrazione_iva(bool escluso = false);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						result_estr TEstrazione::estrai_integrazioni();
 | 
				
			||||||
 | 
						bool estrazione_iva_int(bool escluso = false);
 | 
				
			||||||
  bool exist_prov() const;  /**< Controllo che esista per questo stesso periodo una estrazione provvisoria. */
 | 
					  bool exist_prov() const;  /**< Controllo che esista per questo stesso periodo una estrazione provvisoria. */
 | 
				
			||||||
  /** Controllo se esiste un periodo antecedente a questa estrazione che non e' mai stato estratto definitivamente. */
 | 
					  /** Controllo se esiste un periodo antecedente a questa estrazione che non e' mai stato estratto definitivamente. */
 | 
				
			||||||
  bool gap_periodo() const;
 | 
					  bool gap_periodo() const;
 | 
				
			||||||
 | 
				
			|||||||
@ -15,7 +15,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
#define MODE_SHEETS 0xC
 | 
					#define MODE_SHEETS 0xC
 | 
				
			||||||
 | 
					
 | 
				
			||||||
statistics _stats = { 0, 0, 0, 0, 0, 0, 0, 0, 0 };
 | 
					statistics _stats = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const TString & get_numdoc_exp_fp(const int numreg)
 | 
					const TString & get_numdoc_exp_fp(const int numreg)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
@ -451,6 +451,129 @@ state_fppro TEstrazione::check_fppro(int numreg)
 | 
				
			|||||||
  return not_fa;
 | 
					  return not_fa;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					state_estr_int TEstrazione::guess_int(int numreg)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						TLocalisamfile mov(LF_MOV);
 | 
				
			||||||
 | 
						mov.put(MOV_NUMREG, numreg);
 | 
				
			||||||
 | 
						if (mov.read() == NOERR)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							if (get_tipoiva() == iva_vendite)
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								if (checkPAF(mov))
 | 
				
			||||||
 | 
									return guessed_int;
 | 
				
			||||||
 | 
								return no_guessed_int;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							else if(get_tipoiva() == iva_acquisti)
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								if (checkPAA(mov))
 | 
				
			||||||
 | 
									return guessed_int;
 | 
				
			||||||
 | 
								return no_guessed_int;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return int_with_err;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bool TEstrazione::checkPAF(TLocalisamfile& mov)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						// Prendo il fornitore del mov per controllare la p.iva
 | 
				
			||||||
 | 
						long codcf = mov.get_long(MOV_CODCF);
 | 
				
			||||||
 | 
						TCli_for forn = cached_clifor('C', mov.get_long(MOV_CODCF));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						const TString4 statopiva(forn.get(CLI_STATOPAIV));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						const real tot = mov.get_real(MOV_TOTDOC) + mov.get_real(MOV_RITFIS) + mov.get_real(MOV_RITSOC);
 | 
				
			||||||
 | 
						TString numdoc = mov.get(MOV_NUMDOCEXT);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (numdoc.blank())
 | 
				
			||||||
 | 
							numdoc = mov.get(MOV_NUMDOC);
 | 
				
			||||||
 | 
						// Controllo datadoc - numdoc - totdoc - p.iva
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						TString query;
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						query << "SELECT PQ_KEYPRGINVIO AS KEYPRGINVIO, PQ_KEYHEADERFATT AS KEYHEADERFATT, PQ_KEYBODYFATT AS KEYBODYFATT, P7_DATA AS DATA,\n" <<
 | 
				
			||||||
 | 
							"P7_NUMERO AS NUMDOC, PQ_IMPTOTDOC AS IMPTOTDOC, P2_FISCIVAPAESE AS STATOPIVA, P2_FISCIVACOD AS PIVA FROM PAF2700F\n" <<
 | 
				
			||||||
 | 
							"JOIN PAF0700F ON PQ_KEYPRGINVIO = P7_KEYPRGINVIO AND PQ_KEYHEADERFATT = P7_KEYHEADERFATT AND PQ_KEYBODYFATT = P7_KEYBODYFATT\n" <<
 | 
				
			||||||
 | 
							"JOIN PAF0200F ON PQ_KEYPRGINVIO = P2_KEYPRGINVIO AND PQ_KEYHEADERFATT = P2_KEYHEADERFATT AND PQ_KEYBODYFATT = P2_KEYBODYFATT\n" <<
 | 
				
			||||||
 | 
							"WHERE P7_DATA = '" << mov.get_date(MOV_DATADOC).date2ansi() << "' AND \n" <<
 | 
				
			||||||
 | 
							"(P7_NUMERO = '" << numdoc << "' OR P7_NUMERO LIKE '%" << numdoc << "%') \n";
 | 
				
			||||||
 | 
						if (statopiva.full())
 | 
				
			||||||
 | 
							query << " AND \n" << "P2_FISCIVAPAESE = '" << statopiva << "'";
 | 
				
			||||||
 | 
						query << " AND \n" << "P2_FISCIVACOD = '" << forn.get(CLI_PAIV) << "'";
 | 
				
			||||||
 | 
						if (forn.gruppo_IVA())
 | 
				
			||||||
 | 
							query << " AND \n" "P2_COCAZZO = '" << forn.get(CLI_COFI) << "'"; // cazzo;
 | 
				
			||||||
 | 
						if (tot < 0)
 | 
				
			||||||
 | 
							query << " AND \n" "(PQ_IMPTOTDOC = " << tot << " OR PQ_IMPTOTDOC = " << abs(tot) << ")";
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
							query << " AND \n" "PQ_IMPTOTDOC = " << tot;
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						bool ok = fp_db().sq_set_exec(query);
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						if (ok && (fp_db().sq_items() == 1))
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							TToken_string keys;
 | 
				
			||||||
 | 
							keys.separator(';');
 | 
				
			||||||
 | 
							keys = (fp_db().sq_get("KEYPRGINVIO"));
 | 
				
			||||||
 | 
							keys.add(fp_db().sq_get("KEYHEADERFATT"));
 | 
				
			||||||
 | 
							keys.add(fp_db().sq_get("KEYBODYFATT"));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							mov.put(MOV_KEYPAF, keys);
 | 
				
			||||||
 | 
							mov.rewrite();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							return true;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return false;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bool TEstrazione::checkPAA(TLocalisamfile& mov)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						// Prendo il fornitore del mov per controllare la p.iva
 | 
				
			||||||
 | 
						long codcf = mov.get_long(MOV_CODCF);
 | 
				
			||||||
 | 
						TCli_for forn = cached_clifor('F', mov.get_long(MOV_CODCF));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						const TString4 statopiva(forn.get(CLI_STATOPAIV));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						const real tot = mov.get_real(MOV_TOTDOC) + mov.get_real(MOV_RITFIS) + mov.get_real(MOV_RITSOC) + mov.get_real(MOV_REVCHARGE);
 | 
				
			||||||
 | 
						TString numdoc = mov.get(MOV_IDDOCSDI);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						TString query;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						query << "SELECT PQ_KEYPRGINVIO AS KEYPRGINVIO, PQ_KEYHEADERFATT AS KEYHEADERFATT, PQ_KEYBODYFATT AS KEYBODYFATT, P7_DATA AS DATA,\n" <<
 | 
				
			||||||
 | 
							"P7_NUMERO AS NUMDOC, PQ_IMPTOTDOC AS IMPTOTDOC, P2_FISCIVAPAESE AS STATOPIVA, P2_FISCIVACOD AS PIVA FROM PAA2700F\n" <<
 | 
				
			||||||
 | 
							"JOIN PAA0700F ON PQ_KEYPRGINVIO = P7_KEYPRGINVIO AND PQ_KEYHEADERFATT = P7_KEYHEADERFATT AND PQ_KEYBODYFATT = P7_KEYBODYFATT\n" <<
 | 
				
			||||||
 | 
							"JOIN PAA0200F ON PQ_KEYPRGINVIO = P2_KEYPRGINVIO AND PQ_KEYHEADERFATT = P2_KEYHEADERFATT AND PQ_KEYBODYFATT = P2_KEYBODYFATT\n" <<
 | 
				
			||||||
 | 
							"WHERE P7_DATA = '" << mov.get_date(MOV_DATADOC).date2ansi() << "' AND \n" <<
 | 
				
			||||||
 | 
							"(P7_NUMERO = '" << numdoc << "' OR P7_NUMERO LIKE '%" << numdoc << "%') \n";
 | 
				
			||||||
 | 
						if (statopiva.full())
 | 
				
			||||||
 | 
							query << " AND \n" << "P2_FISCIVAPAESE = '" << statopiva << "'";
 | 
				
			||||||
 | 
						query << " AND \n" << "P2_FISCIVACOD = '" << forn.get(CLI_PAIV) << "'";
 | 
				
			||||||
 | 
						if (forn.gruppo_IVA())
 | 
				
			||||||
 | 
							query << " AND \n" "P2_COCAZZO = '" << forn.get(CLI_COFI) << "'";
 | 
				
			||||||
 | 
						if (tot < 0)
 | 
				
			||||||
 | 
							query << " AND \n" "(PQ_IMPTOTDOC = " << tot << " OR PQ_IMPTOTDOC = " << abs(tot) << ")";
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
							query << " AND \n" "PQ_IMPTOTDOC = " << tot;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						bool ok = fp_db().sq_set_exec(query);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (ok && (fp_db().sq_items() == 1))
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							//CAPIRE COSA FARE QUI DENTRO
 | 
				
			||||||
 | 
							TToken_string keys;
 | 
				
			||||||
 | 
							keys.separator(';');
 | 
				
			||||||
 | 
							keys = (fp_db().sq_get("KEYPRGINVIO"));
 | 
				
			||||||
 | 
							keys.add(fp_db().sq_get("KEYHEADERFATT"));
 | 
				
			||||||
 | 
							keys.add(fp_db().sq_get("KEYBODYFATT"));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							mov.put(MOV_KEYFPPRO, keys);
 | 
				
			||||||
 | 
							mov.rewrite();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							return true;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return false;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool TEstrazione::check_periodo_def() const
 | 
					bool TEstrazione::check_periodo_def() const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  TString query;
 | 
					  TString query;
 | 
				
			||||||
@ -793,15 +916,19 @@ bool TEstrazione::export_error_list()
 | 
				
			|||||||
  return ok;
 | 
					  return ok;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
TString TEstrazione::next_estr_today(char tipo) const
 | 
					TString TEstrazione::next_estr_today(char tipo, const bool estr_int) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  char estr[] = { 0,0,0,0,0,0,0,0,0 };
 | 
					  char estr[] = { 0,0,0,0,0,0,0,0,0 };
 | 
				
			||||||
  TString query;
 | 
					  TString query;
 | 
				
			||||||
  query << "SELECT TOP 1 SUBSTRING(" DRD_ID_EST ", 11, 8) AS IDESTR\n"
 | 
						query << "SELECT TOP 1 SUBSTRING(" DRD_ID_EST ", 11, 8) AS IDESTR\n"
 | 
				
			||||||
    "FROM " F9_DRD "\n"
 | 
							"FROM " F9_DRD "\n"
 | 
				
			||||||
    "WHERE " DRD_CODSOC " = '" << _head.cod_soc << "' AND\n"
 | 
							"WHERE " DRD_CODSOC " = '" << _head.cod_soc << "' AND\n";
 | 
				
			||||||
    DRD_ID_EST " LIKE '" << today.date2ansi() << "%'\n"
 | 
						if (estr_int)
 | 
				
			||||||
    "ORDER BY IDESTR DESC";
 | 
							query << DRD_ID_EST " LIKE 'R" << today.date2ansi() << "%'\n";
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
							query << DRD_ID_EST " LIKE '" << today.date2ansi() << "%'\n";
 | 
				
			||||||
 | 
						 
 | 
				
			||||||
 | 
						query << "ORDER BY IDESTR DESC";
 | 
				
			||||||
  fp_db().sq_set_exec(query);
 | 
					  fp_db().sq_set_exec(query);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  const int last_estr = fp_db().sq_items() > 0 ? real(fp_db().sq_get("IDESTR")).integer() : -1;
 | 
					  const int last_estr = fp_db().sq_items() > 0 ? real(fp_db().sq_get("IDESTR")).integer() : -1;
 | 
				
			||||||
@ -1046,9 +1173,6 @@ const char* TEstrazione::diagnostica_mov()
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
					if (mov_i.estratto())
 | 
										if (mov_i.estratto())
 | 
				
			||||||
					{
 | 
										{
 | 
				
			||||||
						if (mov_i.numreg() == 41400) {
 | 
					 | 
				
			||||||
							int here = 0;
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
						if (mov_i.cartaceo())
 | 
											if (mov_i.cartaceo())
 | 
				
			||||||
						{
 | 
											{
 | 
				
			||||||
							TFilename   file;
 | 
												TFilename   file;
 | 
				
			||||||
@ -1083,6 +1207,126 @@ const char* TEstrazione::diagnostica_mov()
 | 
				
			|||||||
  return _head.stato_estr;
 | 
					  return _head.stato_estr;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const char* TEstrazione::diagnostica_mov_integrazione()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						bool ok = true;
 | 
				
			||||||
 | 
						const TipoIVA tipo = get_tipoiva();
 | 
				
			||||||
 | 
						_stats.total = _movs.size();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						TProgress_monitor bar(_movs.items(), "Controllo stato movimenti");
 | 
				
			||||||
 | 
						FOR_EACH_ARRAY_ITEM(_movs, r, obj)
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								if (bar.add_status())
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									TMovimento_estr & mov_i = (TMovimento_estr &)*obj;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									// Se gia' escluso passo avanti
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									if (!mov_i.estratto() && mov_i.descr_estr() == mov_escluso)
 | 
				
			||||||
 | 
										continue;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									const long numreg = mov_i.numreg();
 | 
				
			||||||
 | 
									const TRectype & mov = cache().get(LF_MOV, numreg);
 | 
				
			||||||
 | 
									TToken_string keys; 
 | 
				
			||||||
 | 
									
 | 
				
			||||||
 | 
									if(tipo == iva_vendite)
 | 
				
			||||||
 | 
										keys = (mov.get(MOV_KEYPAF));
 | 
				
			||||||
 | 
									else if (tipo == iva_acquisti)
 | 
				
			||||||
 | 
										keys = (mov.get(MOV_KEYFPPRO));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									keys.separator(';');
 | 
				
			||||||
 | 
									int i = keys.items();
 | 
				
			||||||
 | 
									
 | 
				
			||||||
 | 
									if (keys.full() && (keys.items() == 3))
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										if (check_keys(keys)) 
 | 
				
			||||||
 | 
										{
 | 
				
			||||||
 | 
											ok &= true;
 | 
				
			||||||
 | 
											mov_i.set_estratto(true);
 | 
				
			||||||
 | 
											mov_i.set_state_int(guessed_int);
 | 
				
			||||||
 | 
											++_stats.int_match;
 | 
				
			||||||
 | 
											continue;
 | 
				
			||||||
 | 
										} 
 | 
				
			||||||
 | 
										else
 | 
				
			||||||
 | 
										{
 | 
				
			||||||
 | 
											ok &= false;
 | 
				
			||||||
 | 
											mov_i.set_state_int(int_with_err);
 | 
				
			||||||
 | 
											mov_i.reset_err();
 | 
				
			||||||
 | 
											mov_i.set_err("Chiavi del documento ERRATE", mov_nomatch_keys);
 | 
				
			||||||
 | 
											++_stats.int_nomatch;
 | 
				
			||||||
 | 
											continue;
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									if (mov_i.no_err() && mov_i.estratto())
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
										const long numreg = mov_i.numreg();
 | 
				
			||||||
 | 
										const TRectype & mov = cache().get(LF_MOV, numreg);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
										mov_i.set_cartaceo(!is_doc_xml(mov));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
										const state_estr_int res = guess_int(numreg);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
										switch (res)
 | 
				
			||||||
 | 
										{
 | 
				
			||||||
 | 
										case guessed_int:
 | 
				
			||||||
 | 
											ok &= true;
 | 
				
			||||||
 | 
											mov_i.set_estratto(true);
 | 
				
			||||||
 | 
											++_stats.int_match;
 | 
				
			||||||
 | 
											break;
 | 
				
			||||||
 | 
										case no_guessed_int:
 | 
				
			||||||
 | 
											ok &= false;
 | 
				
			||||||
 | 
											mov_i.reset_err();
 | 
				
			||||||
 | 
											mov_i.set_err("Non è stato possibile trovare il documento elettronico da abbinare", mov_notfound_elet);
 | 
				
			||||||
 | 
											++_stats.int_nomatch;
 | 
				
			||||||
 | 
											break;
 | 
				
			||||||
 | 
										case int_with_err:
 | 
				
			||||||
 | 
											ok &= false;
 | 
				
			||||||
 | 
											mov_i.set_estratto(false);
 | 
				
			||||||
 | 
											++_stats.int_err;
 | 
				
			||||||
 | 
											break;
 | 
				
			||||||
 | 
										default: break;
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
										if (mov_i.state() == null_state)
 | 
				
			||||||
 | 
											mov_i.set_state_int(res);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						_head.stato_estr = ok ? D_GEST_OK : D_GEST_ERR;
 | 
				
			||||||
 | 
						return _head.stato_estr;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const bool TEstrazione::check_keys(TToken_string keys) 
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						bool res;
 | 
				
			||||||
 | 
						TString query;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (get_tipoiva() == iva_vendite) 
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							query << "SELECT COUNT(PW_KEYBODYFATT) AS CONTA FROM PAFW300F WHERE PW_KEYPRGINVIO = '" << keys.get(0)
 | 
				
			||||||
 | 
								<< "' AND PW_KEYHEADERFATT = '" << keys.get(1) << "' AND PW_KEYBODYFATT = '" << keys.get(2) << "'";
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else 	if (get_tipoiva() == iva_acquisti) 
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							query << "SELECT COUNT(PZ_KEYBODYFATT) AS CONTA FROM FPPRO00F WHERE PZ_KEYPRGINVIO = '" << keys.get(0)
 | 
				
			||||||
 | 
								<< "' AND PZ_KEYHEADERFATT = '" << keys.get(1) << "' AND PZ_KEYBODYFATT = '" << keys.get(2) << "'";
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						fp_db().sq_set_exec(query);
 | 
				
			||||||
 | 
						TString query_res = fp_db().sq_get("CONTA");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (query_res == "1")
 | 
				
			||||||
 | 
							res = true;
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
							res = false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return res;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
result_estr TEstrazione::estrai()
 | 
					result_estr TEstrazione::estrai()
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  // Se non c'e' nessun movimento non sto nemmeno a scrivere il record di estrazione.
 | 
					  // Se non c'e' nessun movimento non sto nemmeno a scrivere il record di estrazione.
 | 
				
			||||||
@ -1357,6 +1601,267 @@ bool TEstrazione::estrazione_iva(bool escluso)
 | 
				
			|||||||
  return stato;
 | 
					  return stato;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					result_estr TEstrazione::estrai_integrazioni()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						// Se non c'e' nessun movimento non sto nemmeno a scrivere il record di estrazione.
 | 
				
			||||||
 | 
						// Se estrazione definitiva controllo che il periodo non si sovrapponga alle altre estrazioni def.
 | 
				
			||||||
 | 
						// Do' errore ed esco subito.
 | 
				
			||||||
 | 
						result_estr res = estr_ok;
 | 
				
			||||||
 | 
						if (_movs.empty())
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							warning_box("Non esistono movimenti estraibili per il periodo selezionato.");
 | 
				
			||||||
 | 
							return estr_stop;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if (!_escluso && !_head.flag_prov)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							 // Avviso nel caso in cui si stia facendo un'estrazione definitiva di un periodo di cui non si e' mai fatta
 | 
				
			||||||
 | 
							 // una prova provvisoria.
 | 
				
			||||||
 | 
							if (!exist_prov())
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								if (!noyes_box("Attenzione, non e' mai stata fatta alcuna\nestrazione provvisoria per questo periodo.\nContinuare comunque?"))
 | 
				
			||||||
 | 
									return estr_stop;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						// Non so come usare questi 18 caratteri...
 | 
				
			||||||
 | 
						// Uso dati anche se gia' noti in altri campi (I know..) + un numero incrementale.
 | 
				
			||||||
 | 
						_head.id_estr.cut(0) << 'R' << today.date2ansi() << (_head.flag_prov ? "P" : "D") << next_estr_today(_head.tipo_doc, true);
 | 
				
			||||||
 | 
						_head.user = user();
 | 
				
			||||||
 | 
						// Eseguo controllo sui movimenti e segno in testata lo stato
 | 
				
			||||||
 | 
						_head.stato_estr = IN_DIAGN;  // "01" che verra' quasi subito rimpiazzato dal risultato della diagnostica.
 | 
				
			||||||
 | 
						if (_escluso)
 | 
				
			||||||
 | 
							set_dates();                // Se escluso imposto data inizio e fine uguali
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// Scrivo record estrazione (in stato '01': in diagnostica).
 | 
				
			||||||
 | 
						const bool ok = insert_into_drd();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (!ok)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							TString msg;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							msg << "Errore database: impossibile scrivere nuova estrazione.\n"
 | 
				
			||||||
 | 
								<< fp_db().sq_get_text_error(false);
 | 
				
			||||||
 | 
							error_box(msg);
 | 
				
			||||||
 | 
							return estr_err_db_drd;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// Faccio partire la diagnostica e mi salvo il nuovo stato.
 | 
				
			||||||
 | 
						diagnostica_mov_integrazione();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						//ARRIVATO QUI
 | 
				
			||||||
 | 
						insert_into_f9movestr();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (_head.stato_estr == D_GEST_ERR)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							warning_box("Attenzione l'estrazione ha prodotto degli errori.\n"
 | 
				
			||||||
 | 
								"Controllare e correggere eventuali problemi\ndal Controllo Estrazione.");
 | 
				
			||||||
 | 
							// Se in errore, esporto lista errori sul db
 | 
				
			||||||
 | 
							if (!export_error_list())
 | 
				
			||||||
 | 
								warning_box("Errore scrittura db. Controllare log errori.");
 | 
				
			||||||
 | 
							res = estr_diag_err;  // Errore diagnostica gestionale
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// Se va tutto ben fino a qui, posso andare a scrivere nella
 | 
				
			||||||
 | 
						// tabella IVA i movimenti. F9IVA
 | 
				
			||||||
 | 
						if (res == estr_ok)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							res = estrazione_iva_int() ? estr_ok : estr_err_db_iva;
 | 
				
			||||||
 | 
							if (res == estr_err_db_iva)
 | 
				
			||||||
 | 
								_head.stato_estr = D_GEST_ERR;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						update_drd_stato_estr();
 | 
				
			||||||
 | 
						return res;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bool TEstrazione::estrazione_iva_int(bool escluso)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						TString statopaiv, idfisc, paiv, codfis;
 | 
				
			||||||
 | 
						bool stato = true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						TProgress_monitor bar(_movs.items(), "Estrazione dati IVA");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						FOR_EACH_ARRAY_ITEM(_movs, r, obj)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							TMovimento_estr & mov_i = (TMovimento_estr &)*obj;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							if (bar.add_status() && mov_i.estratto())
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								const TRectype& mov = cache().get(LF_MOV, mov_i.numreg());
 | 
				
			||||||
 | 
								TToken_string key = mov.get(MOV_TIPO);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								key.add(mov.get(MOV_CODCF));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								const TRectype& cli = cache().get(LF_CLIFO, key);
 | 
				
			||||||
 | 
								const char      tipodoc = _head.tipo_doc;
 | 
				
			||||||
 | 
								const TCausale & caus = cached_causale(mov.get(MOV_CODCAUS), mov.get_date(MOV_DATAREG).year());
 | 
				
			||||||
 | 
								const TString&  name_registro = caus.reg().name();;
 | 
				
			||||||
 | 
								fill_id(cli, statopaiv, idfisc, paiv, codfis);
 | 
				
			||||||
 | 
								TDate datadoc = mov.get_date(MOV_DATADOC);
 | 
				
			||||||
 | 
								TDate datareg = mov.get_date(MOV_DATAREG);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								TIva_insert_prepared_stat iva_query; /////////QUIIIIIII///
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								iva_query.add(IVA_CODSOC, _head.cod_soc, 10);
 | 
				
			||||||
 | 
								iva_query.add(IVA_IDLAN, _head.id_estr, 18);
 | 
				
			||||||
 | 
								iva_query.add(IVA_FLAG_PD, _head.flag_prov ? 'P' : 'D');
 | 
				
			||||||
 | 
								iva_query.add(IVA_ANNOES, mov.get_int(MOV_ANNOES));
 | 
				
			||||||
 | 
								iva_query.add(IVA_GIVA, tipodoc);
 | 
				
			||||||
 | 
								iva_query.add(IVA_TIPOG, name_registro, 10);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								long numdoc = mov.get_long(MOV_NUMDOC);
 | 
				
			||||||
 | 
								bool has_xml = !mov_i.err(); //si può fare un controllo migliore 
 | 
				
			||||||
 | 
								iva_query.add(IVA_DOCXML, has_xml ? 'S' : 'N');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								iva_query.add(IVA_TIPOCF, mov.get_char(MOV_TIPO));
 | 
				
			||||||
 | 
								iva_query.add(IVA_CODCF, mov.get_long(MOV_CODCF));
 | 
				
			||||||
 | 
								iva_query.add(IVA_NUMOR, mov.get_long(MOV_NUMREG));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								iva_query.add(IVA_RAGSOC, cli.get(CLI_RAGSOC), 60);
 | 
				
			||||||
 | 
								iva_query.add(IVA_IDFISC, idfisc, 30);
 | 
				
			||||||
 | 
								iva_query.add(IVA_PIVA, paiv, 28);
 | 
				
			||||||
 | 
								iva_query.add(IVA_CODFIS, codfis, 16);
 | 
				
			||||||
 | 
								iva_query.add(IVA_CATDOC, mov_i.catdoc(categorie_doc())->catdoc(), 10);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								const TRegistro& reg = cached_registro(mov.get(MOV_REG), mov.get_int(MOV_ANNOIVA));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								if (reg.iva() == iva_vendite)
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									int anno = mov.get_int(MOV_DANNO);
 | 
				
			||||||
 | 
									TString tipodocsdi;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									if (anno > 0)
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										const char provv = mov.get(MOV_DPROVV)[0];
 | 
				
			||||||
 | 
										const TString& codnum = mov.get(MOV_DCODNUM);
 | 
				
			||||||
 | 
										const long ndoc = mov.get_long(MOV_DNDOC);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
										TDocumento doc(provv, anno, codnum, ndoc);
 | 
				
			||||||
 | 
										iva_query.add(IVA_CAUSSOS, tipo_doc_sdi(doc), 6);
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									else
 | 
				
			||||||
 | 
										tipodocsdi = caus.tipodocsdi();
 | 
				
			||||||
 | 
									if (tipodocsdi.blank())
 | 
				
			||||||
 | 
										tipodocsdi = mov_i.catdoc(categorie_doc())->caus_sost();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									if (tipodocsdi.full())
 | 
				
			||||||
 | 
										iva_query.add(IVA_CAUSSOS, tipodocsdi, 6);
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								else
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									TToken_string key(mov.get((MOV_KEYFPPRO)), ';');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									if (key.full())
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										TFppro fppro(key);
 | 
				
			||||||
 | 
										const TString& tipodoc = fppro.get_tipodoc();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
										if (tipodoc.full())
 | 
				
			||||||
 | 
											iva_query.add(IVA_CAUSSOS, tipodoc, 6);
 | 
				
			||||||
 | 
										else
 | 
				
			||||||
 | 
											iva_query.add(IVA_CAUSSOS, mov_i.catdoc(categorie_doc())->caus_sost(), 6);
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									else
 | 
				
			||||||
 | 
										iva_query.add(IVA_CAUSSOS, mov_i.catdoc(categorie_doc())->caus_sost(), 6);
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								iva_query.add(IVA_NUMDOC, mov_i.numdoc(), 20);
 | 
				
			||||||
 | 
								iva_query.add(IVA_DATADOC, datadoc);
 | 
				
			||||||
 | 
								iva_query.add(IVA_SEZIVA, mov.get(MOV_REG), 10);
 | 
				
			||||||
 | 
								iva_query.add(IVA_TIPOREG, "", 6);
 | 
				
			||||||
 | 
								iva_query.add(IVA_NPROT, mov.get(MOV_PROTIVA), 20);
 | 
				
			||||||
 | 
								iva_query.add(IVA_DATPROT, datareg);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								iva_query.add(IVA_CLASDOC, mov_i.catdoc(categorie_doc())->class_sost(), 10);
 | 
				
			||||||
 | 
								iva_query.add(IVA_NOMFD, mov_i.nomefiledoc().name(), 100);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								// Load annessi DA TESTARE...
 | 
				
			||||||
 | 
								if (mov_i.allegati())
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									TString_array &     docs = mov_i.documenti_allegati();
 | 
				
			||||||
 | 
									int          i = 0;
 | 
				
			||||||
 | 
									const int    size = docs.items();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									iva_query.add(IVA_CLASAN1, docs.row(i).get(2), 10);
 | 
				
			||||||
 | 
									iva_query.add(IVA_NOMF1, docs.row(i++).get(0), 100);
 | 
				
			||||||
 | 
									// HOW DID MY LIFE COME TO THIS?...
 | 
				
			||||||
 | 
									if (size > i)
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										iva_query.add(IVA_CLASAN2, docs.row(i).get(2), 10);
 | 
				
			||||||
 | 
										iva_query.add(IVA_NOMF2, docs.row(i++).get(0), 100);
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									if (size > i)
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										iva_query.add(IVA_CLASAN3, docs.row(i).get(2), 10);
 | 
				
			||||||
 | 
										iva_query.add(IVA_NOMF3, docs.row(i++).get(0), 100);
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									if (size > i)
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										iva_query.add(IVA_CLASAN4, docs.row(i).get(2), 10);
 | 
				
			||||||
 | 
										iva_query.add(IVA_NOMF4, docs.row(i++).get(0), 100);
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									if (size > i)
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										iva_query.add(IVA_CLASAN5, docs.row(i).get(2), 10);
 | 
				
			||||||
 | 
										iva_query.add(IVA_NOMF5, docs.row(i++).get(0), 100);
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									if (size > i)
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										iva_query.add(IVA_CLASAN6, docs.row(i).get(2), 10);
 | 
				
			||||||
 | 
										iva_query.add(IVA_NOMF6, docs.row(i++).get(0), 100);
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									if (size > i)
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										iva_query.add(IVA_CLASAN7, docs.row(i).get(2), 10);
 | 
				
			||||||
 | 
										iva_query.add(IVA_NOMF7, docs.row(i++).get(0), 100);
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									if (size > i)
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										iva_query.add(IVA_CLASAN8, docs.row(i).get(2), 10);
 | 
				
			||||||
 | 
										iva_query.add(IVA_NOMF8, docs.row(i++), 100);
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									if (size > i)
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										iva_query.add(IVA_CLASAN9, docs.row(i).get(2), 10);
 | 
				
			||||||
 | 
										iva_query.add(IVA_NOMF9, docs.row(i++).get(0), 100);
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								iva_query.add(IVA_USERELA, user(), 10);
 | 
				
			||||||
 | 
								iva_query.add_getdate(IVA_TIMEELA);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								/* DA VEDERE 
 | 
				
			||||||
 | 
								if (_head.tipo_doc == 'A' && !mov_i.cartaceo())
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									TToken_string keys(mov.get(MOV_KEYFPPRO), ';');
 | 
				
			||||||
 | 
									fppro_db().set_keys(keys);
 | 
				
			||||||
 | 
									iva_query.add(IVA_TIPPROT, fppro_db().get_tipoprot(), 2);
 | 
				
			||||||
 | 
									iva_query.add(IVA_ANNPROT, TVariant(fppro_db().get_annoprot()).as_int());
 | 
				
			||||||
 | 
									iva_query.add(IVA_NUMPROT, fppro_db().get_numprot(), 10);  // Non controllo che sia in realta' un numero...
 | 
				
			||||||
 | 
									iva_query.add(IVA_TIMERIC, TDate(fppro_db().get_dataoraric()));
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								*/
 | 
				
			||||||
 | 
								
 | 
				
			||||||
 | 
								TString sql;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								//DA MIGLIORARE IL LOG DI ERRORE
 | 
				
			||||||
 | 
								long a = mov_i.numreg();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								bool ok = iva_query.get(sql);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								if (ok)
 | 
				
			||||||
 | 
									ok = fp_db().sq_set_exec(sql);
 | 
				
			||||||
 | 
								if (ok)
 | 
				
			||||||
 | 
									ok = fp_db().sq_commit();
 | 
				
			||||||
 | 
								if (!ok)
 | 
				
			||||||
 | 
									write_errorsql_log(sql);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								stato &= ok;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return stato;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool TEstrazione::exist_prov() const
 | 
					bool TEstrazione::exist_prov() const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  TString query; query << "SELECT * FROM " F9_DRD "\n" <<
 | 
					  TString query; query << "SELECT * FROM " F9_DRD "\n" <<
 | 
				
			||||||
 | 
				
			|||||||
@ -33,8 +33,9 @@ Picture = <cg01>
 | 
				
			|||||||
Module  = f9
 | 
					Module  = f9
 | 
				
			||||||
Flags   = ""
 | 
					Flags   = ""
 | 
				
			||||||
Item_01 = "Estrazioni", "f90 -0", ""
 | 
					Item_01 = "Estrazioni", "f90 -0", ""
 | 
				
			||||||
Item_02 = "Categorie documentali", "f90 -1", ""
 | 
					Item_02 = "Archiviazione integrazioni", "f90 -5", ""
 | 
				
			||||||
Item_03 = "Gestione file doc. cartacei", "f90 -2", ""
 | 
					Item_03 = "Categorie documentali", "f90 -1", ""
 | 
				
			||||||
Item_04 = "Ripristino estrazioni", "f90 -4", ""
 | 
					Item_04 = "Gestione file doc. cartacei", "f90 -2", ""
 | 
				
			||||||
 | 
					Item_05 = "Ripristino estrazioni", "f90 -4", ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -65,6 +65,7 @@
 | 
				
			|||||||
#define MOV_DATADOCSDI "DATADOCSDI"  
 | 
					#define MOV_DATADOCSDI "DATADOCSDI"  
 | 
				
			||||||
#define MOV_COLL_GOLEM "COLL_GOLEM" 
 | 
					#define MOV_COLL_GOLEM "COLL_GOLEM" 
 | 
				
			||||||
#define MOV_CARTACEI   "CARTACEI" 
 | 
					#define MOV_CARTACEI   "CARTACEI" 
 | 
				
			||||||
 | 
					#define MOV_KEYPAF		 "KEYPAF"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define NUMREG_PROVVISORIO 999999L
 | 
					#define NUMREG_PROVVISORIO 999999L
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user