Merge branch 'R12.00.1136' of http://10.65.20.33/sirio/CAMPO/campo into R12.00.1136
This commit is contained in:
commit
a657231b2e
4
.gitignore
vendored
4
.gitignore
vendored
@ -397,6 +397,10 @@ FodyWeavers.xsd
|
||||
# JetBrains Rider
|
||||
*.sln.iml
|
||||
|
||||
#special file
|
||||
build/fastrip.exe
|
||||
build/patchdef.exe
|
||||
|
||||
#exe folder
|
||||
exe/
|
||||
|
||||
|
Binary file not shown.
@ -207,6 +207,7 @@
|
||||
<ClCompile Include="..\src\f9\f90300.cpp" />
|
||||
<ClCompile Include="..\src\f9\f90400.cpp" />
|
||||
<ClCompile Include="..\src\f9\f90200.cpp" />
|
||||
<ClCompile Include="..\src\f9\f90500.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\src\f9\f90.h" />
|
||||
@ -219,6 +220,7 @@
|
||||
<ClInclude Include="..\src\f9\f90300b.h" />
|
||||
<ClInclude Include="..\src\f9\f901tab.h" />
|
||||
<ClInclude Include="..\src\f9\f90200a.h" />
|
||||
<ClInclude Include="..\src\f9\f90500.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<MskCompiler Include="..\src\f9\f90100a.uml" />
|
||||
@ -228,6 +230,7 @@
|
||||
<MskCompiler Include="..\src\f9\f90200a.uml" />
|
||||
<MskCompiler Include="..\src\f9\f90300a.uml" />
|
||||
<MskCompiler Include="..\src\f9\f90300b.uml" />
|
||||
<MskCompiler Include="..\src\f9\f90500a.uml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<SqlCompiler Include="..\src\f9\sql\f90100.sql">
|
||||
|
@ -54,6 +54,9 @@
|
||||
<ClInclude Include="..\src\f9\f90300b.h">
|
||||
<Filter>Headers</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\src\f9\f90500.h">
|
||||
<Filter>Headers</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\src\f9\f90.cpp">
|
||||
@ -71,6 +74,9 @@
|
||||
<ClCompile Include="..\src\f9\f90400.cpp">
|
||||
<Filter>Sources</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\f9\f90500.cpp">
|
||||
<Filter>Sources</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<MskCompiler Include="..\src\f9\f90100a.uml">
|
||||
@ -94,6 +100,9 @@
|
||||
<MskCompiler Include="..\src\f9\f90300b.uml">
|
||||
<Filter>Masks</Filter>
|
||||
</MskCompiler>
|
||||
<MskCompiler Include="..\src\f9\f90500a.uml">
|
||||
<Filter>Masks</Filter>
|
||||
</MskCompiler>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<SqlCompiler Include="..\src\f9\sql\f90100.sql">
|
||||
|
Binary file not shown.
@ -310,6 +310,7 @@
|
||||
<RepCompiler Include="..\src\fp\fp0700a.rep">
|
||||
<SubType>Designer</SubType>
|
||||
</RepCompiler>
|
||||
<RepCompiler Include="..\src\fp\fp0700b.rep" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
|
@ -190,5 +190,8 @@
|
||||
<RepCompiler Include="..\src\fp\fp0700a.rep">
|
||||
<Filter>Reports</Filter>
|
||||
</RepCompiler>
|
||||
<RepCompiler Include="..\src\fp\fp0700b.rep">
|
||||
<Filter>Reports</Filter>
|
||||
</RepCompiler>
|
||||
</ItemGroup>
|
||||
</Project>
|
@ -45,7 +45,7 @@
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Configuration)\$(ProjectName)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\exe\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Configuration)\$(ProjectName)\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\obj\$(SolutionName)\$(ProjectName)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
@ -110,7 +110,7 @@
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<AdditionalIncludeDirectories>..\src\xvaga;..\src\include;..\src\xvtdb%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>..\src\xvtdb\;..\src\cg;..\src\include;..\src\xvaga;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;XVT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
@ -130,7 +130,7 @@
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>..\exe\tp0.exe</OutputFile>
|
||||
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<ProgramDatabaseFile>.\..\release/tp0.pdb</ProgramDatabaseFile>
|
||||
@ -146,7 +146,8 @@
|
||||
<OutputFile>.\..\release/tp0.bsc</OutputFile>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>"C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\x64\signtool.exe" sign /a /s MY /n "Sirio Informatica e Sistemi SPA" /t http://timestamp.verisign.com/scripts/timstamp.dll /v "$(TargetPath)"</Command>
|
||||
<Command>
|
||||
</Command>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
|
3
cd/test/cg1196.txt
Normal file
3
cd/test/cg1196.txt
Normal file
@ -0,0 +1,3 @@
|
||||
cg4.exe
|
||||
|
||||
Le fatture e del note di credito reverse charge sbgliavano la stamps del totale documento
|
98
cd/test/cg1196a.ini
Normal file
98
cd/test/cg1196a.ini
Normal file
@ -0,0 +1,98 @@
|
||||
[Main]
|
||||
Demo=0
|
||||
|
||||
[cg4]
|
||||
File(84) = cg4.exe|X
|
||||
Patch = 1196
|
||||
Versione = 21511200
|
||||
|
||||
[cg99]
|
||||
Kill(0) = bastdpn.rep|x
|
||||
Kill(1) = batbpdb.msk|x
|
||||
Kill(2) = bastpdb.rep|x
|
||||
Kill(3) = batblbu.msk|x
|
||||
Kill(4) = bastmsp.msk|x
|
||||
Kill(5) = bastvet.msk|x
|
||||
Kill(6) = batbpor.msk|x
|
||||
Kill(7) = batblia.msk|x
|
||||
Kill(8) = batblia.msk|x
|
||||
Kill(9) = bastzon.msk|x
|
||||
Kill(10) = bastreg.rep|x
|
||||
Kill(11) = bastarb.msk|x
|
||||
Kill(12) = bastreg.msk|x
|
||||
Kill(13) = bastcco.msk|x
|
||||
Kill(14) = bastvet.rep|x
|
||||
Kill(15) = batbzon.msk|x
|
||||
Kill(16) = batbleg.msk|x
|
||||
Kill(17) = batbnot.msk|x
|
||||
Kill(18) = bastcfi.msk|x
|
||||
Kill(19) = batbdel.msk|x
|
||||
Kill(20) = batbind.msk|x
|
||||
Kill(21) = batbinl.msk|x
|
||||
Kill(22) = batbver.msk|x
|
||||
Kill(23) = bastnot.rep|x
|
||||
Kill(24) = bastpor.msk|x
|
||||
Kill(25) = bastdpn.msk|x
|
||||
Kill(26) = batbntb.msk|x
|
||||
Kill(27) = batbvet.msk|x
|
||||
Kill(28) = bastmsp.rep|x
|
||||
Kill(29) = bastarb.rep|x
|
||||
Kill(30) = batbesc.msk|x
|
||||
Kill(31) = cgtbcon.msk|x
|
||||
Kill(32) = bastleg.msk|x
|
||||
Kill(33) = bastleg.rep|x
|
||||
Kill(34) = batbarb.msk|x
|
||||
Kill(35) = bastver.msk|x
|
||||
Kill(36) = batbins.msk|x
|
||||
Kill(37) = bastntb.rep|x
|
||||
Kill(38) = bastnot.msk|x
|
||||
Kill(39) = bastver.rep|x
|
||||
Kill(40) = batbscc.msk|x
|
||||
Kill(41) = bastntb.msk|x
|
||||
Kill(42) = bastcco.rep|x
|
||||
Kill(43) = batbivd.msk|x
|
||||
Kill(44) = bastscc.msk|x
|
||||
Kill(45) = bastivd.rep|x
|
||||
Kill(46) = batbcfi.msk|x
|
||||
Kill(47) = batbreg.msk|x
|
||||
Kill(48) = cg2fppro.msk|x
|
||||
Kill(49) = bastndo.msk|x
|
||||
Kill(50) = bastpor.rep|x
|
||||
Kill(51) = batbmsp.msk|x
|
||||
Kill(52) = bastesc.msk|x
|
||||
Kill(53) = batbndo.msk|x
|
||||
Kill(54) = bastcve.rep|x
|
||||
Kill(55) = bastcfi.rep|x
|
||||
Kill(56) = batbcam.msk|x
|
||||
Kill(57) = bastndo.rep|x
|
||||
Kill(58) = batbtit.msk|x
|
||||
Kill(59) = bastcam.rep|x
|
||||
Kill(60) = bastcve.msk|x
|
||||
Kill(61) = bastzon.rep|x
|
||||
Kill(62) = batbcco.msk|x
|
||||
Kill(63) = bastcam.msk|x
|
||||
Kill(64) = bastesc.rep|x
|
||||
Kill(65) = batbcve.msk|x
|
||||
Kill(66) = batbtra.msk|x
|
||||
Kill(67) = bastivd.msk|x
|
||||
Kill(68) = bastscc.rep|x
|
||||
Kill(69) = bastpdb.msk|x
|
||||
Kill(70) = batbdpn.msk|x
|
||||
|
||||
[cg]
|
||||
Data = 14-09-2022
|
||||
Descrizione = Contabilita' Generale
|
||||
Dischi = 1
|
||||
Edit_19 = cg0 -0
|
||||
Edit_20 = cg0 -1
|
||||
Edit_26 = cg0 -4
|
||||
Edit_5 = cg0 -5
|
||||
Moduli = ba
|
||||
OEM =
|
||||
Patch = 1196
|
||||
PostProcess = bainst -0 CG
|
||||
PreProcess =
|
||||
Prezzo(1) =
|
||||
Prezzo(2) =
|
||||
Versione = 21511200
|
||||
|
BIN
cd/test/cg1196a1.zip
Normal file
BIN
cd/test/cg1196a1.zip
Normal file
Binary file not shown.
3
cd/test/ef1202.txt
Normal file
3
cd/test/ef1202.txt
Normal file
@ -0,0 +1,3 @@
|
||||
ef0.exe
|
||||
|
||||
Negli effetti i campi ABI e CAB non venivano visualizzati se il campo IBAN veniva lasciato vuoto
|
28
cd/test/ef1202a.ini
Normal file
28
cd/test/ef1202a.ini
Normal file
@ -0,0 +1,28 @@
|
||||
[Main]
|
||||
Demo=0
|
||||
|
||||
[ef0]
|
||||
Edit_163 = ef0 -1
|
||||
Edit_5 = ef0 -6
|
||||
File(0) = ef0.exe|X
|
||||
Patch = 1202
|
||||
Versione = 21511200
|
||||
|
||||
[ef99]
|
||||
Kill(0) = eftbbnp.msk|x
|
||||
Kill(1) = efstbnp.msk|x
|
||||
Kill(2) = efstbnp.rep|x
|
||||
|
||||
[ef]
|
||||
Data = 06-10-2022
|
||||
Descrizione = Effetti
|
||||
Dischi = 1
|
||||
Moduli = ve
|
||||
OEM =
|
||||
Patch = 1202
|
||||
PostProcess = bainst -0 EF
|
||||
PreProcess =
|
||||
Prezzo(1) =
|
||||
Prezzo(2) =
|
||||
Versione = 21511200
|
||||
|
BIN
cd/test/ef1202a1.zip
Normal file
BIN
cd/test/ef1202a1.zip
Normal file
Binary file not shown.
11
cd/test/f91200.txt
Normal file
11
cd/test/f91200.txt
Normal file
@ -0,0 +1,11 @@
|
||||
f90.exe
|
||||
f90100d.msk
|
||||
sql\f90\f90100.sql
|
||||
sql\f90\f90102.sql
|
||||
sql\f90\f90104.sql
|
||||
|
||||
Modifiche sostanziali al programma di Archiviazione. Il funzionamento del programma è rimasto lo stesso ma
|
||||
i processi di abbinamento e i relativi monitor sono stati rivisti e migliorati.
|
||||
|
||||
Per le vendite il tipo_documento_sdi (es. TD01) viene recuperato dal PAFW300 come prima scelta, se non viene trovato veine utilizzato quello scritto
|
||||
nelle categorie documentali.
|
23
cd/test/f91200a.ini
Normal file
23
cd/test/f91200a.ini
Normal file
@ -0,0 +1,23 @@
|
||||
[Main]
|
||||
Demo=0
|
||||
|
||||
[f90]
|
||||
File(0) = f90.exe|X
|
||||
File(4) = f90100d.msk|X
|
||||
File(11) = sql\f90\f90100.sql|X
|
||||
File(12) = sql\f90\f90102.sql|X
|
||||
File(13) = sql\f90\f90104.sql|X
|
||||
Patch = 1200
|
||||
Versione = 21511200
|
||||
|
||||
[f9]
|
||||
Data = 04-10-2022
|
||||
Descrizione = Archiviazione Sostitutiva
|
||||
Dischi = 1
|
||||
Moduli = fp
|
||||
OEM =
|
||||
Patch = 1200
|
||||
PostProcess =
|
||||
PreProcess =
|
||||
Versione = 21511200
|
||||
|
BIN
cd/test/f91200a1.zip
Normal file
BIN
cd/test/f91200a1.zip
Normal file
Binary file not shown.
3
cd/test/f91201.txt
Normal file
3
cd/test/f91201.txt
Normal file
@ -0,0 +1,3 @@
|
||||
sql\f90\f90104.sql
|
||||
|
||||
Mancava un IF NOT EXISTS che mandava in errore l'aggiornamento delle tabelle F9
|
19
cd/test/f91201a.ini
Normal file
19
cd/test/f91201a.ini
Normal file
@ -0,0 +1,19 @@
|
||||
[Main]
|
||||
Demo=0
|
||||
|
||||
[f90]
|
||||
File(13) = sql\f90\f90104.sql|X
|
||||
Patch = 1201
|
||||
Versione = 21511200
|
||||
|
||||
[f9]
|
||||
Data = 04-10-2022
|
||||
Descrizione = Archiviazione Sostitutiva
|
||||
Dischi = 1
|
||||
Moduli = fp
|
||||
OEM =
|
||||
Patch = 1201
|
||||
PostProcess =
|
||||
PreProcess =
|
||||
Versione = 21511200
|
||||
|
BIN
cd/test/f91201a1.zip
Normal file
BIN
cd/test/f91201a1.zip
Normal file
Binary file not shown.
3
cd/test/f91202.txt
Normal file
3
cd/test/f91202.txt
Normal file
@ -0,0 +1,3 @@
|
||||
sql\f90\f90102.sql
|
||||
|
||||
migliorati gli IF NOT EXISTS dello script f90102.sql
|
19
cd/test/f91202a.ini
Normal file
19
cd/test/f91202a.ini
Normal file
@ -0,0 +1,19 @@
|
||||
[Main]
|
||||
Demo=0
|
||||
|
||||
[f90]
|
||||
File(12) = sql\f90\f90102.sql|X
|
||||
Patch = 1202
|
||||
Versione = 21511200
|
||||
|
||||
[f9]
|
||||
Data = 06-10-2022
|
||||
Descrizione = Archiviazione Sostitutiva
|
||||
Dischi = 1
|
||||
Moduli = fp
|
||||
OEM =
|
||||
Patch = 1202
|
||||
PostProcess =
|
||||
PreProcess =
|
||||
Versione = 21511200
|
||||
|
BIN
cd/test/f91202a1.zip
Normal file
BIN
cd/test/f91202a1.zip
Normal file
Binary file not shown.
6
cd/test/fp1196.txt
Normal file
6
cd/test/fp1196.txt
Normal file
@ -0,0 +1,6 @@
|
||||
fp0.exe
|
||||
|
||||
|
||||
Sistemato il campo P2_FISCIVACOD per i clienti extra CEE.
|
||||
Prima l'identificativo fiscale per gli extra CEE veniva riportato nel campo P2_CODFISCALE e la fattura veniva scartata.
|
||||
Ora invece viene scritto nel campo P2_FISCIVACOD.
|
22
cd/test/fp1196a.ini
Normal file
22
cd/test/fp1196a.ini
Normal file
@ -0,0 +1,22 @@
|
||||
[Main]
|
||||
Demo=0
|
||||
|
||||
[fp0]
|
||||
File(0) = fp0.exe|X
|
||||
Patch = 1196
|
||||
Versione = 21511200
|
||||
|
||||
[fp99]
|
||||
Kill(0) = fppro.msk|x
|
||||
|
||||
[fp]
|
||||
Data = 26-09-2022
|
||||
Descrizione = Fattura Elettronica
|
||||
Dischi = 1
|
||||
Moduli = cg,ve
|
||||
OEM =
|
||||
Patch = 1196
|
||||
PostProcess =
|
||||
PreProcess =
|
||||
Versione = 21511200
|
||||
|
BIN
cd/test/fp1196a1.zip
Normal file
BIN
cd/test/fp1196a1.zip
Normal file
Binary file not shown.
5
cd/test/fp1198.txt
Normal file
5
cd/test/fp1198.txt
Normal file
@ -0,0 +1,5 @@
|
||||
fp0.exe
|
||||
fp0700b.rep
|
||||
fp0700a.msk
|
||||
|
||||
Aggiunta la stampa del prospetto d'integrazione per i documenti cartacei da SanMarino (TD28)
|
24
cd/test/fp1198a.ini
Normal file
24
cd/test/fp1198a.ini
Normal file
@ -0,0 +1,24 @@
|
||||
[Main]
|
||||
Demo=0
|
||||
|
||||
[fp0]
|
||||
File(0) = fp0.exe|X
|
||||
File(7) = fp0700a.msk|X
|
||||
File(19) = fp0700b.rep|X
|
||||
Patch = 1198
|
||||
Versione = 21511200
|
||||
|
||||
[fp99]
|
||||
Kill(0) = fppro.msk|x
|
||||
|
||||
[fp]
|
||||
Data = 26-09-2022
|
||||
Descrizione = Fattura Elettronica
|
||||
Dischi = 1
|
||||
Moduli = cg,ve
|
||||
OEM =
|
||||
Patch = 1198
|
||||
PostProcess =
|
||||
PreProcess =
|
||||
Versione = 21511200
|
||||
|
BIN
cd/test/fp1198a1.zip
Normal file
BIN
cd/test/fp1198a1.zip
Normal file
Binary file not shown.
4
cd/test/fp1200.txt
Normal file
4
cd/test/fp1200.txt
Normal file
@ -0,0 +1,4 @@
|
||||
fp0.exe
|
||||
|
||||
Nell'invio di integrazioni multiple il riepliogo iva non veniva cancellato e quindi veniva sommato nelle integrazioni successive.
|
||||
|
22
cd/test/fp1200a.ini
Normal file
22
cd/test/fp1200a.ini
Normal file
@ -0,0 +1,22 @@
|
||||
[Main]
|
||||
Demo=0
|
||||
|
||||
[fp0]
|
||||
File(0) = fp0.exe|X
|
||||
Patch = 1200
|
||||
Versione = 21511200
|
||||
|
||||
[fp99]
|
||||
Kill(0) = fppro.msk|x
|
||||
|
||||
[fp]
|
||||
Data = 29-09-2022
|
||||
Descrizione = Fattura Elettronica
|
||||
Dischi = 1
|
||||
Moduli = cg,ve
|
||||
OEM =
|
||||
Patch = 1200
|
||||
PostProcess =
|
||||
PreProcess =
|
||||
Versione = 21511200
|
||||
|
BIN
cd/test/fp1200a1.zip
Normal file
BIN
cd/test/fp1200a1.zip
Normal file
Binary file not shown.
3
cd/test/fp1202.txt
Normal file
3
cd/test/fp1202.txt
Normal file
@ -0,0 +1,3 @@
|
||||
fp0.exe
|
||||
|
||||
Nell'invio fatture è stato corretto il riferimento del nome di una colonna del PAF1100 (PA_DATADOCU). Veniva erroneamente chiamato PA_DATADOC
|
22
cd/test/fp1202a.ini
Normal file
22
cd/test/fp1202a.ini
Normal file
@ -0,0 +1,22 @@
|
||||
[Main]
|
||||
Demo=0
|
||||
|
||||
[fp0]
|
||||
File(0) = fp0.exe|X
|
||||
Patch = 1202
|
||||
Versione = 21511200
|
||||
|
||||
[fp99]
|
||||
Kill(0) = fppro.msk|x
|
||||
|
||||
[fp]
|
||||
Data = 05-10-2022
|
||||
Descrizione = Fattura Elettronica
|
||||
Dischi = 1
|
||||
Moduli = cg,ve
|
||||
OEM =
|
||||
Patch = 1202
|
||||
PostProcess =
|
||||
PreProcess =
|
||||
Versione = 21511200
|
||||
|
BIN
cd/test/fp1202a1.zip
Normal file
BIN
cd/test/fp1202a1.zip
Normal file
Binary file not shown.
3
cd/test/tp1198.txt
Normal file
3
cd/test/tp1198.txt
Normal file
@ -0,0 +1,3 @@
|
||||
tp0.exe
|
||||
|
||||
Aggiunto log di errori per le query di trasferimento pack. (Errore trasferimento ddt segnalato da VillaBrianBox)
|
21
cd/test/tp1198a.ini
Normal file
21
cd/test/tp1198a.ini
Normal file
@ -0,0 +1,21 @@
|
||||
[Main]
|
||||
Demo=0
|
||||
|
||||
[tp0]
|
||||
File(0) = tp0.exe|X
|
||||
Patch = 1198
|
||||
Versione = 21511200
|
||||
|
||||
[tp]
|
||||
Data = 27-09-2022
|
||||
Descrizione = Trasferimento PACK
|
||||
Dischi = 1
|
||||
Moduli = ve
|
||||
OEM =
|
||||
Patch = 1198
|
||||
PostProcess =
|
||||
PreProcess =
|
||||
Prezzo(1) =
|
||||
Prezzo(2) =
|
||||
Versione = 21511200
|
||||
|
BIN
cd/test/tp1198a1.zip
Normal file
BIN
cd/test/tp1198a1.zip
Normal file
Binary file not shown.
@ -415,7 +415,7 @@ bool TEffetti_mask::on_field_event(TOperable_field& o, TField_event e, long joll
|
||||
TCli_for & cf = (TCli_for &)cached_clifor(tipocf, codcf);
|
||||
const TString & iban = cf.get_iban();
|
||||
|
||||
if (iban.full())
|
||||
// if (iban.full())
|
||||
set(F_IBAN, iban, 0x3);
|
||||
|
||||
TToken_string& banp = cf.get_ban_pres();
|
||||
@ -457,6 +457,23 @@ bool TEffetti_mask::on_field_event(TOperable_field& o, TField_event e, long joll
|
||||
}
|
||||
return true;
|
||||
break;
|
||||
case F_IBAN_STATO:
|
||||
if (mode() == MODE_MOD && e == fe_init)
|
||||
{
|
||||
TRelation * rel = app().get_relation();
|
||||
|
||||
if (rel != nullptr)
|
||||
{
|
||||
TRectype & rec = rel->lfile().curr();
|
||||
|
||||
if (rec.get(EFF_IBAN).empty())
|
||||
{
|
||||
set(F_CODABI, rec.get(EFF_CODABI));
|
||||
set(F_CODCAB, rec.get(EFF_CODCAB));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
case F_DATASCAD:
|
||||
if (e == fe_close)
|
||||
{
|
||||
|
@ -45,7 +45,7 @@ bool TFppro::guess_the_doc(const TLocalisamfile& mov)
|
||||
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.empty())
|
||||
if (numdoc.blank())
|
||||
numdoc = mov.get(MOV_NUMDOC);
|
||||
// Controllo datadoc - numdoc - totdoc - p.iva
|
||||
|
||||
@ -58,11 +58,11 @@ bool TFppro::guess_the_doc(const TLocalisamfile& mov)
|
||||
"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);
|
||||
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;
|
||||
query << "PQ_IMPTOTDOC = " << tot;
|
||||
query << " AND \n" "P2_COCAZZO = '" << forn.get(CLI_COFI) << "'"; // cazzo;
|
||||
query << " AND \n" "PQ_IMPTOTDOC = " << tot;
|
||||
|
||||
if (_db->sq_set_exec(query) && _db->sq_items() == 1)
|
||||
{
|
||||
@ -119,6 +119,17 @@ TDate TFppro::get_datareg()
|
||||
return _db->sq_get_date("PZ_DATAREGCONT");
|
||||
}
|
||||
|
||||
TDate TFppro::get_datadoc()
|
||||
{
|
||||
if (!_is_set)
|
||||
{
|
||||
if (set_query())
|
||||
return _db->sq_get_date("PZ_DATA");
|
||||
return TDate();
|
||||
}
|
||||
return _db->sq_get_date("PZ_DATA");
|
||||
}
|
||||
|
||||
TDate TFppro::get_datareg(TToken_string& keys)
|
||||
{
|
||||
set_keys(keys);
|
||||
@ -188,7 +199,7 @@ bool TFppro::associa_mov(const long numreg)
|
||||
if (ok) // Scrivo sul movimento il riferimento al fppro
|
||||
{
|
||||
mov.put(MOV_IDDOCSDI, fppro_db().get_numdoc());
|
||||
mov.put(MOV_DATADOCSDI, fppro_db().get_numdoc());
|
||||
mov.put(MOV_DATADOCSDI, fppro_db().get_datadoc());
|
||||
mov.put(MOV_KEYFPPRO, get_keys_fppro());
|
||||
ok = mov.rewrite() == NOERR;
|
||||
}
|
||||
|
@ -59,6 +59,7 @@ public:
|
||||
long get_numreg(TToken_string& keys);
|
||||
long get_codforn();
|
||||
TDate get_datareg();
|
||||
TDate get_datadoc();
|
||||
TDate get_datareg(TToken_string& keys);
|
||||
real get_ritenute();
|
||||
TDate get_data_first_doc() const;
|
||||
|
@ -73,13 +73,16 @@ int TEstrai_mask::estrai()
|
||||
for (bool ok = mov.move_first(); progr->add_status() && ok; ok = mov.move_next())
|
||||
{
|
||||
TToken_string elab_f9(mov.get_string(MOV_ELABF9), ';'); // Stringa del campo elaborazione f9 nel file mov
|
||||
const bool escluso = !(elab_f9.items() == 3 && elab_f9.get_bool(2) || elab_f9.empty());
|
||||
const bool escluso = (elab_f9.items() == 3 && elab_f9.get_bool(2));
|
||||
const TCausale & caus = cached_causale(mov.get_string(MOV_CODCAUS), mov.get_date(MOV_DATAREG).year());
|
||||
const bool stampato = mov.get_bool(MOV_REGST);
|
||||
const TRegistro& reg = caus.reg();
|
||||
const TipoIVA& iva = reg.iva();
|
||||
TString numdoc = mov.get_string(MOV_NUMDOCEXT);
|
||||
|
||||
if (escluso)
|
||||
int here = 0;
|
||||
|
||||
if (numdoc.empty())
|
||||
numdoc = mov.get_string(MOV_NUMDOC);
|
||||
// Se definitivo controllo il flag di stampato REGST
|
||||
@ -222,10 +225,13 @@ TEstrai_mask::TEstrai_mask() : TMask("Estrazione", 1, 60, 16), _estrazione(nullp
|
||||
// TMonitor_mask
|
||||
////////////////////////////////////////////////////////
|
||||
|
||||
bool TMonitor_mask::save_conf_handler(TMask_field& f, KEY key)
|
||||
bool TMonitor_mask::save_conf(TMask& config_mask)
|
||||
{
|
||||
TMask& config_mask = f.mask();
|
||||
TString old_codsoc = F9CONF.get_ambiente();
|
||||
|
||||
TString new_lvl = config_mask.get(CF_LVLNEW);
|
||||
TString old_lvl = config_mask.get(CF_LVLOLD);
|
||||
|
||||
if(config_mask.get(CF_CODSOC).empty())
|
||||
warning_box("Codice Ambiente vuoto. Impossibile salvare i dati.");
|
||||
F9CONF.set_ambiente (config_mask.get(CF_CODSOC));
|
||||
@ -235,6 +241,20 @@ bool TMonitor_mask::save_conf_handler(TMask_field& f, KEY key)
|
||||
|
||||
config_mask.close();
|
||||
f9_app().edit_wa(old_codsoc);
|
||||
TLocalisamfile tabmod(LF_TABMOD);
|
||||
tabmod.put("MOD", "F9");
|
||||
tabmod.put("COD", "SQL");
|
||||
tabmod.put("CODTAB", "VERSION");
|
||||
tabmod.put("S0", real(new_lvl));
|
||||
|
||||
if (tabmod.write_rewrite() == NOERR)
|
||||
{
|
||||
config_mask.set(CF_LVLOLD, new_lvl);
|
||||
config_mask.set(CF_LVLNEW, "");
|
||||
message_box("Versione impostata!");
|
||||
}
|
||||
else
|
||||
return error_box("Impossibile aggiornare il livello degli archivi");
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -368,6 +388,42 @@ void TMonitor_mask::fill() const
|
||||
|
||||
}
|
||||
|
||||
bool TConfig_f9_mask::on_key(const KEY key)
|
||||
{
|
||||
if (key == K_SHIFT + K_F12)
|
||||
{
|
||||
if (run_fp_psw_mask())
|
||||
{
|
||||
enable(CF_LVLNEW);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool TConfig_f9_mask::on_field_event(TOperable_field& o, TField_event e, long jolly)
|
||||
{
|
||||
switch (o.dlg())
|
||||
{
|
||||
case CF_LVLNEW:
|
||||
if (e == fe_close)
|
||||
{
|
||||
TMask& config_mask = o.mask();
|
||||
TString new_lvl = config_mask.get(CF_LVLNEW);
|
||||
TString old_lvl = config_mask.get(CF_LVLOLD);
|
||||
|
||||
if (new_lvl.empty())
|
||||
return o.error_box("Livello Patch non conforme. Impossibile aggiornare");
|
||||
|
||||
if (new_lvl > old_lvl)
|
||||
return o.error_box("Per impostare un livello patch superiore dell'attuale\nè sufficente riavviare il programma.");
|
||||
}
|
||||
|
||||
break;
|
||||
default: break;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool TMonitor_mask::on_field_event(TOperable_field& o, TField_event e, long jolly)
|
||||
{
|
||||
switch (o.dlg())
|
||||
@ -452,7 +508,14 @@ void TMonitor_mask::open_win_estr()
|
||||
|
||||
void TMonitor_mask::open_win_conf()
|
||||
{
|
||||
TMask m("Configurazione Archiviazione Sostitutiva", 1, 70, 20);
|
||||
TConfig_f9_mask m("Configurazione Archiviazione Sostitutiva", 1, 70, 30, 55, 5);
|
||||
|
||||
TLocalisamfile tabmod(LF_TABMOD);
|
||||
tabmod.put("MOD", "F9");
|
||||
tabmod.put("COD", "SQL");
|
||||
tabmod.put("CODTAB", "VERSION");
|
||||
const bool exists = tabmod.read() == NOERR;
|
||||
int version = exists ? real(tabmod.get(TABMOD_TABVER)).integer() : TAB_BASE_VERSION - 2;
|
||||
|
||||
m.add_button_tool(DLG_OK, "Conferma", TOOL_OK);
|
||||
m.add_button_tool(DLG_NULL, "", 0);
|
||||
@ -465,14 +528,22 @@ void TMonitor_mask::open_win_conf()
|
||||
m.add_string (CF_ADDRDOCLOC, 0, "Locale ", 2, 5, 256, "", 40);
|
||||
m.add_groupbox (CF_ESTRGROUP, 0, "Opzioni estrazione", 1, 7, 69, 4, "");
|
||||
m.add_boolean (CF_CARTEXP, 0, "Estrai anche documenti cartacei", 2, 8);
|
||||
|
||||
m.set_handler(DLG_OK, save_conf_handler);
|
||||
m.add_groupbox (CF_LVLGROUP, 0, "Livello Patch Tabelle F9", 1, 11, 69, 4, "");
|
||||
m.add_string (CF_LVLOLD, 0, "Livello Attuale", 35, 12, 10, "D", 10);
|
||||
m.add_string (CF_LVLNEW, 0, "Nuovo Livello ", 2, 12, 10, "D", 10);
|
||||
m.set_handlers();
|
||||
|
||||
m.set(CF_CODSOC, F9CONF.get_ambiente());
|
||||
m.set(CF_ADDRDOC, F9CONF.get_addr_doc());
|
||||
m.set(CF_ADDRDOCLOC, F9CONF.get_addr_doc_loc());
|
||||
m.set(CF_CARTEXP, F9CONF.get_has_cartexp());
|
||||
m.run();
|
||||
m.set(CF_LVLOLD, version);
|
||||
|
||||
|
||||
m.disable(CF_LVLOLD);
|
||||
if(m.run()==K_ENTER)
|
||||
save_conf(m);
|
||||
|
||||
}
|
||||
|
||||
void TMonitor_mask::sel() const
|
||||
@ -558,6 +629,7 @@ void TControllo_mask::conferma_esclusi() const
|
||||
query << "UPDATE " F9_ERR " SET ESCLUSO = 'Si' WHERE " ERR_CODSOC " = '" << _cod_soc << "' AND IDESTR = '" <<
|
||||
_id_estr << "' AND NUMREG = '" << nreg << "';";
|
||||
fp_db().sq_set_exec(query);
|
||||
fp_db().sq_commit();
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -571,6 +643,7 @@ void TControllo_mask::conferma_esclusi() const
|
||||
query << "UPDATE " F9_ERR " SET ESCLUSO = NULL WHERE " ERR_CODSOC " = '" << _cod_soc << "' AND IDESTR = '" <<
|
||||
_id_estr << "' AND NUMREG = '" << nreg << "';";
|
||||
fp_db().sq_set_exec(query);
|
||||
fp_db().sq_commit();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -628,10 +701,7 @@ void TControllo_mask::fill_fppro_sheet() const
|
||||
TString query;
|
||||
query << "SELECT PQ_KEYPRGINVIO AS KEYPRGINVIO, PQ_KEYHEADERFATT AS KEYHEADERFATT, PQ_KEYBODYFATT AS KEYBODYFATT,\n" <<
|
||||
"PZ_TIPODOC AS TIPODOC, P7_DATA AS DATA, P7_NUMERO AS NUMDOC, PQ_IMPTOTDOC AS IMPTOTDOC,\n" <<
|
||||
"CASE\n" <<
|
||||
"WHEN PZ_CLIFOR <> '' THEN CAST(PZ_CLIFOR AS NUMERIC(10, 0))\n" <<
|
||||
"WHEN PZ_CLIFOR = '' THEN 0\n" <<
|
||||
"END AS FORNITORE, " <<
|
||||
"PZ_CLIFOR AS FORNITORE, " <<
|
||||
"P2_ANADENOMIN AS RAGSOC, 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" <<
|
||||
@ -1017,6 +1087,7 @@ void TApri_estr_msk::fill_res() const
|
||||
{
|
||||
TString query;
|
||||
query << "SELECT * FROM " F9_MOVESTR "\n"
|
||||
"INNER JOIN " F9_IVA " ON " IVA_IDLAN " = " MES_IDESTR " AND " IVA_NUMOR " = " MES_NUMREG "\n"
|
||||
"WHERE " MES_CODSOC " = '" << F9CONF.get_ambiente() << "' AND " MES_IDESTR " = '" << _idestr << "'";
|
||||
|
||||
fp_db().sq_set_exec(query, false);
|
||||
@ -1026,18 +1097,21 @@ void TApri_estr_msk::fill_res() const
|
||||
sf.reset();
|
||||
for (bool ok = fp_db().sq_next(); prog.add_status() && ok; ok = fp_db().sq_next())
|
||||
{
|
||||
|
||||
TString td = fp_db().sq_get(IVA_CAUSSOS);
|
||||
const TRectype & mov = cache().get(LF_MOV, fp_db().sq_get(MES_NUMREG));
|
||||
const int row = sf.set_row_cell(F_RSEL, fp_db().sq_get_int(MES_ESTR) ? "X" : " "); // Estratto
|
||||
|
||||
sf.set_row_cell(F_RNUMREG, mov.get(MOV_NUMREG), row); // Numreg
|
||||
sf.set_row_cell(F_RNUMREG, mov.get(MOV_NUMREG), row); // Numreg
|
||||
sf.set_row_cell(F_RDATAREG, mov.get_date(MOV_DATAREG), row); // Data reg
|
||||
sf.set_row_cell(F_RDATADOC, mov.get_date(MOV_DATADOC), row); // Data doc
|
||||
sf.set_row_cell(F_RTIPODOCSDI, td, row); // Tipo Doc SDI
|
||||
sf.set_row_cell(F_RCODCAUS, mov.get(MOV_CODCAUS), row); // Cod caus
|
||||
sf.set_row_cell(F_RTIPOMOV, mov.get(MOV_TIPODOC), row); // Tipo doc
|
||||
sf.set_row_cell(F_RMESELIQ, mov.get_int(MOV_MESELIQ), row); // Mese liq
|
||||
sf.set_row_cell(F_RNUMDOC, mov.get(MOV_NUMDOC), row); // Num doc
|
||||
sf.set_row_cell(F_RIMPTOTDOC, mov.get_real(MOV_TOTDOC), row); // Tot doc
|
||||
sf.set_row_cell(F_RFORN, mov.get_int(MOV_CODCF), row); // Clifo
|
||||
sf.set_row_cell(F_RNUMDOC, mov.get(MOV_NUMDOC), row); // Num doc
|
||||
sf.set_row_cell(F_RIMPTOTDOC, mov.get_real(MOV_TOTDOC), row); // Tot doc
|
||||
sf.set_row_cell(F_RFORN, mov.get_int(MOV_CODCF), row); // Clifo
|
||||
|
||||
TToken_string key(mov.get(MOV_TIPO));
|
||||
|
||||
@ -1462,6 +1536,9 @@ bool TF9_app::check_tab_version() const
|
||||
int version = exists ? real(tabmod.get(TABMOD_TABVER)).integer() : TAB_BASE_VERSION - 2;
|
||||
if (version < SQL_VERSION) // Controllo la versione
|
||||
{
|
||||
if(version<TAB_BASE_VERSION)
|
||||
version = TAB_BASE_VERSION;
|
||||
|
||||
for (; version < SQL_VERSION; version += 2) // Effettuo le modifiche per ogni avanzamento di versione
|
||||
{
|
||||
if (ok &= aggiorna_tab_f9(version + 2))
|
||||
|
@ -74,7 +74,10 @@ class TMonitor_mask : public TAutomask
|
||||
TApri_estr_msk _inclusi_mask;
|
||||
|
||||
// Configurazione mask
|
||||
static bool save_conf_handler(TMask_field& f, KEY key);
|
||||
bool save_conf(TMask& m);
|
||||
|
||||
// Forza Aggiornamento LVL Patch delle tabelle F9
|
||||
static bool update_table_level(TMask_field& f, KEY key);
|
||||
|
||||
// Metodi per la maschera 'Apri Estr.'
|
||||
|
||||
@ -84,10 +87,10 @@ class TMonitor_mask : public TAutomask
|
||||
void controllo_errori() const;
|
||||
static void delete_estr_fld(const TString& idestr);
|
||||
void delete_pack(bool all = false) const;
|
||||
|
||||
|
||||
bool on_field_event(TOperable_field& o, TField_event e, long jolly) override;
|
||||
static void open_win_estr();
|
||||
static void open_win_conf();
|
||||
void open_win_conf();
|
||||
void sel() const;
|
||||
|
||||
public:
|
||||
@ -98,6 +101,19 @@ public:
|
||||
~TMonitor_mask() {}
|
||||
};
|
||||
|
||||
class TConfig_f9_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)
|
||||
TConfig_f9_mask(const char* filename, int num = 0) : TAutomask(filename, num) {};
|
||||
// @cmember Costruttore (crea una maschera vuota con i parametri dati)
|
||||
TConfig_f9_mask(const char* title, int pages, int cols, int rows, int xpos = -1, int ypos = -1) : TAutomask(title, pages, cols, rows, xpos, ypos) {};
|
||||
};
|
||||
|
||||
class TControllo_mask : public TAutomask
|
||||
{
|
||||
TArray _controllo_mov; // Usare import_error_list().
|
||||
|
@ -52,6 +52,11 @@
|
||||
#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
|
||||
|
@ -35,13 +35,14 @@
|
||||
#define F_RNUMREG 102
|
||||
#define F_RDATAREG 103
|
||||
#define F_RDATADOC 104
|
||||
#define F_RCODCAUS 105
|
||||
#define F_RTIPOMOV 106
|
||||
#define F_RMESELIQ 107
|
||||
#define F_RNUMDOC 108
|
||||
#define F_RIMPTOTDOC 109
|
||||
#define F_RFORN 110
|
||||
#define F_RRAGSOC 111
|
||||
#define F_RPROTIVA 112
|
||||
#define F_RDESCR 113
|
||||
#define F_RDESCRERR 114
|
||||
#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
|
||||
|
@ -138,8 +138,9 @@ BEGIN
|
||||
ITEM "Numero\nReg.@8"
|
||||
ITEM "Data\nReg.@8"
|
||||
ITEM "Data\nDoc.@8"
|
||||
ITEM "Tipo Doc\nSDI@9"
|
||||
ITEM "Codice\nCaus.@8"
|
||||
ITEM "Tipo Doc.@5"
|
||||
ITEM "Tipo Mov.@5"
|
||||
ITEM "Mese\nliquidazione@8"
|
||||
ITEM "Numero\nDocumento@8"
|
||||
ITEM "Totale\nDocumento@8"
|
||||
@ -305,63 +306,69 @@ BEGIN
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_RCODCAUS 3
|
||||
STRING F_RTIPODOCSDI 4
|
||||
BEGIN
|
||||
PROMPT 1 5 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_RTIPOMOV 3
|
||||
STRING F_RCODCAUS 3
|
||||
BEGIN
|
||||
PROMPT 1 6 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMERIC F_RMESELIQ 2
|
||||
STRING F_RTIPOMOV 3
|
||||
BEGIN
|
||||
PROMPT 1 7 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_RNUMDOC 50
|
||||
NUMERIC F_RMESELIQ 2
|
||||
BEGIN
|
||||
PROMPT 1 8 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMERIC F_RIMPTOTDOC 15 2
|
||||
STRING F_RNUMDOC 50
|
||||
BEGIN
|
||||
PROMPT 1 9 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
NUMERIC F_RFORN 6
|
||||
NUMERIC F_RIMPTOTDOC 15 2
|
||||
BEGIN
|
||||
PROMPT 1 10 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_RRAGSOC 80
|
||||
NUMERIC F_RFORN 6
|
||||
BEGIN
|
||||
PROMPT 1 11 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_RPROTIVA 10
|
||||
STRING F_RRAGSOC 80
|
||||
BEGIN
|
||||
PROMPT 1 12 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRING F_RDESCR 50
|
||||
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 13 ""
|
||||
PROMPT 1 15 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
|
@ -638,6 +638,8 @@ bool TEstrazione::insert_into_f9movestr() const
|
||||
|
||||
TProgress_monitor prog(_movs.size(), "Salvataggio informazioni estrazione", false);
|
||||
|
||||
//QUI ANDRA' CONTROLLATO IL PAFW300
|
||||
|
||||
FOR_EACH_ARRAY_ITEM(_movs, r, obj)
|
||||
{
|
||||
if(prog.add_status())
|
||||
@ -798,6 +800,7 @@ const char* TEstrazione::diagnostica_mov()
|
||||
TMovimento_estr & mov_i = (TMovimento_estr &)*obj;
|
||||
|
||||
// Se gia' escluso passo avanti
|
||||
|
||||
if (!mov_i.estratto() && mov_i.descr_estr() == mov_escluso)
|
||||
continue;
|
||||
|
||||
@ -1115,6 +1118,7 @@ bool TEstrazione::estrazione_iva(bool escluso)
|
||||
iva_query.add(IVA_DOCXML, mov_i.cartaceo() ? 'N' : 'S');
|
||||
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);
|
||||
@ -1125,7 +1129,22 @@ bool TEstrazione::estrazione_iva(bool escluso)
|
||||
const TRegistro& reg = cached_registro(mov.get(MOV_REG), mov.get_int(MOV_ANNOIVA));
|
||||
|
||||
if (reg.iva() == iva_vendite)
|
||||
iva_query.add(IVA_CAUSSOS, mov_i.catdoc(categorie_doc())->caus_sost(), 6); //
|
||||
{
|
||||
int anno = mov.get_int(MOV_DANNO);
|
||||
|
||||
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
|
||||
iva_query.add(IVA_CAUSSOS, mov_i.catdoc(categorie_doc())->caus_sost(), 6);
|
||||
}
|
||||
//
|
||||
else
|
||||
{
|
||||
TToken_string key(mov.get((MOV_KEYFPPRO)), ';');
|
||||
|
@ -1,10 +1,28 @@
|
||||
IF NOT EXISTS(SELECT 1 FROM sys.columns
|
||||
WHERE Name = N'F9IURIC'
|
||||
AND Object_ID = Object_ID(N'F9IVA00K'))
|
||||
BEGIN
|
||||
ALTER TABLE F9IVA00K ADD F9IDDES CHAR(30) NOT NULL DEFAULT '',
|
||||
F9ITPRT CHAR(2) NOT NULL DEFAULT '',
|
||||
F9IAPRT NUMERIC(4,0) NOT NULL DEFAULT 0,
|
||||
F9INPRT NUMERIC(10,0) NOT NULL DEFAULT 0,
|
||||
F9IURIC DATETIME NOT NULL DEFAULT getdate()
|
||||
END;
|
||||
IF NOT EXISTS(SELECT 1 FROM sys.columns WHERE Name = N'F9IDDES' AND Object_ID = Object_ID(N'F9IVA00K'))
|
||||
ALTER TABLE F9IVA00K ADD F9IDDES CHAR(30) NOT NULL DEFAULT ''
|
||||
ELSE
|
||||
SELECT 1 AS EXIST;
|
||||
|
||||
|
||||
IF NOT EXISTS(SELECT 1 FROM sys.columns WHERE Name = N'F9ITPRT' AND Object_ID = Object_ID(N'F9IVA00K'))
|
||||
ALTER TABLE F9IVA00K ADD F9ITPRT CHAR(2) NOT NULL DEFAULT ''
|
||||
ELSE
|
||||
SELECT 1 AS EXIST;
|
||||
|
||||
|
||||
IF NOT EXISTS(SELECT 1 FROM sys.columns WHERE Name = N'F9IAPRT' AND Object_ID = Object_ID(N'F9IVA00K'))
|
||||
ALTER TABLE F9IVA00K ADD F9IAPRT NUMERIC(4,0) NOT NULL DEFAULT 0
|
||||
ELSE
|
||||
SELECT 1 AS EXIST;
|
||||
|
||||
|
||||
IF NOT EXISTS(SELECT 1 FROM sys.columns WHERE Name = N'F9INPRT' AND Object_ID = Object_ID(N'F9IVA00K'))
|
||||
ALTER TABLE F9IVA00K ADD F9INPRT NUMERIC(10,0) NOT NULL DEFAULT 0
|
||||
ELSE
|
||||
SELECT 1 AS EXIST;
|
||||
|
||||
|
||||
IF NOT EXISTS(SELECT 1 FROM sys.columns WHERE Name = N'F9IURIC' AND Object_ID = Object_ID(N'F9IVA00K'))
|
||||
ALTER TABLE F9IVA00K ADD F9IURIC DATETIME NOT NULL DEFAULT getdate()
|
||||
ELSE
|
||||
SELECT 1 AS EXIST;
|
||||
|
@ -1,17 +1,26 @@
|
||||
IF NOT EXISTS(SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'F9DRT00K' and COLUMN_NAME = 'F9TFCEE')
|
||||
ALTER TABLE F9DRT00K ADD F9TFCEE CHAR(6) NOT NULL DEFAULT '';
|
||||
|
||||
CREATE TABLE F9MOVESTR(
|
||||
IDSOC CHAR(10) NOT NULL,
|
||||
IDESTR CHAR(18) NOT NULL,
|
||||
NUMREG NUMERIC(7,0) NOT NULL,
|
||||
DATAREG DATE,
|
||||
ESTRATTO BIT DEFAULT '0' NOT NULL,
|
||||
DESCR_ERR VARCHAR(1024)
|
||||
);
|
||||
ALTER TABLE F9MOVESTR ADD CONSTRAINT F9MOVESTR_PK PRIMARY KEY(IDSOC, IDESTR, NUMREG);
|
||||
IF NOT EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 'F9MOVESTR')
|
||||
CREATE TABLE F9MOVESTR(
|
||||
IDSOC CHAR(10) NOT NULL,
|
||||
IDESTR CHAR(18) NOT NULL,
|
||||
NUMREG NUMERIC(7,0) NOT NULL,
|
||||
DATAREG DATE,
|
||||
ESTRATTO BIT DEFAULT '0' NOT NULL,
|
||||
DESCR_ERR VARCHAR(1024)
|
||||
)
|
||||
ELSE
|
||||
SELECT 1 AS EXIST;
|
||||
|
||||
|
||||
IF NOT EXISTS(SELECT * FROM INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE WHERE TABLE_NAME = 'F9MOVESTR' AND CONSTRAINT_NAME = 'F9MOVESTR_PK' )
|
||||
ALTER TABLE F9MOVESTR ADD CONSTRAINT F9MOVESTR_PK PRIMARY KEY(IDSOC, IDESTR, NUMREG);
|
||||
|
||||
IF NOT EXISTS(SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'F9ERROR' AND COLUMN_NAME = 'IDSOC')
|
||||
ALTER TABLE F9ERROR ADD IDSOC CHAR(10) NOT NULL DEFAULT '';
|
||||
|
||||
|
||||
ALTER TABLE F9ERROR ADD IDSOC CHAR(10) NOT NULL DEFAULT '';
|
||||
DECLARE @name nvarchar(128), @sql NVARCHAR(MAX)
|
||||
SELECT @name = name
|
||||
FROM sys.key_constraints
|
||||
@ -21,4 +30,5 @@ SELECT @sql = 'ALTER TABLE F9ERROR DROP CONSTRAINT ' + @name
|
||||
|
||||
EXEC sp_executeSQL @sql;
|
||||
|
||||
ALTER TABLE F9ERROR ADD CONSTRAINT F9ERROR_PK PRIMARY KEY(IDSOC, IDESTR, NUMREG);
|
||||
IF NOT EXISTS(SELECT * FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS WHERE TABLE_NAME = 'F9ERROR' AND CONSTRAINT_NAME = 'F9ERROR_PK')
|
||||
ALTER TABLE F9ERROR ADD CONSTRAINT F9ERROR_PK PRIMARY KEY(IDSOC, IDESTR, NUMREG);
|
||||
|
@ -497,7 +497,7 @@ void TPAR_mask::export_paf()
|
||||
void TPAR_mask::print_reg()
|
||||
{
|
||||
TSheet_field& sht = sfield(F_REGS);
|
||||
const TString &tipo_doc_sdi = get(F_TIPO_SDI);
|
||||
//const TString &tipo_doc_sdi = get(F_TIPO_SDI);
|
||||
TReport_book book;
|
||||
|
||||
//elab.set_cache_insert(true);
|
||||
@ -513,12 +513,20 @@ void TPAR_mask::print_reg()
|
||||
if (sht.get_bool_row_cell(r, S_SELECTED))
|
||||
{
|
||||
const long nreg = sht.get_long_row_cell(r, S_NUMREG);
|
||||
TProgram_report mov_rep("fp0700a");
|
||||
|
||||
TProgram_report mov_rep;
|
||||
const TString &td = sht.get_str_row_cell(r, S_TIPODOC);
|
||||
|
||||
if (td != "TD28")
|
||||
mov_rep.load("fp0700a");
|
||||
else
|
||||
mov_rep.load("fp0700b");
|
||||
|
||||
TISAM_recordset * recset = (TISAM_recordset *)mov_rep.recordset();
|
||||
const TRectype & mov = cache().get(LF_MOV, nreg);
|
||||
|
||||
recset->set_var("#NUM", nreg, true);
|
||||
recset->set_var("#TIPODOCSDI", tipo_doc_sdi, true);
|
||||
recset->set_var("#TIPODOCSDI", td, true);
|
||||
|
||||
const TCausale & caus = cached_causale(mov.get(MOV_CODCAUS), mov.get_int(MOV_ANNOES));
|
||||
|
||||
|
147
src/fp/fp0700b.rep
Normal file
147
src/fp/fp0700b.rep
Normal file
@ -0,0 +1,147 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<report libraries="" page_merge="" save_printer="" name="fp0700b" use_printer_font="" orientation="" page_split="" lpi="6" command="" class="">
|
||||
<font face="Arial" size="8" />
|
||||
<section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Head" level="" hidden="" page_break="" can_break="" pattern="1">
|
||||
<field x="3" y="2" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="16" codval="" id="" pattern="1" hide_zero="" text="">
|
||||
<font face="Arial" bold="1" size="8" />
|
||||
<source>"Codice fornitore: "</source>
|
||||
</field>
|
||||
<field x="19" y="2" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="30" codval="" id="" pattern="1" hide_zero="" text="">
|
||||
<source>23.TIPO + 23.CODCF</source>
|
||||
</field>
|
||||
<field x="60" y="2" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="30" codval="" id="" pattern="1" hide_zero="" text="">
|
||||
<source>"Partita IVA " + 20.STATOPAIV + 20.PAIV</source>
|
||||
</field>
|
||||
<field x="3" y="3" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="25" codval="" id="" pattern="1" hide_zero="" text="">
|
||||
<font face="Arial" bold="1" size="8" />
|
||||
<source>"Doc. originale fornitore: "</source>
|
||||
</field>
|
||||
<field x="24" y="3" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="44" codval="" id="" pattern="1" hide_zero="" text="">
|
||||
<source>23.NUMDOC + " del " + 23.DATADOC</source>
|
||||
</field>
|
||||
<field x="60" y="3" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="50" codval="" id="" pattern="1" hide_zero="" text="">
|
||||
<source>20.RAGSOC</source>
|
||||
</field>
|
||||
<field x="60" y="4" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="50" codval="" id="" pattern="1" hide_zero="" text="">
|
||||
<source>20.INDCF + " n. " + 20.CIVCF</source>
|
||||
</field>
|
||||
<field x="3" y="5" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="15" codval="" id="" pattern="1" hide_zero="" text="">
|
||||
<font face="Arial" bold="1" size="8" />
|
||||
<source>"Tipo Documento "</source>
|
||||
<alt_source>#TIPODOCSDI</alt_source>
|
||||
</field>
|
||||
<field x="18" y="5" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="25" codval="" id="" pattern="1" hide_zero="" text="">
|
||||
<source>CAUS.TIPODOCSDI</source>
|
||||
<alt_source>#TIPODOCSDI</alt_source>
|
||||
</field>
|
||||
<field x="60" y="5" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="5" codval="" id="" pattern="1" hide_zero="" text="">
|
||||
<source>20.CAPCF</source>
|
||||
</field>
|
||||
<field x="67" y="5" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="40" codval="" id="" pattern="1" hide_zero="" text="">
|
||||
<source>13.DENCOM + " " + 13.PROVCOM</source>
|
||||
</field>
|
||||
<field x="3" y="9" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="21" codval="" id="" pattern="1" hide_zero="" text="">
|
||||
<font face="Arial" bold="1" size="8" />
|
||||
<source>"Protocollo IVA credito: "</source>
|
||||
</field>
|
||||
<field x="23" y="9" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="40" codval="" id="" pattern="1" hide_zero="" text="">
|
||||
<source>23.PROTIVA + " del " + 23.DATAREG + " Registro " + 23.REG</source>
|
||||
</field>
|
||||
<field x="60" y="9" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="19" codval="" id="" pattern="1" hide_zero="" text="">
|
||||
<font face="Arial" bold="1" size="8" />
|
||||
<source>"Documento fornitore:" </source>
|
||||
</field>
|
||||
<field x="79.5" y="9" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="41" codval="" id="" pattern="1" hide_zero="" text="">
|
||||
<source>#NUMPREFIX + 23.NUMDOC + " del " + 23.DATADOC</source>
|
||||
</field>
|
||||
<field x="3" y="12" deactivated="" type="Testo" hidden="" link="" dynamic_height="" shade_offset="" width="16" codval="" id="" pattern="1" hide_zero="" text="Totale Documento">
|
||||
<font face="Arial" bold="1" size="8" />
|
||||
</field>
|
||||
<field x="16" y="12" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="16" codval="" id="" pattern="1" hide_zero="1" text="###.###.###,@@">
|
||||
<source>23.TOTDOC</source>
|
||||
</field>
|
||||
<field x="17" y="14" deactivated="" type="Testo" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="15" codval="" id="" pattern="1" hide_zero="" text="Totale">
|
||||
<font face="Arial" bold="1" size="8" />
|
||||
</field>
|
||||
<field x="33" y="14" deactivated="" type="Testo" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="15" codval="" id="" pattern="1" hide_zero="" text="Imponibile">
|
||||
<font face="Arial" bold="1" size="8" />
|
||||
</field>
|
||||
<field x="49" y="14" deactivated="" type="Testo" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="15" codval="" id="" pattern="1" hide_zero="" text="Imposta">
|
||||
<font face="Arial" bold="1" size="8" />
|
||||
</field>
|
||||
<field x="68" y="14" deactivated="" type="Testo" hidden="" link="" dynamic_height="" shade_offset="" width="4" codval="" id="" pattern="1" hide_zero="" text="Cod.">
|
||||
<font face="Arial" bold="1" size="8" />
|
||||
</field>
|
||||
<field x="73" y="14" deactivated="" type="Testo" hidden="" link="" dynamic_height="" shade_offset="" width="4" codval="" id="" pattern="1" hide_zero="" text="Nat.">
|
||||
<font face="Arial" bold="1" size="8" />
|
||||
</field>
|
||||
<field x="79" y="14" deactivated="" type="Testo" hidden="" link="" dynamic_height="" shade_offset="" width="15" codval="" id="" pattern="1" hide_zero="" text="Conto">
|
||||
<font face="Arial" bold="1" size="8" />
|
||||
</field>
|
||||
<field border="2" y="15" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" width="125" codval="" height="0" id="" pattern="1" hide_zero="" text="" />
|
||||
</section>
|
||||
<section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Head" level="1" hidden="" height="4" page_break="" can_break="" pattern="1">
|
||||
<field x="11" deactivated="" type="Testo" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="90" codval="" height="3" id="" pattern="1" hide_zero="" text="PROSPETTO INTEGRAZIONE">
|
||||
<font face="Arial" bold="1" size="20" />
|
||||
</field>
|
||||
<field x="11" y="2" deactivated="" type="Testo" hidden="" align="center" link="" dynamic_height="" shade_offset="" width="90" codval="" height="3" id="" pattern="1" hide_zero="" text="ACQUISTO SANMARINO">
|
||||
<font face="Arial" bold="1" size="20" />
|
||||
</field>
|
||||
</section>
|
||||
<section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Body" level="" hidden="" page_break="" can_break="" pattern="1" />
|
||||
<section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Body" level="1" hidden="" page_break="" can_break="" pattern="1">
|
||||
<field x="68" y="0.5" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="4" codval="" id="" pattern="1" hide_zero="" text="">
|
||||
<source>CODIVA</source>
|
||||
</field>
|
||||
<field x="73" y="0.5" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="4" codval="" id="" pattern="1" hide_zero="" text="">
|
||||
<source>201@-E;S12</source>
|
||||
</field>
|
||||
<field x="94.5" y="0.5" deactivated="" type="Stringa" hidden="" link="" dynamic_height="1" shade_offset="" width="30" codval="" height="2" id="" pattern="1" hide_zero="" text="">
|
||||
<source>19-E;DESCR</source>
|
||||
</field>
|
||||
<field x="33" y="0.5" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="15" codval="" id="100" pattern="1" hide_zero="" text="###.###.###,@@">
|
||||
<source>IMPONIBILE</source>
|
||||
<postscript description="B1.100 POSTSCRIPT">#THIS @
|
||||
#F1.100 +!</postscript>
|
||||
</field>
|
||||
<field x="49" y="0.5" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="15" codval="" id="101" pattern="1" hide_zero="" text="###.###.###,@@">
|
||||
<source>IMPOSTA</source>
|
||||
<postscript description="B1.101 POSTSCRIPT">#THIS @
|
||||
#F1.101 +!</postscript>
|
||||
</field>
|
||||
<field x="17" y="0.5" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="15" codval="" id="102" pattern="1" hide_zero="" text="###.###.###,@@">
|
||||
<source>#100+#101</source>
|
||||
</field>
|
||||
<field x="79.5" y="0.5" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="3" codval="" id="103" pattern="1" hide_zero="" text="">
|
||||
<source>GRUPPO</source>
|
||||
</field>
|
||||
<field x="83.5" y="0.5" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="3" codval="" id="104" pattern="1" hide_zero="" text="">
|
||||
<source>CONTO</source>
|
||||
</field>
|
||||
<field x="87.5" y="0.5" deactivated="" type="Stringa" hidden="" link="" dynamic_height="" shade_offset="" width="6" codval="" id="105" pattern="1" hide_zero="" text="">
|
||||
<source>SOTTOCONTO</source>
|
||||
</field>
|
||||
</section>
|
||||
<section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Foot" level="" hidden="" page_break="" can_break="" pattern="1" />
|
||||
<section repeat="" keep_with_next="" deactivated="" hidden_if_needed="" type="Foot" level="1" hidden="" height="3" page_break="" can_break="" pattern="1">
|
||||
<field border="1" y="0.25" deactivated="" type="Linea" hidden="" link="" dynamic_height="" shade_offset="" width="125" codval="" height="0" id="" pattern="1" hide_zero="" text="" />
|
||||
<field x="1" y="0.5" deactivated="" type="Testo" hidden="" link="" txt_color="#0000FF" dynamic_height="" shade_offset="" width="15" codval="" id="" pattern="1" hide_zero="" text="Totale Movimento">
|
||||
<font face="Arial" bold="1" size="8" />
|
||||
</field>
|
||||
<field x="33" y="0.5" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="15" codval="" id="100" pattern="1" hide_zero="" text="###.###.###,@@" />
|
||||
<field x="49" y="0.5" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="15" codval="" id="101" pattern="1" hide_zero="" text="###.###.###,@@" />
|
||||
<field x="17" y="0.5" deactivated="" type="Valuta" hidden="" align="right" link="" dynamic_height="" shade_offset="" width="15" codval="" id="102" pattern="1" hide_zero="" text="###.###.###,@@">
|
||||
<source>#100+#101</source>
|
||||
</field>
|
||||
</section>
|
||||
<sql>USE RMOVIVA
|
||||
JOIN MOV INTO NUMREG==NUMREG
|
||||
JOIN MOV TO MOV ALIAS 100 INTO NUMREG==MOVCOLL
|
||||
JOIN CLIFO TO MOV INTO TIPOCF==TIPO CODCF==CODCF
|
||||
JOIN COMUNI TO CLIFO INTO STATO==STATOCF COM==COMCF
|
||||
JOIN PCON INTO GRUPPO==GRUPPO CONTO==CONTO SOTTOCONTO==SOTTOCONTO
|
||||
JOIN %IVA ALIAS 201 INTO CODTAB==CODIVA
|
||||
JOIN CAUS TO MOV INTO CODCAUS==CODCAUS
|
||||
FROM NUMREG=#NUM
|
||||
TO NUMREG=#NUM</sql>
|
||||
</report>
|
@ -24,6 +24,7 @@
|
||||
#include <mov.h>
|
||||
#include "../cg/cgsaldac.h"
|
||||
#include <scadenze.h>
|
||||
#include <utility.h>
|
||||
|
||||
bool set_connection(SSimple_query& s)
|
||||
{
|
||||
@ -64,7 +65,7 @@ bool run_fp_psw_mask()
|
||||
m.field(101).check_type(CHECK_REQUIRED);
|
||||
while (m.run() == K_ENTER)
|
||||
{
|
||||
if (m.get(101) == "sirioFATT99") // Hardcoded password are the best!
|
||||
if (m.get(101) == "sirioFATT99"||(is_power_station())) // Hardcoded password are the best!
|
||||
return true;
|
||||
else
|
||||
return error_box("Password errata");
|
||||
@ -2098,7 +2099,7 @@ bool TDoc_fp::doc_to_paf(TDocumentoEsteso& doc)
|
||||
{
|
||||
paf1100f.set("PA_RIFNUMLINEA", 0L);
|
||||
paf1100f.set("PA_IDDOC", con);
|
||||
paf1100f.set("PA_DATADOC", datadoc);
|
||||
paf1100f.set("PA_DATADOCU", datadoc);
|
||||
paf1100f.set("PA_COMMCONVENZ", com);
|
||||
paf1100f.set("PA_CODCUP", cup);
|
||||
paf1100f.set("PA_CODCIG", cig);
|
||||
@ -3315,6 +3316,9 @@ bool TReg_fp::add_riepilogo_iva(const TMovimento_contabile & mov, int n_riga)
|
||||
riepilogo_agg.imponibile += imponibile;
|
||||
riepilogo_agg.imposta += imposta;
|
||||
|
||||
// Elimino l'oggetto
|
||||
_riepilogo_agg.erase(cod_aliquota);
|
||||
|
||||
// Inserisco
|
||||
return insert(paf2200f);
|
||||
}
|
||||
@ -3329,8 +3333,8 @@ bool TReg_fp::export_paf0100f()
|
||||
paf0100f.set("P1_TRASMITTCOD", _cofi);
|
||||
paf0100f.set("P1_FMTTRASMISS", _privato ? "FPR12" : "FPA12");
|
||||
|
||||
if(_tipo_doc_sdi != "TD28")
|
||||
paf0100f.set("P1_CODDEST", _coddest);
|
||||
//if(_tipo_doc_sdi != "TD28")
|
||||
paf0100f.set("P1_CODDEST", _coddest);
|
||||
|
||||
TString80 tel;
|
||||
|
||||
@ -3418,7 +3422,17 @@ bool TReg_fp::reg_to_paf(const TMovimento_contabile& mov)
|
||||
paf0200f.set("P2_FISCIVAPAESE", fornitore.stato_partita_IVA());
|
||||
paf0200f.set("P2_FISCIVACOD", fornitore.partita_IVA());
|
||||
}
|
||||
paf0200f.set("P2_CODFISCALE", fornitore.codice_fiscale());
|
||||
|
||||
if (fornitore.estero_non_CEE() && fornitore.stato_residenza_ISO() != "SM")
|
||||
{
|
||||
paf0200f.set("P2_FISCIVAPAESE", fornitore.stato_partita_IVA());
|
||||
paf0200f.set("P2_FISCIVACOD", fornitore.codice_fiscale());
|
||||
paf0200f.set("P2_CODFISCALE", "");
|
||||
}
|
||||
else
|
||||
{
|
||||
paf0200f.set("P2_CODFISCALE", fornitore.codice_fiscale());
|
||||
}
|
||||
|
||||
const bool df = _ditta.fisica();
|
||||
|
||||
@ -3446,7 +3460,8 @@ bool TReg_fp::reg_to_paf(const TMovimento_contabile& mov)
|
||||
// I clienti esteri possono avere CAP alfanumerici, li tolgo
|
||||
if (fornitore.stato_residenza_ISO() != "IT")
|
||||
{
|
||||
paf0200f.set("P2_SEDECAP", "00000");
|
||||
int i = 0;
|
||||
//paf0200f.set("P2_SEDECAP", "0000");
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -3659,7 +3674,7 @@ bool TReg_fp::reg_to_paf(const TMovimento_contabile& mov)
|
||||
pafw300f.set("PW_TIPONUM", caus.reg().name()); //TODO COSA CI METTIAMO NEL TIPO NUM ava
|
||||
pafw300f.set("PW_NUMERO", mov.get(MOV_NUMDOC));
|
||||
pafw300f.set("PW_DATA", mov.get_date(MOV_DATADOC));
|
||||
pafw300f.set("PW_CDEST", _coddest);
|
||||
pafw300f.set("PW_CDEST", _coddest); //CHECKARE
|
||||
pafw300f.set("PW_RAGSOC", fornitore.ragione_sociale().left(35));
|
||||
pafw300f.set("PW_PAESE", fornitore.stato_residenza_ISO());
|
||||
pafw300f.set("PW_CODICE", fornitore.codice_fiscale_estero());
|
||||
|
@ -30,10 +30,10 @@ private:
|
||||
static bool universal_notifier(TSheet_field& f, int row, KEY k);
|
||||
|
||||
protected:
|
||||
void set_handlers();
|
||||
TField_event key2event(TMask_field& f, KEY key) const;
|
||||
|
||||
public:
|
||||
void set_handlers();
|
||||
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly) pure;
|
||||
bool error_box(const char* fmt, ...); // No more f.error_box
|
||||
void set_universal_handler(const short id) { set_handler(id, universal_handler);}
|
||||
|
@ -1675,6 +1675,8 @@ void TMask::set(
|
||||
// @syntax set(short fld_id, long n, bool hit);
|
||||
{
|
||||
TMask_field& f = field(fld_id);
|
||||
if (fld_id == 214)
|
||||
int i = 0;
|
||||
|
||||
f.set(s);
|
||||
if ((f.active() || f.ghost()))
|
||||
@ -3023,12 +3025,18 @@ void set_iban_fields(const char * iban, TMask & mask,
|
||||
const bool italy = iso.blank() || (iso == "IT");
|
||||
|
||||
enable_iban_fields(mask, fldbban, fldbcin, fldabi, fldcab, fldcc, flddes, italy, pres);
|
||||
mask.set(fldiso, iso);
|
||||
mask.set(fldcin, cin);
|
||||
if (iso.full() || mask.get(fldiso).blank())
|
||||
mask.set(fldiso, iso);
|
||||
if (cin.full() || mask.get(fldcin).blank())
|
||||
mask.set(fldcin, cin);
|
||||
if (fldbban > 0)
|
||||
mask.set(fldbban, italy ? wiban.mid(4) : cc);
|
||||
mask.set(fldbcin, bcin);
|
||||
mask.set(fldabi, abi);
|
||||
mask.set(fldcab, cab);
|
||||
mask.set(fldcc, italy ? cc : EMPTY_STRING);
|
||||
if(bcin.full() || mask.get(fldbban).blank())
|
||||
mask.set(fldbcin, bcin);
|
||||
if(abi.full() || mask.get(fldabi).blank())
|
||||
mask.set(fldabi, abi);
|
||||
if(cab.full() || mask.get(fldcab).blank())
|
||||
mask.set(fldcab, cab);
|
||||
if (cc.full() || mask.get(fldcc).blank())
|
||||
mask.set(fldcc, italy ? cc : EMPTY_STRING);
|
||||
}
|
||||
|
@ -198,7 +198,10 @@ long TPack_transfer::odbc_exec(const char* cmd)
|
||||
TParagraph_string msg(cmd, 100);
|
||||
FOR_EACH_TOKEN(msg, str)
|
||||
log(str, 0); // Riporto tutta la query
|
||||
log_error(TR("ERRORE in esecuzione della query."));
|
||||
|
||||
msg.cut(0);
|
||||
msg << TR("Errore n: ") << abs(err) << TR(" in esecuzione della query.");
|
||||
log_error(msg);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -249,7 +249,7 @@ TObject* TCache_art::key2obj(const char* key)
|
||||
conart.put(CONART_CATEGORIA, sotcat.left(2));
|
||||
conart.put(CONART_SOTTOCAT, sotcat.mid(2));
|
||||
conart.put(CONART_PESO, get_real_str("WeightETUnit"));
|
||||
conart.write_rewrite(true);
|
||||
conart.write_rewrite();
|
||||
}
|
||||
const long gruconto = get_long("AccountCode");
|
||||
const long sottoconto = get_long("AccountSubCode");
|
||||
|
Loading…
x
Reference in New Issue
Block a user