Merge branch 'develop' into GestioneDocumentiLavorazioneWMS
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
# Conflicts: # ems-engine/src/main/java/it/integry/ems/production/service/OrtoFruttaProductionService.java # ems-engine/src/main/java/it/integry/ems/production/service/ProductionOrderDataHandlerService.java # ems-engine/src/main/java/it/integry/ems/retail/wms/lavorazione/service/WMSLavorazioneService.java
This commit is contained in:
8
.idea/inspectionProfiles/Project_Default.xml
generated
Normal file
8
.idea/inspectionProfiles/Project_Default.xml
generated
Normal file
@@ -0,0 +1,8 @@
|
||||
<component name="InspectionProjectProfileManager">
|
||||
<profile version="1.0">
|
||||
<option name="myName" value="Project Default" />
|
||||
<inspection_tool class="AutoCloseableResource" enabled="true" level="WARNING" enabled_by_default="true">
|
||||
<option name="METHOD_MATCHER_CONFIG" value="java.util.Formatter,format,java.io.Writer,append,com.google.common.base.Preconditions,checkNotNull,org.hibernate.Session,close,java.io.PrintWriter,printf,java.io.PrintStream,printf,java.lang.foreign.Arena,ofAuto,java.lang.foreign.Arena,global,com.annimon.stream.Stream,of" />
|
||||
</inspection_tool>
|
||||
</profile>
|
||||
</component>
|
||||
16
.idea/runConfigurations/Tomcat_9__RistoCash_.xml
generated
Normal file
16
.idea/runConfigurations/Tomcat_9__RistoCash_.xml
generated
Normal file
@@ -0,0 +1,16 @@
|
||||
<component name="ProjectRunConfigurationManager">
|
||||
<configuration default="false" name="Tomcat 9 (RistoCash)" type="Remote">
|
||||
<module name="ems-engine" />
|
||||
<option name="USE_SOCKET_TRANSPORT" value="true" />
|
||||
<option name="SERVER_MODE" value="false" />
|
||||
<option name="SHMEM_ADDRESS" />
|
||||
<option name="HOST" value="127.0.0.1" />
|
||||
<option name="PORT" value="8001" />
|
||||
<option name="AUTO_RESTART" value="false" />
|
||||
<RunnerSettings RunnerId="Debug">
|
||||
<option name="DEBUG_PORT" value="8001" />
|
||||
<option name="LOCAL" value="false" />
|
||||
</RunnerSettings>
|
||||
<method v="2" />
|
||||
</configuration>
|
||||
</component>
|
||||
122
build/Jenkinsfile.groovy
Normal file
122
build/Jenkinsfile.groovy
Normal file
@@ -0,0 +1,122 @@
|
||||
pipeline {
|
||||
agent any
|
||||
stages {
|
||||
stage ('PreBuild Steps (Master)') {
|
||||
when {
|
||||
expression {
|
||||
return env.GIT_BRANCH == "master"
|
||||
}
|
||||
}
|
||||
steps {
|
||||
echo "Creo version tag su Git"
|
||||
bat 'build\\create_build_tag.bat'
|
||||
}
|
||||
}
|
||||
stage('Maven Build') {
|
||||
steps {
|
||||
echo "${WORKSPACE}"
|
||||
withMaven(jdk: 'JDK 17.0.6 x64', traceability: true, maven: 'Maven 3.9.5') {
|
||||
bat(script: 'mvn clean install -t toolchains-jenkins.xml', returnStdout: true)
|
||||
archiveArtifacts(artifacts: 'ems-engine/target/*.war*', onlyIfSuccessful: true)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
stage('Publish Develop') {
|
||||
when {
|
||||
expression {
|
||||
return env.GIT_BRANCH == "develop"
|
||||
}
|
||||
}
|
||||
parallel {
|
||||
stage('Tomcat update') {
|
||||
stages {
|
||||
stage('Update Tomcat 1') {
|
||||
steps {
|
||||
echo "Updating Tomcat9 from ${WORKSPACE}"
|
||||
powershell returnStdout: true, script: "build\\update_tomcat.ps1 -serviceName \"Tomcat9\" -httpPort \"8081\" -updatedArtifactPath \"${WORKSPACE}\\ems-engine\\target\\ems-api.war\""
|
||||
}
|
||||
}
|
||||
stage('Update Tomcat 2') {
|
||||
steps {
|
||||
echo "Updating Tomcat9 from ${WORKSPACE}"
|
||||
powershell returnStdout: true, script: "build\\update_tomcat.ps1 -serviceName \"Tomcat9Backup\" -httpPort \"8082\" -updatedArtifactPath \"${WORKSPACE}\\ems-engine\\target\\ems-api.war\""
|
||||
bat 'curl -k https://devservices.studioml.it/ems-api/updateWMSApp'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stage('Publish over FTP') {
|
||||
steps {
|
||||
echo "Publish over FTP"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stage('Publish Master') {
|
||||
when {
|
||||
expression {
|
||||
return env.GIT_BRANCH == "master"
|
||||
}
|
||||
}
|
||||
parallel {
|
||||
stage('Tomcat update') {
|
||||
stages {
|
||||
stage('Update Tomcat 1') {
|
||||
steps {
|
||||
echo "Updating Tomcat9 from ${WORKSPACE}"
|
||||
sshPublisher(publishers: [sshPublisherDesc(configName: 'Production Linux Tomcat Server (192.168.3.16)', transfers: [sshTransfer(cleanRemote: false, excludes: '', execCommand: '''sudo /usr/bin/systemctl stop tomcat9
|
||||
rm -R tomcat9/webapps/ems-api
|
||||
sudo /usr/bin/systemctl start tomcat9
|
||||
|
||||
/home/studioml/./wait_tomcat_startup.sh 8081''', execTimeout: 120000, flatten: false, makeEmptyDirs: false, noDefaultExcludes: false, patternSeparator: '[, ]+', remoteDirectory: '/tomcat9/webapps', remoteDirectorySDF: false, removePrefix: 'ems-engine/target/', sourceFiles: 'ems-engine/target/*.war*')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)])
|
||||
}
|
||||
}
|
||||
stage('Update Tomcat 2') {
|
||||
steps {
|
||||
echo "Updating Tomcat9 from ${WORKSPACE}"
|
||||
sshPublisher(publishers: [sshPublisherDesc(configName: 'Production Linux Tomcat Server (192.168.3.16)', transfers: [sshTransfer(cleanRemote: false, excludes: '', execCommand: '''sudo /usr/bin/systemctl stop tomcat9backup
|
||||
rm -R tomcat9backup/webapps/ems-api
|
||||
sudo /usr/bin/systemctl start tomcat9backup
|
||||
|
||||
/home/studioml/./wait_tomcat_startup.sh 8082
|
||||
|
||||
sleep 10''', execTimeout: 120000, flatten: false, makeEmptyDirs: false, noDefaultExcludes: false, patternSeparator: '[, ]+', remoteDirectory: '/tomcat9backup/webapps', remoteDirectorySDF: false, removePrefix: 'ems-engine/target/', sourceFiles: 'ems-engine/target/*.war*')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)])
|
||||
bat 'curl -k https://services.studioml.it/ems-api/updateWMSApp'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stage('Publish over FTP') {
|
||||
steps {
|
||||
ftpPublisher alwaysPublishFromMaster: false,
|
||||
continueOnError: false,
|
||||
failOnError: false,
|
||||
masterNodeName: '',
|
||||
paramPublish: null,
|
||||
publishers: [[configName: 'OVH Linux Web Server (51.38.112.23)',
|
||||
transfers: [[asciiMode: false,
|
||||
cleanRemote: false,
|
||||
excludes: '',
|
||||
flatten: false,
|
||||
makeEmptyDirs: false,
|
||||
noDefaultExcludes: false,
|
||||
patternSeparator: '[, ]+',
|
||||
remoteDirectory: '/download/Aggiornamenti',
|
||||
remoteDirectorySDF: false,
|
||||
removePrefix: 'ems-engine/target/',
|
||||
sourceFiles: 'ems-engine/target/*.war*']],
|
||||
usePromotionTimestamp: false,
|
||||
useWorkspaceInPromotion: false,
|
||||
verbose: true]]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
43
build/create_build_tag.bat
Normal file
43
build/create_build_tag.bat
Normal file
@@ -0,0 +1,43 @@
|
||||
REM SET YEAR
|
||||
set YEAR=%date:~6,4%
|
||||
|
||||
REM SET MONTH
|
||||
set MONTH=%date:~3,2%
|
||||
if %MONTH% LSS 10 set MONTH=%MONTH:~1,2%
|
||||
if %MONTH% LSS 10 set MONTH=0%MONTH%
|
||||
|
||||
REM SET DAY
|
||||
set DAY=%date:~0,2%
|
||||
if %DAY% LSS 10 set DAY=%DAY:~1,2%
|
||||
if %DAY% LSS 10 set DAY=0%DAY%
|
||||
|
||||
REM SET HOUR
|
||||
set HOUR=%time:~0,2%
|
||||
if %HOUR% LSS 10 set HOUR=%HOUR:~1,2%
|
||||
if %HOUR% LSS 10 set HOUR=0%HOUR%
|
||||
|
||||
REM SET MINUTE
|
||||
set MINUTE=%time:~3,2%
|
||||
if %MINUTE% LSS 10 set MINUTE=%MINUTE:~1,2%
|
||||
if %MINUTE% LSS 10 set MINUTE=0%MINUTE%
|
||||
|
||||
REM SET SECOND
|
||||
set SECOND=%time:~6,2%
|
||||
if %SECOND% LSS 10 set SECOND=%SECOND:~1,2%
|
||||
if %SECOND% LSS 10 set SECOND=0%SECOND%
|
||||
|
||||
set mydate=%YEAR%%MONTH%%DAY%_%HOUR%%MINUTE%%SECOND%
|
||||
|
||||
|
||||
|
||||
echo #spring.profiles.active=@activatedProperties@ > ems-core\src\main\resources\configs\env.properties
|
||||
echo project.version=%mydate% >> ems-core\src\main\resources\configs\env.properties
|
||||
|
||||
|
||||
git add . -A
|
||||
git commit -m "%mydate%"
|
||||
git tag "%mydate%"
|
||||
|
||||
|
||||
git push https://git.studioml.it/Integry/IntegryManagementSystem.git --tags
|
||||
git push https://git.studioml.it/Integry/IntegryManagementSystem.git --all
|
||||
153
build/update_tomcat.ps1
Normal file
153
build/update_tomcat.ps1
Normal file
@@ -0,0 +1,153 @@
|
||||
Param(
|
||||
[string]$serviceName, #Argomento passato dal chiamante
|
||||
[Int32]$httpPort, #Argomento passato dal chiamante
|
||||
[string]$updatedArtifactPath #Argomento passato dal chiamante
|
||||
)
|
||||
|
||||
$max_attempts = 48
|
||||
$attempt = 0
|
||||
$webappsPath = "C:\Program Files\$serviceName\webapps"
|
||||
|
||||
# Funzione per eseguire la chiamata GET e controllare lo status code
|
||||
function Check-Status {
|
||||
try {
|
||||
$request = Invoke-WebRequest -Uri "http://localhost:$httpPort/ems-api/system/ok" -Method Get -ErrorAction Stop
|
||||
$statusCode = $request.StatusCode
|
||||
if ($statusCode -eq 200) {
|
||||
Write-Host "Status code 200 ricevuto, processo completato."
|
||||
exit 0
|
||||
} else {
|
||||
Write-Host "Status code $statusCode ricevuto, continuo a provare..."
|
||||
}
|
||||
} catch {
|
||||
Write-Host "Errore: $_"
|
||||
}
|
||||
}
|
||||
|
||||
# Funzione per cancellare una cartella e un file
|
||||
function Delete-FilesAndFolder
|
||||
{
|
||||
param (
|
||||
[string]$folderPath,
|
||||
[string]$filePath
|
||||
)
|
||||
|
||||
try {
|
||||
# Cancellare la cartella specificata
|
||||
if (Test-Path -Path $folderPath) {
|
||||
Remove-Item -Path $folderPath -Recurse -Force
|
||||
Write-Host "Cartella $folderPath eliminata con successo."
|
||||
} else {
|
||||
Write-Host "La cartella $folderPath non esiste."
|
||||
}
|
||||
|
||||
# Cancellare il file specificato
|
||||
if (Test-Path -Path $filePath) {
|
||||
Remove-Item -Path $filePath -Force
|
||||
Write-Host "File $filePath eliminato con successo."
|
||||
} else {
|
||||
Write-Host "Il file $filePath non esiste."
|
||||
}
|
||||
|
||||
} catch {
|
||||
Write-Host "Errore nella cancellazione di file o cartella: $_"
|
||||
exit 1
|
||||
}
|
||||
}
|
||||
|
||||
# Funzione per copiare un file
|
||||
function Copy-File {
|
||||
param (
|
||||
[string]$sourceFilePath,
|
||||
[string]$destinationFilePath
|
||||
)
|
||||
|
||||
try {
|
||||
if (Test-Path -Path $sourceFilePath) {
|
||||
Copy-Item -Path $sourceFilePath -Destination $destinationFilePath -Force
|
||||
Write-Host "File copiato da $sourceFilePath a $destinationFilePath con successo."
|
||||
} else {
|
||||
Write-Host "Il file sorgente $sourceFilePath non esiste."
|
||||
}
|
||||
} catch {
|
||||
Write-Host "Errore nella copia del file: $_"
|
||||
exit 1
|
||||
}
|
||||
}
|
||||
|
||||
# Funzione per stoppare un servizio e attendere che sia completamente fermato
|
||||
function Stop-ServiceAndWait {
|
||||
param (
|
||||
[string]$serviceName
|
||||
)
|
||||
|
||||
# Tentativo di stoppare il servizio
|
||||
try {
|
||||
Write-Host "Sto stoppando il servizio $serviceName..."
|
||||
Stop-Service -Name $serviceName -Force
|
||||
|
||||
# Attesa finché il servizio non viene stoppato
|
||||
$service = Get-Service -Name $serviceName
|
||||
while ($service.Status -ne 'Stopped') {
|
||||
Write-Host "Attendo che il servizio $serviceName si fermi..."
|
||||
Start-Sleep -Seconds 5
|
||||
$service = Get-Service -Name $serviceName
|
||||
}
|
||||
|
||||
Write-Host "Il servizio $serviceName è stato fermato con successo."
|
||||
} catch {
|
||||
Write-Host "Errore nello stoppare il servizio ${serviceName}: $_"
|
||||
exit 1
|
||||
}
|
||||
}
|
||||
|
||||
# Funzione per avviare nuovamente un servizio e attendere che sia in esecuzione
|
||||
function Start-ServiceAndWait {
|
||||
param (
|
||||
[string]$serviceName
|
||||
)
|
||||
|
||||
try {
|
||||
Write-Host "Sto avviando il servizio $serviceName..."
|
||||
Start-Service -Name $serviceName
|
||||
|
||||
# Attesa finché il servizio non viene avviato
|
||||
$service = Get-Service -Name $serviceName
|
||||
while ($service.Status -ne 'Running') {
|
||||
Write-Host "Attendo che il servizio $serviceName si avvii..."
|
||||
Start-Sleep -Seconds 5
|
||||
$service = Get-Service -Name $serviceName
|
||||
}
|
||||
|
||||
Write-Host "Il servizio $serviceName è stato avviato con successo."
|
||||
|
||||
} catch {
|
||||
Write-Host "Errore nell'avvio del servizio ${serviceName}: $_"
|
||||
exit 1
|
||||
}
|
||||
}
|
||||
|
||||
# Chiamare la funzione per stoppare il servizio
|
||||
Stop-ServiceAndWait -serviceName $serviceName
|
||||
|
||||
# Subito dopo lo stop, cancellare la cartella e il file
|
||||
$emsApiPath = "$webappsPath\ems-api"
|
||||
$emsWarFilePath = "$webappsPath\ems-api.war"
|
||||
Delete-FilesAndFolder -folderPath $emsApiPath -filePath $emsWarFilePath
|
||||
|
||||
# Chiamare la funzione per copiare il file
|
||||
Write-Host "Copio $updatedArtifactPath in $emsWarFilePath"
|
||||
Copy-File -sourceFilePath $updatedArtifactPath -destinationFilePath $emsWarFilePath
|
||||
|
||||
# Avvia nuovamente il servizio
|
||||
Start-ServiceAndWait -serviceName $serviceName
|
||||
|
||||
# Ciclo fino a quando lo status code non è 200 o superiamo il numero massimo di tentativi
|
||||
while ($attempt -lt $max_attempts) {
|
||||
$attempt++
|
||||
Check-Status
|
||||
Start-Sleep -Seconds 5 # Attendere per 5 secondi prima di fare un altro tentativo
|
||||
}
|
||||
|
||||
Write-Host "Numero massimo di tentativi superato. Nessuna risposta 200 ricevuta."
|
||||
exit 1
|
||||
@@ -24,7 +24,8 @@ public enum EntityImportType {
|
||||
SCONTRINI("SCONTRINI"),
|
||||
MOVIMENTI_CONTABILI("MOVIMENTI CONTABILI"),
|
||||
GRIGLIA_VENDITA("GRIGLIA VENDITA"),
|
||||
GRIGLIA_ACQUISTO("GRIGLIA ACQUISTO");
|
||||
GRIGLIA_ACQUISTO("GRIGLIA ACQUISTO"),
|
||||
SCADENZE("SCADENZE");
|
||||
|
||||
private String text;
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@ package it.integry.ems.dto;
|
||||
import com.fasterxml.jackson.annotation.JsonValue;
|
||||
import it.integry.ems.report.dto.JasperDTO;
|
||||
import it.integry.ems_model.base.EntityBase;
|
||||
import it.integry.ems_model.entity.DtbDocPdf;
|
||||
import it.integry.ems_model.entity.MtbAartLink;
|
||||
import it.integry.ems_model.entity.MtbUntMis;
|
||||
import it.integry.ems_model.entity.StbActivityFile;
|
||||
@@ -18,6 +19,8 @@ public class CreateZipDTO {
|
||||
|
||||
private List<MtbAartLink> listMtbAartLink;
|
||||
|
||||
private List<DtbDocPdf> listDtbDocPdf;
|
||||
|
||||
private String fileName;
|
||||
|
||||
private SaveMode saveMode = SaveMode.STB_FILES_ATTACHED;
|
||||
@@ -51,6 +54,15 @@ public class CreateZipDTO {
|
||||
return this;
|
||||
}
|
||||
|
||||
public List<DtbDocPdf> getListDtbDocPdf() {
|
||||
return listDtbDocPdf;
|
||||
}
|
||||
|
||||
public CreateZipDTO setListDtbDocPdf(List<DtbDocPdf> listDtbDocPdf) {
|
||||
this.listDtbDocPdf = listDtbDocPdf;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getFileName() {
|
||||
return fileName;
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package it.integry.ems.ecedi.enums;
|
||||
|
||||
public enum EuritmoCCIAppIdentifier {
|
||||
CCI37("37"),
|
||||
CCI00("00"),
|
||||
CCI10("10"),
|
||||
CCI17("17"),
|
||||
|
||||
@@ -103,7 +103,7 @@ public class EntityDevelopmentService {
|
||||
javaClass.addAndGetAnnotation(JsonTypeName.class)
|
||||
.addPair("value", new FieldAccessExpr(new NameExpr(javaClassName), "ENTITY"));
|
||||
|
||||
final FieldDeclaration entityField = javaClass.addFieldWithInitializer(String.class, "ENTITY", new StringLiteralExpr(databaseTable.getTableName()), PRIVATE, FINAL, STATIC);
|
||||
final FieldDeclaration entityField = javaClass.addFieldWithInitializer(String.class, "ENTITY", new StringLiteralExpr(databaseTable.getTableName()), PUBLIC, FINAL, STATIC);
|
||||
final FieldDeclaration serialVersionUIDField = javaClass.addFieldWithInitializer(Long.class, "serialVersionUID", new LongLiteralExpr("1L"), PRIVATE, FINAL, STATIC);
|
||||
final FieldDeclaration loggerField = javaClass.addFieldWithInitializer(Logger.class, "logger", new MethodCallExpr("LogManager.getLogger"), PRIVATE, FINAL, STATIC);
|
||||
|
||||
|
||||
@@ -17,7 +17,8 @@ public enum EntityExportType {
|
||||
RAPPORTINI("RAPPORTINI"),
|
||||
VARIAZIONE_PV("VARIAZIONE PV"),
|
||||
LISTINI_ACQUISTO("LISTINI ACQUISTO"),
|
||||
COLLI("COLLI");
|
||||
COLLI("COLLI"),
|
||||
SCADENZE("SCADENZE");
|
||||
|
||||
private String text;
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ import java.util.List;
|
||||
|
||||
public class TxtMapper<T> {
|
||||
|
||||
private Logger logger = LogManager.getLogger();
|
||||
private final Logger logger = LogManager.getLogger();
|
||||
|
||||
private String fieldsSplitChar = " ";
|
||||
|
||||
@@ -29,20 +29,10 @@ public class TxtMapper<T> {
|
||||
|
||||
|
||||
public String serialize(T object) {
|
||||
|
||||
Class Tclass = object.getClass();
|
||||
Class<?> Tclass = object.getClass();
|
||||
|
||||
List<Field> declaredFields = Arrays.asList(Tclass.getDeclaredFields());
|
||||
|
||||
List<Field> sortedFields = Stream.of(declaredFields)
|
||||
.filter(x -> x.getAnnotation(DtoField.class) != null && x.getAnnotation(DtoField.class).startPosition() >= 0)
|
||||
.sortBy(x -> x.getAnnotation(DtoField.class).startPosition())
|
||||
.toList();
|
||||
|
||||
sortedFields.addAll(Stream.of(declaredFields)
|
||||
.filter(x -> x.getAnnotation(DtoField.class) != null && x.getAnnotation(DtoField.class).startPosition() < 0)
|
||||
.toList());
|
||||
|
||||
List<Field> sortedFields = sortFields(declaredFields);
|
||||
|
||||
StringBuilder stringBuilder = new StringBuilder();
|
||||
|
||||
@@ -52,18 +42,7 @@ public class TxtMapper<T> {
|
||||
declaredField.setAccessible(true);
|
||||
|
||||
try {
|
||||
// if(dtoField.startPosition() > stringBuilder.length()) {
|
||||
// int spacesNeeded = dtoField.startPosition() - stringBuilder.length() - 1;
|
||||
// int counter = 0;
|
||||
// do {
|
||||
// stringBuilder.append(" ");
|
||||
// counter ++;
|
||||
// } while (counter < spacesNeeded);
|
||||
//
|
||||
// stringBuilder.append(fieldsSplitChar);
|
||||
// }
|
||||
|
||||
String value = applyDtoAnnotation(declaredField.get(object), dtoField);
|
||||
String value = applyDtoAnnotationForSerialization(declaredField.get(object), dtoField);
|
||||
|
||||
if (value == null) {
|
||||
value = "";
|
||||
@@ -101,7 +80,7 @@ public class TxtMapper<T> {
|
||||
|
||||
public String serialize(List<T> objectList) {
|
||||
|
||||
if (objectList == null || objectList.size() == 0)
|
||||
if (objectList == null || objectList.isEmpty())
|
||||
return null;
|
||||
|
||||
StringBuilder stringBuilder = new StringBuilder();
|
||||
@@ -109,12 +88,63 @@ public class TxtMapper<T> {
|
||||
for (int i = 0; i < objectList.size(); i++) {
|
||||
stringBuilder.append(serialize(objectList.get(i)));
|
||||
|
||||
if (i < objectList.size() - 1) stringBuilder.append(System.getProperty("line.separator"));
|
||||
if (i < objectList.size() - 1) stringBuilder.append(System.lineSeparator());
|
||||
}
|
||||
|
||||
return stringBuilder.toString();
|
||||
}
|
||||
|
||||
public T deserialize(String line, Class<T> clazz) {
|
||||
try {
|
||||
T instance = clazz.getDeclaredConstructor().newInstance();
|
||||
List<Field> declaredFields = Arrays.asList(clazz.getDeclaredFields());
|
||||
List<Field> sortedFields = sortFields(declaredFields);
|
||||
|
||||
for (Field field : sortedFields) {
|
||||
DtoField dtoField = field.getAnnotation(DtoField.class);
|
||||
field.setAccessible(true);
|
||||
|
||||
String value = null;
|
||||
if (ignorePosition) {
|
||||
String[] tokens = line.split(fieldsSplitChar);
|
||||
value = tokens[sortedFields.indexOf(field)];
|
||||
} else {
|
||||
int startPosition = dtoField.startPosition();
|
||||
int endPosition = Math.min(line.length(), startPosition + dtoField.maxLength());
|
||||
|
||||
if (startPosition < endPosition && endPosition <= line.length()) {
|
||||
value = line.substring(startPosition, endPosition).trim();
|
||||
}
|
||||
}
|
||||
|
||||
applyDtoAnnotationForDeserialization(field, instance, value, dtoField);
|
||||
}
|
||||
|
||||
return instance;
|
||||
} catch (Exception e) {
|
||||
logger.error("Error during deserialization", e);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public List<T> deserialize(List<String> lines, Class<T> clazz) {
|
||||
return Stream.of(lines)
|
||||
.map(line -> deserialize(line, clazz))
|
||||
.toList();
|
||||
}
|
||||
|
||||
private List<Field> sortFields(List<Field> declaredFields) {
|
||||
List<Field> sortedFields = Stream.of(declaredFields)
|
||||
.filter(x -> x.getAnnotation(DtoField.class) != null && x.getAnnotation(DtoField.class).startPosition() >= 0)
|
||||
.sortBy(x -> x.getAnnotation(DtoField.class).startPosition())
|
||||
.toList();
|
||||
|
||||
sortedFields.addAll(Stream.of(declaredFields)
|
||||
.filter(x -> x.getAnnotation(DtoField.class) != null && x.getAnnotation(DtoField.class).startPosition() < 0)
|
||||
.toList());
|
||||
|
||||
return sortedFields;
|
||||
}
|
||||
|
||||
public String getFieldsSplitChar() {
|
||||
return fieldsSplitChar;
|
||||
@@ -162,13 +192,11 @@ public class TxtMapper<T> {
|
||||
}
|
||||
|
||||
|
||||
private String applyDtoAnnotation(Object value, DtoField dtoField) {
|
||||
private String applyDtoAnnotationForSerialization(Object value, DtoField dtoField) {
|
||||
if (value != null) {
|
||||
if (!UtilityString.isNullOrEmpty(dtoField.format()) && value instanceof Date) {
|
||||
value = new SimpleDateFormat(dtoField.format()).format(value);
|
||||
} else if (!UtilityString.isNullOrEmpty(dtoField.formula()) && value instanceof BigDecimal) {
|
||||
// String regex = "[0-9]+\\.[0-9]{"+dtoField.scale()+"}+";
|
||||
// if(Pattern.matches(regex, columnValue.toString())
|
||||
value = ((BigDecimal) value).setScale(dtoField.scale(), RoundingMode.HALF_DOWN);
|
||||
String formula = dtoField.formula().replaceAll("this", value.toString());
|
||||
String[] opList = formula.split("\\*");
|
||||
@@ -193,4 +221,29 @@ public class TxtMapper<T> {
|
||||
|
||||
return value != null ? value.toString() : null;
|
||||
}
|
||||
|
||||
private void applyDtoAnnotationForDeserialization(Field field, T instance, String value, DtoField dtoField) throws Exception {
|
||||
if (!UtilityString.isNullOrEmpty(value)) {
|
||||
Class<?> fieldType = field.getType();
|
||||
|
||||
if (fieldType == Integer.class) {
|
||||
field.set(instance, Integer.parseInt(value));
|
||||
} else if (fieldType == BigDecimal.class) {
|
||||
BigDecimal bigDecimalValue = new BigDecimal(value);
|
||||
if (!UtilityString.isNullOrEmpty(dtoField.moltiplicatore())) {
|
||||
bigDecimalValue = bigDecimalValue.divide(new BigDecimal(dtoField.moltiplicatore()));
|
||||
}
|
||||
field.set(instance, bigDecimalValue.setScale(dtoField.scale(), RoundingMode.HALF_DOWN));
|
||||
} else if (fieldType == Boolean.class) {
|
||||
field.set(instance, value.equalsIgnoreCase(defaultBooleanTrueValue));
|
||||
} else if (fieldType == Date.class) {
|
||||
if (!UtilityString.isNullOrEmpty(dtoField.format())) {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat(dtoField.format());
|
||||
field.set(instance, sdf.parse(value));
|
||||
}
|
||||
} else {
|
||||
field.set(instance, value);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,6 +11,7 @@ import it.integry.ems.utility.UtilityDebug;
|
||||
import it.integry.ems_model.entity.Azienda;
|
||||
import it.integry.ems_model.entity.StbGestSetup;
|
||||
import it.integry.ems_model.entity.StbGestSetupQuery;
|
||||
import it.integry.ems_model.entity.StbGestSync;
|
||||
import it.integry.ems_model.exception.DataConverterNotFoundException;
|
||||
import it.integry.ems_model.rulescompleting.DroolsDataCompleting;
|
||||
import it.integry.ems_model.types.ApplicationName;
|
||||
@@ -454,4 +455,28 @@ public abstract class BaseMigration implements MigrationModelInterface {
|
||||
Azienda currentAzienda = Azienda.getDefaultAzienda(advancedDataSource.getConnection());
|
||||
return currentAzienda.getApplicationNameEnum() == ApplicationName.DMS;
|
||||
}
|
||||
|
||||
protected void enableSaveToRest(String gestName) throws Exception {
|
||||
boolean existRow =
|
||||
UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(advancedDataSource.getConnection(),
|
||||
Query.format("SELECT cast(count(*) as bit) FROM stb_gest_sync WHERE gest_name = %s", gestName));
|
||||
|
||||
StbGestSync gestSync =
|
||||
new StbGestSync()
|
||||
.setGestName(gestName)
|
||||
.setSyncronize("R");
|
||||
if (existRow) {
|
||||
gestSync.setOperation(OperationType.UPDATE);
|
||||
} else{
|
||||
String entityName =
|
||||
UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(advancedDataSource.getConnection(),
|
||||
Query.format("SELECT entity_name FROM stb_menu_opz WHERE gest_name = %s", gestName));
|
||||
gestSync.setEntityName(entityName);
|
||||
gestSync.setOperation(OperationType.INSERT);
|
||||
}
|
||||
|
||||
|
||||
gestSync.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240701154113 extends BaseMigration implements MigrationModelInterface {
|
||||
@@ -10,11 +11,13 @@ public class Migration_20240701154113 extends BaseMigration implements Migration
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
executeStatement("INSERT INTO stb_abil\n" +
|
||||
"select 'IG034', USER_NAME, flag_abil, 'w_ifat_elettroniche_check_dlg'\n" +
|
||||
"from stb_abil\n" +
|
||||
"where cod_opz = 'IR001'\n" +
|
||||
"where cod_opz = 'IR001' and user_name not in (select user_name from stb_abil where cod_opz = 'IG034')\n" +
|
||||
"\n");
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240715134642 extends BaseMigration implements MigrationModelInterface {
|
||||
@@ -10,6 +11,8 @@ public class Migration_20240715134642 extends BaseMigration implements Migration
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
createOrUpdateTrigger("t_UpdProgMagaT", "CREATE TRIGGER [dbo].[t_UpdProgMagaT]\n" +
|
||||
" ON [dbo].[dtb_ordt]\n" +
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240723164345 extends BaseMigration implements MigrationModelInterface {
|
||||
@@ -10,6 +11,8 @@ public class Migration_20240723164345 extends BaseMigration implements Migration
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
createOrUpdateTrigger("t_UpdProgMagaT", "CREATE TRIGGER [dbo].[t_UpdProgMagaT]\n" +
|
||||
" ON [dbo].[dtb_ordt]\n" +
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240807143042 extends BaseMigration implements MigrationModelInterface {
|
||||
@@ -10,6 +11,8 @@ public class Migration_20240807143042 extends BaseMigration implements Migration
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
createOrUpdateProcedure("MRP_UpdateQtaImpProx", "CREATE Procedure [dbo].[MRP_UpdateQtaImpProx](@elencoArticoli varchar(max) = null)\n" +
|
||||
"AS \n" +
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240809145906 extends BaseMigration implements MigrationModelInterface {
|
||||
@@ -10,6 +11,8 @@ public class Migration_20240809145906 extends BaseMigration implements Migration
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
createOrUpdateFunction("getMaterialiDistinta", "CREATE FUNCTION [dbo].[getMaterialiDistinta](@codProd VARCHAR(15), @explodeSemilavorati bit)\n" +
|
||||
" RETURNS TABLE\n" +
|
||||
|
||||
@@ -14,12 +14,14 @@ public class Migration_20240814102149 extends BaseMigration implements Migration
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
executeStatement(
|
||||
"insert into stb_abil\n" +
|
||||
"select stb_menu_opz.cod_opz, user_name, flag_abil, stb_menu_opz.gest_name\n" +
|
||||
"from ( select * from stb_abil where stb_abil.cod_opz = 'TG002' ) stb_abil\n" +
|
||||
"cross apply ( select * from stb_menu_opz where stb_menu_opz.cod_opz ='TG041' ) stb_menu_opz",
|
||||
"update stb_abil set flag_abil = 'N' where stb_abil.cod_opz = 'TG002' ");
|
||||
"cross apply ( select * from stb_menu_opz where stb_menu_opz.cod_opz ='TG041' ) stb_menu_opz");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -0,0 +1,97 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
import it.integry.ems_model.entity.AtbForn;
|
||||
import it.integry.ems_model.entity.MtbAart;
|
||||
import it.integry.ems_model.entity.VtbClie;
|
||||
import it.integry.ems_model.entity.WtbUsers;
|
||||
import it.integry.ems_model.types.OperationType;
|
||||
import it.integry.ems_model.utility.UtilityDB;
|
||||
|
||||
import java.sql.PreparedStatement;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class Migration_20240828094457 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
String val = null;
|
||||
if (isCustomer(IntegryCustomer.Tosca)) {
|
||||
val = "01";
|
||||
}
|
||||
createSetup("EDGE_CONN", "SETUP", "COD_ATIP_MP", val, "Codice tipo fornitore materia prima (cassette tbw)", "COD_ATIP");
|
||||
|
||||
if (!isCustomer(IntegryCustomer.Tosca))
|
||||
return;
|
||||
|
||||
String sql = "SELECT * from vtb_clie";
|
||||
List<VtbClie> listaClienti = UtilityDB.executeSimpleQueryDTO(advancedDataSource.getConnection(), sql, VtbClie.class);
|
||||
if (listaClienti.isEmpty())
|
||||
return;
|
||||
|
||||
for (VtbClie clie : listaClienti) {
|
||||
AtbForn forn = new AtbForn();
|
||||
forn
|
||||
.setCodAnag(clie.getCodAnag())
|
||||
.setCodAtip(val)
|
||||
.setOperation(OperationType.INSERT);
|
||||
clie
|
||||
.setOperation(OperationType.DELETE);
|
||||
forn.manageWithParentConnection(advancedDataSource.getConnection(), droolsDataCompleting);
|
||||
clie.manageWithParentConnection(advancedDataSource.getConnection(), droolsDataCompleting);
|
||||
}
|
||||
|
||||
List<String> queryDiacod = new ArrayList<>();
|
||||
//WOOD
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'934' WHERE cod_mart = N'RPC416AW'");
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'935' WHERE cod_mart = N'RPC416WW'");
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'937' WHERE cod_mart = N'RPC4311SW'");
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'942' WHERE cod_mart = N'RPC611AW'");
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'943' WHERE cod_mart = N'RPC613AW'");
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'944' WHERE cod_mart = N'RPC616AW'");
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'946' WHERE cod_mart = N'RPC619AW'");
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'947' WHERE cod_mart = N'RPC622AW'");
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'948' WHERE cod_mart = N'RPC623AW'");
|
||||
//GREEN
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'936' WHERE cod_mart = N'RPC4311'");
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'939' WHERE cod_mart = N'RPC4317'");
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'950' WHERE cod_mart = N'RPC6411'");
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'952' WHERE cod_mart = N'RPC6416'");
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'955' WHERE cod_mart = N'RPC6419'");
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'958' WHERE cod_mart = N'RPC6423'");
|
||||
//MEAT
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'1501' WHERE cod_mart = N'RPC4317M'");
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'1850' WHERE cod_mart = N'RPC6411M'");
|
||||
queryDiacod.add("UPDATE mtb_aart SET diacod = N'957' WHERE cod_mart = N'RPC6419M'");
|
||||
|
||||
queryDiacod.add("INSERT INTO mtb_depo_intercode (cod_forn, intercode, cod_mdep, user_name, cod_vdes, email_ordine) VALUES (N'F0000', N'ACC-00048931',N'CE',NULL, N'01', null);");
|
||||
queryDiacod.add("INSERT INTO mtb_depo_intercode (cod_forn, intercode, cod_mdep, user_name, cod_vdes, email_ordine) VALUES (N'F0000', N'ACC-00063682',N'RM',NULL, N'02', null);");
|
||||
queryDiacod.add("INSERT INTO mtb_depo_intercode (cod_forn, intercode, cod_mdep, user_name, cod_vdes, email_ordine) VALUES (N'F0000', N'ACC-00053786',N'MI',NULL, N'03', null);");
|
||||
queryDiacod.add("INSERT INTO mtb_depo_intercode (cod_forn, intercode, cod_mdep, user_name, cod_vdes, email_ordine) VALUES (N'F0000', N'ACC-00060042',N'RG',NULL, N'04', null);");
|
||||
queryDiacod.add("INSERT INTO mtb_depo_intercode (cod_forn, intercode, cod_mdep, user_name, cod_vdes, email_ordine) VALUES (N'F0000', N'ACC-00055852',N'VR',NULL, N'05', null);");
|
||||
queryDiacod.add("INSERT INTO mtb_depo_intercode (cod_forn, intercode, cod_mdep, user_name, cod_vdes, email_ordine) VALUES (N'F0000', N'ACC-00069093',N'BA',NULL, N'06', null);");
|
||||
queryDiacod.add("INSERT INTO mtb_depo_intercode (cod_forn, intercode, cod_mdep, user_name, cod_vdes, email_ordine) VALUES (N'F0000', N'ACC-00069743',N'CZ',NULL, N'07', null);");
|
||||
queryDiacod.add("INSERT INTO mtb_depo_intercode (cod_forn, intercode, cod_mdep, user_name, cod_vdes, email_ordine) VALUES (N'F0000', N'ACC-00063683',N'FC',NULL, N'08', null);");
|
||||
|
||||
|
||||
for (String updateDiacodSql : queryDiacod) {
|
||||
PreparedStatement updateDefaultFlagPS = advancedDataSource.getConnection().prepareStatement(updateDiacodSql);
|
||||
updateDefaultFlagPS.setQueryTimeout(30);
|
||||
updateDefaultFlagPS.executeUpdate();
|
||||
updateDefaultFlagPS.close();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,7 +1,10 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
import it.integry.ems.utility.UtilityDebug;
|
||||
import it.integry.ems_model.utility.UtilityDB;
|
||||
|
||||
public class Migration_20240906164323 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@@ -9,7 +12,10 @@ public class Migration_20240906164323 extends BaseMigration implements Migration
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
if (UtilityDebug.isDebugExecution() || UtilityDebug.isIntegryServer()) return;
|
||||
executeStatement("update stb_menu set flag_attivo = 'N' where cod_opz in ('vg107', 'ag030','ag031','lg081','lg082', 'vg106', 'ag032')" );
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240909103353 extends BaseMigration implements MigrationModelInterface {
|
||||
@@ -10,6 +11,8 @@ public class Migration_20240909103353 extends BaseMigration implements Migration
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
createOrUpdateFunction("MES_GetWorkOrders", "CREATE FUNCTION [dbo].[MES_GetWorkOrders](@codJfas VARCHAR(50), @dateStart DATE, @dateEnd DATE, @flagEvaso VARCHAR(1),\n" +
|
||||
" @codAnag VARCHAR(5))\n" +
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240910101351 extends BaseMigration implements MigrationModelInterface {
|
||||
@@ -10,6 +11,9 @@ public class Migration_20240910101351 extends BaseMigration implements Migration
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
|
||||
createOrUpdateFunction("getPromozioneVendita", "CREATE FUNCTION [dbo].[getPromozioneVendita] (@dataIniz datetime, @dataFine datetime, @codVlis varchar(5), @codPromo varchar(10), @codMart varchar(15)) RETURNS TABLE AS \n" +
|
||||
" return \n" +
|
||||
|
||||
@@ -2,6 +2,7 @@ package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
import it.integry.ems_model.utility.UtilityDB;
|
||||
import it.integry.ems_model.utility.UtilityDate;
|
||||
@@ -13,6 +14,9 @@ public class Migration_20240910113729 extends BaseMigration implements Migration
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
executeStatement("alter table vtb_list_data add \n" +
|
||||
"\tid_listino AS (CONVERT([bigint],[vtb_list_data].[data_iniz])*(10000000)+[vtb_list_data].[versione]) PERSISTED;");
|
||||
|
||||
|
||||
@@ -16,6 +16,9 @@ public class Migration_20240910114320 extends BaseMigration implements Migration
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
IndexTableDTO indexTableDTO =
|
||||
new IndexTableDTO()
|
||||
.setTableName("vtb_list_data")
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240910115321 extends BaseMigration implements MigrationModelInterface {
|
||||
@@ -11,7 +12,9 @@ public class Migration_20240910115321 extends BaseMigration implements Migration
|
||||
return;
|
||||
|
||||
|
||||
createOrUpdateFunction("getListinoVendita_id", "create FUNCTION [dbo].[getListinoVendita_id](@datavalidita DATETIME, @codvlis VARCHAR(5), @codmart VARCHAR(15))\n" +
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
createOrUpdateFunction("getListinoVendita_id", "create FUNCTION [dbo].[getListinoVendita_id](@datavalidita DATETIME, @codvlis VARCHAR(5), @codmart VARCHAR(15))\n" +
|
||||
" RETURNS TABLE AS\n" +
|
||||
" RETURN \n" +
|
||||
" --declare @datavalidita DATETIME, @codvlis VARCHAR(5), @codmart VARCHAR(15)\n" +
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240910143311 extends BaseMigration implements MigrationModelInterface {
|
||||
@@ -10,6 +11,8 @@ public class Migration_20240910143311 extends BaseMigration implements Migration
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
executeStatement("alter table gtb_anag add data_mod datetime");
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240913112628 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
executeStatement("CREATE TABLE dtb_note_doc (id bigint identity not null,note varchar(8000) not null, \n" +
|
||||
" CONSTRAINT PK_dtb_note_doc PRIMARY KEY (id));\n" +
|
||||
"\n" +
|
||||
"CREATE TABLE drl_tipi_note_doc (cod_dtip varchar(5) not null, id_note bigint not null, id_riga integer not null, \n" +
|
||||
" CONSTRAINT PK_drl_tipi_note_doc PRIMARY KEY (cod_dtip, id_note),\n" +
|
||||
" CONSTRAINT FK_drl_tipi_note_doc_cod FOREIGN KEY (cod_dtip) REFERENCES dtb_tipi(cod_dtip),\n" +
|
||||
" CONSTRAINT FK_drl_tipi_note_doc_id FOREIGN KEY (id_note) REFERENCES dtb_note_doc(id));");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240913135928 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
executeStatement("alter table ctb_cont add data_ins datetime",
|
||||
"alter table ctb_cont add data_mod datetime");
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240913141508 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
executeStatement(
|
||||
"update ctb_cont set data_ins = IsNull(c.data_cmov, '2000/01/01'), data_mod = Isnull(c.data_cmov, '2000/01/01') " +
|
||||
"FROM ctb_cont cross apply (select MIN(data_cmov) as data_cmov from ctb_movt ) c",
|
||||
"alter table ctb_cont alter column data_ins datetime not null",
|
||||
"alter table ctb_cont alter column data_mod datetime not null");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240913144135 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
if (isCustomer(IntegryCustomer.RossoGargano))
|
||||
executeStatement("update ctb_cont set ctb_cont.data_ins = convert(datetime, cast( CL_DATA_INSERIMENTO as varchar),112),\n" +
|
||||
"ctb_cont.data_mod = convert(datetime, cast( CL_DATA_MODIFICA as varchar),112)\n" +
|
||||
"from ctb_cont \n" +
|
||||
"inner join RossoGarganoExchange.dbo.ANAG on ctb_cont.diacod = ANAG.CL_CODICE\n" +
|
||||
"\n");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240913153037 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if ( !isCustomer(IntegryCustomer.Biolevante)) return;
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
executeStatement("insert into dtb_note_doc \n" +
|
||||
"values ('Eventuali variazioni di IBAN sono da considerarsi valide solo se confermate direttamente dal personale della OLIO LEVANTE SRL a mezzo telefono'),\n" +
|
||||
"('Any changes of IBAN are to be considered valid only if confirmed directly by the staff of OLIO LEVANTE SRL by phone')",
|
||||
"insert into drl_tipi_note_doc\n" +
|
||||
"select cod_dtip, 1, 1\n" +
|
||||
"from dtb_tipi \n" +
|
||||
"where mod_stamp in ('MOD7', 'BOLAC','FAT','MOD10','MOD8','MOD6')\n" +
|
||||
"and gestione = 'v' ",
|
||||
"insert into drl_tipi_note_doc\n" +
|
||||
"select cod_dtip,2, 1\n" +
|
||||
"from dtb_tipi \n" +
|
||||
"where mod_stamp in ('MOD4','FATAC','MOD1','MOD5','MOD2','MOD3')\n" +
|
||||
"and gestione = 'v'\n" +
|
||||
"\n"
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240913154727 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
enableSaveToRest("ccont");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240913171829 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetup("IMPORT_ANAGRAFICHE ARTICOLI", "FOTO", "ATTIVO", "N",
|
||||
"Inserire S/N per attivare/disattivare il tipo di importazione", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_ANAGRAFICHE ARTICOLI", "FOTO", "EMAIL_FOR_LOG", null,
|
||||
"Inserire il file l'indirizzo email per inviare il log dell'importazione", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_ANAGRAFICHE ARTICOLI", "FOTO", "FILE_FILTER", null,
|
||||
"Inserire il criterio di filtro dei file o il nome del file specifio (seguire la sintassi di java)", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_ANAGRAFICHE ARTICOLI", "FOTO", "GG_CANC_FILE", null,
|
||||
"Giorni per la cancellazione dei file dalla cartella di appoggio", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_ANAGRAFICHE ARTICOLI", "FOTO", "IMPORT_REST", "S",
|
||||
"Inserire S/N per attivare/disattivare il salvataggio con i servizi REST", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_ANAGRAFICHE ARTICOLI", "FOTO", "LISTENING", "N",
|
||||
"Se LISTENIG = 'N' la procedura di importazione non si potrà mai mettere in ascolto sulla directory perchè nella procedura vengono prese in considerazione più file.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_ANAGRAFICHE ARTICOLI", "FOTO", "PATH_FILE", null,
|
||||
"Directory contente i file da importare.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_ANAGRAFICHE ARTICOLI", "FOTO", "PATH_FILE_IMPORTED", null,
|
||||
"Directory dove vengono spostati i file dopo l'importazione.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240916161113 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
executeStatement("ALTER TABLE dtb_note_doc ADD data_iniz DATETIME , data_fine DATETIME;");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240916162607 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomer(IntegryCustomer.Smetar)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!isCustomer(IntegryCustomer.Cosmapack)) {
|
||||
createSetup("WINACCESS", "SETUP", "MAX_DEVIATION_TIME", null,
|
||||
"Minuti di deviazione massima tra orario di lavoro registrato e quello teorico", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
}
|
||||
|
||||
createSetup("WINACCESS", "SETUP", "COD_DIVI_CONT", null,
|
||||
"Cod. divi cont di default per jtb_rlavt", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
|
||||
createSetup("WINACCESS", "SETUP", "SOLO_COMMESSE_ATTIVE", null,
|
||||
"Indica se mostrare solo le commesse con ordini di lavoro attivi", false, "SI_NO", false, false,
|
||||
false, false, false, null, false);
|
||||
|
||||
createSetup("MES", "REPORT", "RIENTRO", null,
|
||||
"Nome del report da usare per l'etichetta di rientro", false, "REPORT_NAME", false, false,
|
||||
false, false, false, null, false, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240917092250 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetup("w_mlupdsrv_config_dlg", "SETUP", "NEW_VERSION", "S",
|
||||
"Se impostato a S avvia la nuova gestione importazione oridne (Ho attivato questa setup , perchè non si riusciva a capire se la vecchia versione veniva o meno utilizzata)", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,89 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240917110039 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
|
||||
if (!isCustomerDb(IntegryCustomerDB.Carelli_Winact)) return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
createOrUpdateFunction("steup_getGrigliaVendita", "CREATE FUNCTION [dbo].[steup_getGrigliaVendita](\n" +
|
||||
" @codMdep VARCHAR(5), @codJfas VARCHAR(5)\n" +
|
||||
")\n" +
|
||||
" RETURNS TABLE\n" +
|
||||
" AS\n" +
|
||||
" RETURN(WITH tipiArt AS (SELECT value_string AS cod_mtip\n" +
|
||||
" FROM dbo.ParseStringIntoArray((SELECT value\n" +
|
||||
" FROM stb_gest_setup\n" +
|
||||
" WHERE gest_name = 'PVM'\n" +
|
||||
" AND section = 'RILEVAZIONI_STEUP'\n" +
|
||||
" AND key_section = 'EXCLUDE_COD_MTIP'), '|') t)\n" +
|
||||
" , art AS (SELECT DISTINCT cod_griglia, cod_mart\n" +
|
||||
" FROM carelli.dbo.vtb_griglia_art\n" +
|
||||
" WHERE cod_griglia = @codMdep\n" +
|
||||
" AND data_validita =\n" +
|
||||
" (SELECT MAX(data_validita) FROM carelli.dbo.vtb_griglia_art WHERE cod_griglia = @codMdep) \n" +
|
||||
" )\n" +
|
||||
" \n" +
|
||||
" SELECT DISTINCT case when @codJfas = '01' then art_det.cod_mart_griglia else mtb_aart.cod_mart end as cod_mart,\n" +
|
||||
" mtb_aart.descrizione,\n" +
|
||||
" mtb_aart.bar_code,\n" +
|
||||
" mtb_aart.cod_msgr,\n" +
|
||||
" mtb_aart.plu,\n" +
|
||||
" art_det.cod_mart_griglia AS cod_madre \n" +
|
||||
" FROM carelli.dbo.mtb_aart\n" +
|
||||
" INNER JOIN jrl_fasi_mtb_grup ON\n" +
|
||||
" mtb_aart.cod_mgrp = jrl_fasi_mtb_grup.cod_mgrp\n" +
|
||||
" INNER JOIN (SELECT cod_mart, cod_comp AS cod_mart_griglia\n" +
|
||||
" FROM carelli.dbo.mtb_comp\n" +
|
||||
" UNION ALL\n" +
|
||||
" SELECT cod_comp AS cod_mart, cod_mart AS cod_mart_griglia\n" +
|
||||
" FROM carelli.dbo.mtb_comp \n" +
|
||||
" where @codJfas <> '01'\n" +
|
||||
" UNION ALL\n" +
|
||||
" SELECT cod_mart, cod_mart AS cod_mart_griglia\n" +
|
||||
" FROM carelli.dbo.mtb_aart\n" +
|
||||
" WHERE cod_mart NOT IN (SELECT cod_mart FROM carelli.dbo.mtb_comp)) AS art_det\n" +
|
||||
" ON mtb_aart.cod_mart = art_det.cod_mart\n" +
|
||||
" INNER JOIN art ON art_det.cod_mart_griglia = art.cod_mart\n" +
|
||||
" WHERE jrl_fasi_mtb_grup.cod_jfas = @codJfas\n" +
|
||||
" AND flag_stato = 'A'\n" +
|
||||
" AND (mtb_aart.cod_mtip IS NULL OR mtb_aart.cod_mtip NOT IN (SELECT cod_mtip FROM tipiArt))\n" +
|
||||
" UNION ALL\n" +
|
||||
" SELECT DISTINCT mtb_aart.cod_mart as cod_mart,\n" +
|
||||
" mtb_aart.descrizione,\n" +
|
||||
" mtb_aart.bar_code,\n" +
|
||||
" mtb_aart.cod_msgr,\n" +
|
||||
" mtb_aart.plu,\n" +
|
||||
" mtb_aart.cod_mart AS cod_madre \n" +
|
||||
" FROM carelli.dbo.mtb_aart\n" +
|
||||
" INNER JOIN jrl_fasi_mtb_grup ON\n" +
|
||||
" mtb_aart.cod_mgrp = jrl_fasi_mtb_grup.cod_mgrp\n" +
|
||||
" INNER JOIN (SELECT DISTINCT cod_mdep, cod_mart \n" +
|
||||
" FROM carelli.dbo.[getGrigliaAcquisto](null, null, @codMdep, null, null) griglia \n" +
|
||||
" where griglia.tipo_variazione <> 'D' AND \n" +
|
||||
" EXISTS( select cod_mart from carelli.dbo.mtb_aart WHERE mtb_aart.cod_mart = griglia.cod_mart AND mtb_aart.cod_mgrp = '03')) art ON \n" +
|
||||
" mtb_aart.cod_mart = art.cod_mart\n" +
|
||||
" WHERE jrl_fasi_mtb_grup.cod_jfas = @codJfas\n" +
|
||||
" AND flag_stato = 'A'\n" +
|
||||
" AND (mtb_aart.cod_mtip IS NULL OR mtb_aart.cod_mtip NOT IN (SELECT cod_mtip FROM tipiArt))\n" +
|
||||
" \n" +
|
||||
" )");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,282 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240917110814 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
createOrUpdateFunction("getListinoVendita_id", "CREATE FUNCTION [dbo].[getListinoVendita_id](@datavalidita DATETIME, @codvlis VARCHAR(5), @codmart VARCHAR(15))\n" +
|
||||
" RETURNS TABLE AS\n" +
|
||||
" RETURN \n" +
|
||||
"\n" +
|
||||
" --declare @datavalidita DATETIME, @codvlis VARCHAR(5), @codmart VARCHAR(15)\n" +
|
||||
"\n" +
|
||||
" with lisv AS (\n" +
|
||||
" SELECT vtb_list_data.cod_vlis,\n" +
|
||||
" vtb_list_data.versione,\n" +
|
||||
" vtb_list_data.id_listino as id_listino,\n" +
|
||||
" vtb_list_data.data_iniz,\n" +
|
||||
" vtb_list_data.cod_vlis AS cod_vlis_rif,\n" +
|
||||
" vtb_list_data.versione AS versione_rif\n" +
|
||||
" FROM vtb_list_data \n" +
|
||||
" WHERE vtb_list_data.data_fine IS NULL\n" +
|
||||
" AND vtb_list_data.cod_promo IS NULL \n" +
|
||||
" and vtb_list_data.cod_vlis_rif IS NULL\n" +
|
||||
" UNION\n" +
|
||||
" SELECT vtb_list_data.cod_vlis,\n" +
|
||||
" vtb_list_data.versione,\n" +
|
||||
" vtb_list_data_rif.id_listino,\n" +
|
||||
" vtb_list_data.data_iniz,\n" +
|
||||
" vtb_list_data.cod_vlis_rif AS cod_vlis_rif,\n" +
|
||||
" vtb_list_data.versione_rif AS versione_rif\n" +
|
||||
" FROM vtb_list_data \n" +
|
||||
" INNER JOIN vtb_list_data vtb_list_data_rif on vtb_list_data.cod_vlis_rif = vtb_list_data_rif.cod_vlis and vtb_list_data.versione_rif = vtb_list_data_rif.versione\n" +
|
||||
" WHERE vtb_list_data.data_fine IS NULL\n" +
|
||||
" AND vtb_list_data.cod_promo IS NULL \n" +
|
||||
" \n" +
|
||||
" \n" +
|
||||
" )\n" +
|
||||
"\n" +
|
||||
" , last_lisv AS ( \n" +
|
||||
" SELECT vtb_list.cod_vlis AS cod_vlis,\n" +
|
||||
" mtb_lisv_data.cod_mart,\n" +
|
||||
" MAX(vtb_list_data.id_listino) AS max_id_lisv,\n" +
|
||||
" IsNull(vtb_list_data.cod_vlis_rif, IsNull(vtb_list.cod_vlis_rif, vtb_list.cod_vlis)) AS 'cod_vlis_rif'\n" +
|
||||
" FROM vtb_list\n" +
|
||||
" INNER JOIN mtb_lisv_data ON vtb_list.cod_vlis = mtb_lisv_data.cod_vlis\n" +
|
||||
" LEFT OUTER JOIN lisv vtb_list_data ON mtb_lisv_data.cod_vlis = vtb_list_data.cod_vlis AND\n" +
|
||||
" mtb_lisv_data.versione = vtb_list_data.versione AND\n" +
|
||||
" vtb_list_data.data_iniz <= ISNULL(@datavalidita, GETDATE()) \n" +
|
||||
" GROUP BY vtb_list.cod_vlis,\n" +
|
||||
" mtb_lisv_data.cod_mart,\n" +
|
||||
" IsNull(vtb_list_data.cod_vlis_rif, IsNull(vtb_list.cod_vlis_rif, vtb_list.cod_vlis)) ),\n" +
|
||||
" art as (\n" +
|
||||
" select mtb_aart.cod_mart, mtb_aart.qta_cnf, mtb_aart.perc_sfrido, mtb_aart.colli_pedana, mtb_aart.colli_strato, mtb_aart.flag_incl_listino\n" +
|
||||
" from mtb_aart )\n" +
|
||||
" SELECT vtb_list.cod_vlis,\n" +
|
||||
" vtb_list.descrizione,\n" +
|
||||
" vtb_list_data.data_iniz AS data_iniz,\n" +
|
||||
" vtb_list_data.versione AS versione,\n" +
|
||||
" vtb_list.cod_divi,\n" +
|
||||
" vtb_list.cambio,\n" +
|
||||
" vtb_list.flag_arr_prz_iva,\n" +
|
||||
" vtb_list.arr_ric,\n" +
|
||||
" vtb_list.flag_list_iva_inclusa,\n" +
|
||||
" vtb_list.flag_lisv_margine,\n" +
|
||||
" vtb_list.flag_add_trasp,\n" +
|
||||
" tmp_list.cod_mart AS 'cod_mart',\n" +
|
||||
" mtb_lisv_data.unt_mis_ven AS unt_mis_ven,\n" +
|
||||
" ISNULL(mtb_lisv_data.rap_conv, 1) AS rap_conv,\n" +
|
||||
" ISNULL(mtb_lisv_data.prz_base, 0) AS prz_base,\n" +
|
||||
" ISNULL(mtb_lisv_data.ricarica, 0) AS ricarico,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN mtb_lisv_data.prz_vend IS NOT NULL AND mtb_lisv_data.prz_vend <> 0 THEN\n" +
|
||||
" ROUND((ISNULL(mtb_lisv_data.prz_vend, 0) -\n" +
|
||||
" (ISNULL(mtb_lisv_data.prz_base, 0) / (1 - mtb_aart.perc_sfrido / 100))) /\n" +
|
||||
" ISNULL(mtb_lisv_data.prz_vend, 0) * 100, 2)\n" +
|
||||
" ELSE 0 END AS margine_eff,\n" +
|
||||
" \n" +
|
||||
" CASE\n" +
|
||||
" WHEN mtb_lisv_data.prz_base IS NOT NULL AND mtb_lisv_data.prz_base <> 0 THEN\n" +
|
||||
" ROUND((ISNULL(mtb_lisv_data.prz_vend, 0) -\n" +
|
||||
" (ISNULL(mtb_lisv_data.prz_base, 0) / (1 - mtb_aart.perc_sfrido / 100))) /\n" +
|
||||
" (ISNULL(mtb_lisv_data.prz_base, 0) / (1 - mtb_aart.perc_sfrido / 100)) * 100, 2)\n" +
|
||||
" ELSE 0 END AS ricarico_eff,\n" +
|
||||
" \n" +
|
||||
" ISNULL(mtb_lisv_data.magg_prz_vend, 0) AS magg_prz_vend,\n" +
|
||||
" ISNULL(mtb_lisv_data.prz_vend, 0) AS prz_vend,\n" +
|
||||
" ISNULL(mtb_lisv_data.prz_vend_iva, 0) AS prz_vend_iva,\n" +
|
||||
" ISNULL(mtb_lisv_data.perc_sco1, 0) AS perc_sco1,\n" +
|
||||
" ISNULL(mtb_lisv_data.perc_sco2, 0) AS perc_sco2,\n" +
|
||||
" ISNULL(mtb_lisv_data.perc_sco3, 0) AS perc_sco3,\n" +
|
||||
" ISNULL(mtb_lisv_data.perc_sco4, 0) AS perc_sco4,\n" +
|
||||
" ISNULL(mtb_lisv_data.perc_prov, 0) AS perc_prov,\n" +
|
||||
" ISNULL(mtb_lisv_data.fisso_prov, 0) AS fisso_prov,\n" +
|
||||
" ISNULL(mtb_lisv_data.posizione, '') AS posizione,\n" +
|
||||
" ISNULL(mtb_lisv_data.perc_gest, 0) AS perc_gest,\n" +
|
||||
" ISNULL(mtb_lisv_data.val_gest, 0) AS val_gest,\n" +
|
||||
" mtb_lisv_data.data_agg_prz AS data_agg_prz,\n" +
|
||||
" ISNULL(mtb_lisv_data.perc_ispe, 0) AS perc_ispe,\n" +
|
||||
" ISNULL(mtb_lisv_data.val_ispe, 0) AS val_ispe,\n" +
|
||||
" ISNULL(mtb_lisv_data.perc_promo, 0) AS perc_promo,\n" +
|
||||
" ISNULL(mtb_lisv_data.val_promo, 0) AS val_promo,\n" +
|
||||
" ISNULL(mtb_lisv_data.perc_oneri, 0) AS perc_oneri,\n" +
|
||||
" ISNULL(mtb_lisv_data.val_oneri, 0) AS val_oneri,\n" +
|
||||
" mtb_lisv_data.tipo_variazione AS tipo_variazione,\n" +
|
||||
" mtb_lisv_data.note AS note,\n" +
|
||||
" mtb_lisv_data.aggiornato_da AS aggiornato_da,\n" +
|
||||
" mtb_lisv_data.prz_vend * (1 - mtb_lisv_data.perc_sco1 / 100) * (1 - mtb_lisv_data.perc_sco2 / 100) *\n" +
|
||||
" (1 - mtb_lisv_data.perc_sco3 / 100) *\n" +
|
||||
" (1 - mtb_lisv_data.perc_sco4 / 100) AS prz_vend_netto,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN ISNULL(mtb_lisv_data.colli_pedana, 0) <> 0 THEN mtb_lisv_data.colli_pedana\n" +
|
||||
" ELSE mtb_aart.colli_pedana END AS colli_pedana,\n" +
|
||||
" mtb_lisv_data.cod_tcol_ul AS cod_tcol_ul,\n" +
|
||||
" mtb_lisv_data.cod_tcol_ui AS cod_tcol_ui,\n" +
|
||||
" ISNULL(mtb_lisv_data.prz_vend_sug, 0) AS prz_vend_sug,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN ISNULL(mtb_lisv_data.qta_cnf, 0) <> 0\n" +
|
||||
" AND dbo.getGestSetup('VTB_LIST', 'SETUP', 'QTA_CNF_LISTINO') = 'S' \n" +
|
||||
" THEN mtb_lisv_data.qta_cnf\n" +
|
||||
" ELSE mtb_aart.qta_cnf END AS qta_cnf,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN ISNULL(mtb_lisv_data.colli_strato, 0) <> 0 THEN mtb_lisv_data.colli_strato\n" +
|
||||
" ELSE mtb_aart.colli_strato END AS colli_strato,\n" +
|
||||
" mtb_lisv_data.descrizione_html AS descrizione_html,\n" +
|
||||
" mtb_lisv_data.colli_pedana AS colli_pedana_lisv,\n" +
|
||||
" mtb_lisv_data.qta_cnf AS qta_cnf_lisv,\n" +
|
||||
" mtb_lisv_data.colli_strato AS colli_strato_lisv,\n" +
|
||||
" mtb_lisv_data.sconto_cartoni,\n" +
|
||||
" mtb_lisv_data.sconto_strato,\n" +
|
||||
" mtb_lisv_data.sconto_pedane,\n" +
|
||||
" vtb_list.flag_attivo,\n" +
|
||||
" vtb_list_data.note AS note_testata,\n" +
|
||||
" ISNULL(mtb_lisv_data.flag_prz_bloccato, 'N') AS flag_prz_bloccato,\n" +
|
||||
" vtb_list_data.porto AS porto,\n" +
|
||||
" mtb_lisv_data.system_note,\n" +
|
||||
" mtb_lisv.add_val_spese,\n" +
|
||||
" mtb_lisv.add_ric_spese,\n" +
|
||||
" mtb_lisv.add_sco_spese,\n" +
|
||||
" mtb_aart.flag_incl_listino\n" +
|
||||
" FROM last_lisv tmp_list\n" +
|
||||
" INNER JOIN vtb_list ON vtb_list.cod_vlis = tmp_list.cod_vlis\n" +
|
||||
" INNER JOIN mtb_lisv\n" +
|
||||
" ON tmp_list.cod_vlis_rif = mtb_lisv.cod_vlis AND tmp_list.cod_mart = mtb_lisv.cod_mart\n" +
|
||||
" INNER JOIN art mtb_aart ON tmp_list.cod_mart = mtb_aart.cod_mart\n" +
|
||||
" LEFT OUTER JOIN vtb_list_data ON tmp_list.cod_vlis_rif = vtb_list_data.cod_vlis AND\n" +
|
||||
" tmp_list.max_id_lisv = vtb_list_data.id_listino\n" +
|
||||
" LEFT OUTER JOIN mtb_lisv_data ON vtb_list_data.cod_vlis = mtb_lisv_data.cod_vlis AND\n" +
|
||||
" tmp_list.cod_mart = mtb_lisv_data.cod_mart AND\n" +
|
||||
" vtb_list_data.versione = mtb_lisv_data.versione\n" +
|
||||
"\n" +
|
||||
" WHERE (@codmart IS NULL OR tmp_list.cod_mart = @codmart)\n" +
|
||||
" AND (@codvlis IS NULL OR tmp_list.cod_vlis = @codvlis)");
|
||||
createOrUpdateFunction("getPromozioneVendita_new", "CREATE FUNCTION [dbo].[getPromozioneVendita_new] (@dataIniz datetime, @dataFine datetime, @codVlis varchar(5), @codPromo varchar(10), @codMart varchar(15)) RETURNS TABLE AS \n" +
|
||||
" return \n" +
|
||||
"\n" +
|
||||
"-- declare @dataIniz datetime, @dataFine datetime, @codVlis varchar(5), @codPromo varchar(10), @codMart varchar(15)\n" +
|
||||
"\n" +
|
||||
" with lisv AS (\n" +
|
||||
" SELECT vtb_list_data.cod_vlis,\n" +
|
||||
" vtb_list_data.versione,\n" +
|
||||
" vtb_list_data.id_listino as id_listino,\n" +
|
||||
" vtb_list_data.data_iniz,\n" +
|
||||
" vtb_list_data.cod_vlis AS cod_vlis_rif,\n" +
|
||||
" vtb_list_data.versione AS versione_rif,\n" +
|
||||
" vtb_list_data.cod_promo,\n" +
|
||||
" vtb_list_data.data_fine,\n" +
|
||||
" vtb_list_data.note\n" +
|
||||
" FROM vtb_list_data \n" +
|
||||
" WHERE vtb_list_data.cod_promo IS NOT NULL \n" +
|
||||
" and vtb_list_data.cod_vlis_rif IS NULL\n" +
|
||||
" UNION\n" +
|
||||
" SELECT vtb_list_data.cod_vlis,\n" +
|
||||
" vtb_list_data.versione,\n" +
|
||||
" vtb_list_data_rif.id_listino,\n" +
|
||||
" vtb_list_data.data_iniz,\n" +
|
||||
" vtb_list_data.cod_vlis_rif AS cod_vlis_rif,\n" +
|
||||
" vtb_list_data.versione_rif AS versione_rif,\n" +
|
||||
" vtb_list_data_rif.cod_promo,\n" +
|
||||
" vtb_list_data_rif.data_fine,\n" +
|
||||
" vtb_list_data.note\n" +
|
||||
" FROM vtb_list_data \n" +
|
||||
" INNER JOIN vtb_list_data vtb_list_data_rif on vtb_list_data.cod_vlis_rif = vtb_list_data_rif.cod_vlis and vtb_list_data.versione_rif = vtb_list_data_rif.versione\n" +
|
||||
" WHERE vtb_list_data.cod_promo IS NOT NULL )\n" +
|
||||
" , testata_lisv as (\n" +
|
||||
" select *\n" +
|
||||
" from lisv\n" +
|
||||
" WHERE (@codvlis IS NULL OR lisv.cod_vlis = @codVlis) \n" +
|
||||
" AND (@codPromo IS NULL OR lisv.cod_promo = @codPromo)\n" +
|
||||
" AND (((@dataFine IS NULL OR ISNULL(@dataIniz, cast(GetDate() as DATE)) = @dataFine) AND \n" +
|
||||
" ISNULL(@dataIniz, cast(GetDate() as DATE)) BETWEEN lisv.data_iniz AND lisv.data_fine) OR \n" +
|
||||
" (@dataFine IS NOT NULL AND ISNULL(@dataIniz, cast(GetDate() as DATE)) <> @dataFine AND \n" +
|
||||
" (lisv.data_iniz BETWEEN ISNULL(@dataIniz, cast(GetDate() as DATE)) AND @dataFine OR \n" +
|
||||
" lisv.data_fine BETWEEN ISNULL(@dataIniz, cast(GetDate() as DATE)) AND @dataFine OR \n" +
|
||||
" ISNULL(@dataIniz, cast(GetDate() as DATE)) BETWEEN lisv.data_iniz AND lisv.data_fine OR\n" +
|
||||
" @dataFine BETWEEN lisv.data_iniz AND lisv.data_fine ))) )\n" +
|
||||
" SELECT vtb_list.cod_vlis, \n" +
|
||||
" vtb_list.descrizione, \n" +
|
||||
" vtb_list_data.data_iniz, \n" +
|
||||
" vtb_list_data.data_fine,\n" +
|
||||
" vtb_list_data.cod_promo,\n" +
|
||||
" vtb_list_data.versione, \n" +
|
||||
" vtb_list.cod_divi,\n" +
|
||||
" vtb_list.flag_arr_prz_iva, \n" +
|
||||
" vtb_list.arr_ric,\n" +
|
||||
" vtb_list.flag_list_iva_inclusa,\n" +
|
||||
" vtb_list.flag_lisv_margine, \n" +
|
||||
" mtb_lisv_data.cod_mart as cod_mart, \n" +
|
||||
" mtb_lisv_data.unt_mis_ven as unt_mis_ven,\n" +
|
||||
" mtb_lisv_data.rap_conv as rap_conv, \n" +
|
||||
" mtb_lisv_data.prz_base as prz_base, \n" +
|
||||
" mtb_lisv_data.ricarica as ricarico,\n" +
|
||||
" \n" +
|
||||
" CASE\n" +
|
||||
" WHEN mtb_lisv_data.prz_vend IS NOT NULL AND mtb_lisv_data.prz_vend <> 0 THEN\n" +
|
||||
" ROUND((ISNULL(mtb_lisv_data.prz_vend, 0) -\n" +
|
||||
" (ISNULL(mtb_lisv_data.prz_base, 0) / (1 - mtb_aart.perc_sfrido / 100))) /\n" +
|
||||
" ISNULL(mtb_lisv_data.prz_vend, 0) * 100, 2)\n" +
|
||||
" ELSE 0 END AS margine_eff,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN mtb_lisv_data.prz_base IS NOT NULL AND mtb_lisv_data.prz_base <> 0 THEN\n" +
|
||||
" ROUND((ISNULL(mtb_lisv_data.prz_vend, 0) -\n" +
|
||||
" (ISNULL(mtb_lisv_data.prz_base, 0) / (1 - mtb_aart.perc_sfrido / 100))) /\n" +
|
||||
" (ISNULL(mtb_lisv_data.prz_base, 0) / (1 - mtb_aart.perc_sfrido / 100)) * 100, 2)\n" +
|
||||
" ELSE 0 END AS ricarico_eff,\n" +
|
||||
" mtb_lisv_data.prz_vend as prz_vend, \n" +
|
||||
" mtb_lisv_data.prz_vend_iva as prz_vend_iva, \n" +
|
||||
" mtb_lisv_data.perc_sco1 as perc_sco1, \n" +
|
||||
" mtb_lisv_data.perc_sco2 as perc_sco2, \n" +
|
||||
" mtb_lisv_data.perc_sco3 as perc_sco3, \n" +
|
||||
" mtb_lisv_data.perc_sco4 as perc_sco4, \n" +
|
||||
" mtb_lisv_data.perc_prov as perc_prov, \n" +
|
||||
" mtb_lisv_data.fisso_prov as fisso_prov, \n" +
|
||||
" mtb_lisv_data.posizione as posizione, \n" +
|
||||
" mtb_lisv_data.perc_gest as perc_gest, \n" +
|
||||
" mtb_lisv_data.val_gest as val_gest, \n" +
|
||||
" mtb_lisv_data.data_agg_prz as data_agg_prz, \n" +
|
||||
" mtb_lisv_data.perc_ispe as perc_ispe, \n" +
|
||||
" mtb_lisv_data.val_ispe as val_ispe, \n" +
|
||||
" mtb_lisv_data.perc_promo as perc_promo, \n" +
|
||||
" mtb_lisv_data.val_promo as val_promo, \n" +
|
||||
" mtb_lisv_data.perc_oneri as perc_oneri, \n" +
|
||||
" mtb_lisv_data.val_oneri as val_oneri, \n" +
|
||||
" mtb_lisv_data.tipo_variazione as tipo_variazione, \n" +
|
||||
" mtb_lisv_data.note as note,\n" +
|
||||
" mtb_lisv_data.aggiornato_da as aggiornato_da,\n" +
|
||||
" mtb_lisv_data.prz_vend * (1 - mtb_lisv_data.perc_sco1/100) * (1 - mtb_lisv_data.perc_sco2/100)* (1 - mtb_lisv_data.perc_sco3/100)* (1 - mtb_lisv_data.perc_sco4/100) as prz_vend_netto,\n" +
|
||||
" vtb_promo.descrizione as 'descr_promo',\n" +
|
||||
" vtb_promo.data_iniz_sell_out,\n" +
|
||||
" vtb_promo.data_fine_sell_out,\n" +
|
||||
" vtb_promo.flag_tipo_promo,\n" +
|
||||
" mtb_lisv_data.sconto_cartoni,\n" +
|
||||
" mtb_lisv_data.sconto_strato,\n" +
|
||||
" mtb_lisv_data.sconto_pedane,\n" +
|
||||
" mtb_lisv_data.giacenza,\n" +
|
||||
" mtb_lisv_data.magg_prz_vend,\n" +
|
||||
" vtb_promo.flag_sconto_contrattuale,\n" +
|
||||
" vtb_promo.intercode_xml_variazioni,\n" +
|
||||
" vtb_list_data.note as note_testata,\n" +
|
||||
" vtb_promo.flag_tipologia\n" +
|
||||
" FROM vtb_list inner join testata_lisv vtb_list_data on vtb_list.cod_vlis = vtb_list_data.cod_vlis_rif\n" +
|
||||
" inner join mtb_lisv_data on vtb_list_data.cod_vlis_rif = mtb_lisv_data.cod_vlis AND vtb_list_data.versione_rif = mtb_lisv_data.versione\n" +
|
||||
" inner join mtb_aart on mtb_lisv_data.cod_mart = mtb_aart.cod_mart\n" +
|
||||
" inner join vtb_promo on vtb_list_data.cod_promo = vtb_promo.cod_promo \n" +
|
||||
" WHERE (@codMart IS NULL OR mtb_lisv_data.cod_mart = @codMart)");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240917172212 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomer(IntegryCustomer.Carelli)) return;
|
||||
|
||||
updateSetupValue("IMPORT_RAPPORTINI FG", "MMPOS", "ATTIVO", "N");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240918101510 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
executeStatement("CREATE TABLE gtb_banc_azi_intercode (\n" +
|
||||
"\tid BIGINT IDENTITY NOT NULL, \n" +
|
||||
"\tcod_banc_azi VARCHAR(5) NOT NULL, \n" +
|
||||
"\tformato VARCHAR(40) NOT NULL, \n" +
|
||||
"\tintercode VARCHAR(40) NOT NULL,\n" +
|
||||
"\tUNIQUE (cod_banc_azi, formato),\n" +
|
||||
"CONSTRAINT PK_gtb_banc_azi_intercode PRIMARY KEY (id),\n" +
|
||||
"CONSTRAINT FK_gtb_banc_azi_intercode FOREIGN KEY (cod_banc_azi) REFERENCES gtb_banc_azi(cod_banc_azi));");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240918124524 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
executeStatement("CREATE TABLE gtb_tipi_paga_intercode (\n" +
|
||||
"\tid BIGINT IDENTITY NOT NULL, \n" +
|
||||
"\ttipo_paga VARCHAR(10) NOT NULL, \n" +
|
||||
"\tformato VARCHAR(40) NOT NULL, \n" +
|
||||
"\tintercode VARCHAR(40) NOT NULL,\n" +
|
||||
"\tUNIQUE (tipo_paga, formato),\n" +
|
||||
"CONSTRAINT PK_gtb_tipi_paga_intercode PRIMARY KEY (id),\n" +
|
||||
"CONSTRAINT FK_gtb_tipi_paga_intercode FOREIGN KEY (tipo_paga) REFERENCES gtb_tipi_paga(tipo_paga));");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
import it.integry.ems_model.utility.dto.IndexTableDTO;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
public class Migration_20240918142402 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
IndexTableDTO indexTableDTO = new IndexTableDTO()
|
||||
.setIndexName("ix_stb_files_attached_2")
|
||||
.setTableName("stb_files_attached")
|
||||
.setColumnsIndex(Arrays.asList(
|
||||
new IndexTableDTO.ColumnIndex("parent_id_attach")))
|
||||
.setColumnsInclude("id_attach", "file_name")
|
||||
.setOverride(true);
|
||||
createIndex(indexTableDTO);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240919114540 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
updateSetupValue("DATI_AZIENDA", "FATTURA_ELETTRONICA", "INSERT_DDT", "S");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240919130154 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
dropFunction("getListinoVenditaOld");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,319 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
import it.integry.ems_model.entity.WtbJrept;
|
||||
import it.integry.ems_model.types.OperationType;
|
||||
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.Base64;
|
||||
|
||||
public class Migration_20240920113346 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
createOrUpdateView("vvw_contratti_vendita", "CREATE VIEW [dbo].[vvw_contratti_vendita] AS\n" +
|
||||
"WITH depo AS (SELECT TOP 1 cod_mdep\n" +
|
||||
" FROM mtb_depo\n" +
|
||||
" WHERE mtb_depo.flag_movimentabile = 'S'\n" +
|
||||
" AND (cod_anag IS NULL OR cod_anag IN (SELECT gtb_anag.cod_anag\n" +
|
||||
" FROM gtb_anag,\n" +
|
||||
" azienda\n" +
|
||||
" WHERE gtb_anag.part_iva = azienda.part_iva))),\n" +
|
||||
" contratto AS (SELECT vtb_offt.cod_anag,\n" +
|
||||
" vtb_offt.cod_vdes,\n" +
|
||||
" vtb_offt.note,\n" +
|
||||
" vtb_offr.id_offerta,\n" +
|
||||
" vtb_offr.cod_mart,\n" +
|
||||
" vtb_offr.unt_mis,\n" +
|
||||
" vtb_offr.descrizione,\n" +
|
||||
" vtb_offr.descrizione_html,\n" +
|
||||
" vtb_offr.json_costi,\n" +
|
||||
" vtb_offr.costo_unt,\n" +
|
||||
" vtb_offr.unt_mis_vend,\n" +
|
||||
" vtb_offr.prz_unt,\n" +
|
||||
" vtb_offr.qta_off,\n" +
|
||||
" vtb_offr.data_iniz_contr,\n" +
|
||||
" vtb_offr.data_fine_contr,\n" +
|
||||
" vtb_offt.cod_paga,\n" +
|
||||
" vtb_offr.perc_sco1,\n" +
|
||||
" vtb_offr.perc_sco2,\n" +
|
||||
" vtb_offr.perc_sco3,\n" +
|
||||
" vtb_offr.perc_sco4,\n" +
|
||||
" vtb_offr.rap_conv_vend,\n" +
|
||||
" vtb_offr.qta_ord,\n" +
|
||||
" vtb_offr.qta_doc\n" +
|
||||
" FROM vtb_offt\n" +
|
||||
" INNER JOIN vtb_offr ON vtb_offt.id_offerta = vtb_offr.id_offerta\n" +
|
||||
" CROSS APPLY [dbo].[getUntMisArticolo](vtb_offr.cod_mart, vtb_offr.unt_mis_vend) um\n" +
|
||||
" WHERE stato_offerta = 3)\n" +
|
||||
"\n" +
|
||||
"SELECT contratto.data_iniz_contr AS data_iniz,\n" +
|
||||
" contratto.data_fine_contr AS data_fine,\n" +
|
||||
" contratto.id_offerta AS id_contratto,\n" +
|
||||
" contratto.note,\n" +
|
||||
" contratto.cod_mart,\n" +
|
||||
" contratto.descrizione AS descrizione_articolo,\n" +
|
||||
" contratto.unt_mis_vend AS unt_mis_ven,\n" +
|
||||
" contratto.qta_off AS qta_vend_contratto,\n" +
|
||||
" contratto.prz_unt AS prz_vend,\n" +
|
||||
" contratto.perc_sco1,\n" +
|
||||
" contratto.perc_sco2,\n" +
|
||||
" contratto.perc_sco3,\n" +
|
||||
" contratto.perc_sco4,\n" +
|
||||
" ISNULL(contratto.qta_ord, 0) AS qta_ord,\n" +
|
||||
" ISNULL(contratto.qta_doc, 0) AS qta_doc,\n" +
|
||||
" gtb_anag.cod_anag,\n" +
|
||||
" gtb_anag.rag_soc,\n" +
|
||||
" gtb_anag.indirizzo,\n" +
|
||||
" gtb_anag.cap,\n" +
|
||||
" gtb_anag.citta,\n" +
|
||||
" gtb_anag.prov,\n" +
|
||||
" gtb_anag.nazione,\n" +
|
||||
" gtb_anag.e_mail,\n" +
|
||||
" gtb_anag.telefono,\n" +
|
||||
" gtb_anag.part_iva,\n" +
|
||||
" ISNULL(giacenza.qta_disp * rap_conv_vend, 0) AS qta_disp,\n" +
|
||||
" (SELECT cod_mdep FROM depo) AS cod_mdep,\n" +
|
||||
" contratto.prz_unt * (1 - contratto.perc_sco1 / 100) * (1 - contratto.perc_sco2 / 100) -\n" +
|
||||
" (1 * contratto.perc_sco3 / 100) *\n" +
|
||||
" (1 - contratto.perc_sco4 / 100) AS prz_vend_netto,\n" +
|
||||
" contratto.cod_paga,\n" +
|
||||
" gtb_paga.descrizione AS descrizione_paga,\n" +
|
||||
" contratto.qta_off -\n" +
|
||||
" ISNULL(contratto.qta_ord, 0) -\n" +
|
||||
" ISNULL(contratto.qta_doc, 0) AS qta_residua,\n" +
|
||||
" ISNULL(contratto.qta_ord + contratto.qta_doc, 0) AS qta_usata,\n" +
|
||||
" contratto.rap_conv_vend AS rap_conv,\n" +
|
||||
" contratto.cod_vdes,\n" +
|
||||
" vd.destinatario,\n" +
|
||||
" vd.indirizzo AS indirizzo_dest,\n" +
|
||||
" vc.cod_vlis\n" +
|
||||
"FROM contratto\n" +
|
||||
" INNER JOIN gtb_anag ON contratto.cod_anag = gtb_anag.cod_anag\n" +
|
||||
" INNER JOIN vtb_clie vc ON contratto.cod_anag = vc.cod_anag\n" +
|
||||
" LEFT OUTER JOIN vtb_dest vd ON contratto.cod_anag = vd.cod_anag AND contratto.cod_vdes = vd.cod_vdes\n" +
|
||||
" LEFT OUTER JOIN gtb_paga ON contratto.cod_paga = gtb_paga.cod_paga\n" +
|
||||
" OUTER APPLY (SELECT SUM(mtb_part.qta_esistente + mtb_part.qta_imp_lav - mtb_part.qta_imp_cli) AS qta_disp\n" +
|
||||
" FROM mtb_part\n" +
|
||||
" INNER JOIN mtb_depo ON mtb_part.cod_mdep = mtb_depo.cod_mdep\n" +
|
||||
" WHERE mtb_depo.flag_movimentabile = 'S'\n" +
|
||||
" AND mtb_part.cod_mart = contratto.cod_mart) giacenza");
|
||||
|
||||
createOrUpdateFunction("pvm_getassortimentoCliente", "CREATE FUNCTION [dbo].[pvm_getassortimentoCliente](\n" +
|
||||
" @codAnag VARCHAR(5), @codVlis VARCHAR(5), @codVdes VARCHAR(5), @dataValidita DATETIME, @viewPromo BIT\n" +
|
||||
")\n" +
|
||||
" RETURNS TABLE\n" +
|
||||
" AS\n" +
|
||||
" RETURN( /*\n" +
|
||||
"\n" +
|
||||
" declare @codAnag VARCHAR(5), @codVlis VARCHAR(5), @dataValidita DATETIME, @viewPromo BIT\n" +
|
||||
" set @codAnag = 'C3355'\n" +
|
||||
" set @codVlis = 'C3355'\n" +
|
||||
" set @dataValidita = '2023/04/04'\n" +
|
||||
" set @viewPromo = 1;\n" +
|
||||
" */\n" +
|
||||
" WITH assortimento AS (SELECT vtb_griglia_art.cod_mart\n" +
|
||||
" FROM vtb_clie\n" +
|
||||
" INNER JOIN vtb_griglia ON vtb_clie.cod_griglia = vtb_griglia.cod_griglia\n" +
|
||||
" INNER JOIN vtb_griglia_art\n" +
|
||||
" ON vtb_griglia.cod_griglia = vtb_griglia_art.cod_griglia AND\n" +
|
||||
" vtb_griglia.data_validita = vtb_griglia_art.data_validita\n" +
|
||||
" WHERE vtb_clie.cod_anag = @codAnag\n" +
|
||||
" AND vtb_griglia.data_validita = (SELECT MAX(g.data_validita)\n" +
|
||||
" FROM vtb_griglia g\n" +
|
||||
" WHERE g.cod_griglia = vtb_clie.cod_griglia\n" +
|
||||
" AND g.data_validita <= ISNULL(@dataValidita, CAST(GETDATE() AS DATE)))),\n" +
|
||||
" lisv AS (SELECT cod_vlis, cod_vlis AS cod_vlis_rif\n" +
|
||||
" FROM vtb_list\n" +
|
||||
" WHERE cod_vlis_rif IS NULL\n" +
|
||||
" UNION ALL\n" +
|
||||
" SELECT cod_vlis, cod_vlis_rif\n" +
|
||||
" FROM vtb_list\n" +
|
||||
" WHERE cod_vlis_rif IS NOT NULL),\n" +
|
||||
" listino AS (SELECT DISTINCT cod_mart, tipo_variazione\n" +
|
||||
" FROM (SELECT lisv.cod_vlis,\n" +
|
||||
" mtb_lisv.cod_mart,\n" +
|
||||
" LAST_VALUE(CASE\n" +
|
||||
" WHEN vtb_list_data.data_iniz IS NULL THEN NULL\n" +
|
||||
" ELSE mtb_lisv_data.tipo_variazione END)\n" +
|
||||
" OVER (PARTITION BY lisv.cod_vlis, mtb_lisv.cod_mart\n" +
|
||||
" ORDER BY vtb_list_data.data_iniz, CASE WHEN vtb_list_data.cod_promo IS NULL THEN 0 ELSE 1 END, vtb_list_data.versione\n" +
|
||||
" RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING) AS tipo_variazione\n" +
|
||||
" FROM lisv\n" +
|
||||
" INNER JOIN mtb_lisv ON lisv.cod_vlis_rif = mtb_lisv.cod_vlis\n" +
|
||||
" INNER JOIN mtb_lisv_data ON mtb_lisv.cod_vlis = mtb_lisv_data.cod_vlis AND\n" +
|
||||
" mtb_lisv.cod_mart = mtb_lisv_data.cod_mart\n" +
|
||||
" LEFT OUTER JOIN vtb_list_data\n" +
|
||||
" ON mtb_lisv_data.cod_vlis = vtb_list_data.cod_vlis AND\n" +
|
||||
" mtb_lisv_data.versione = vtb_list_data.versione AND\n" +
|
||||
" vtb_list_data.data_iniz <=\n" +
|
||||
" ISNULL(@dataValidita, CAST(GETDATE() AS DATE))\n" +
|
||||
" WHERE lisv.cod_vlis = @codVlis\n" +
|
||||
" AND NOT EXISTS(SELECT cod_mart FROM assortimento)) t\n" +
|
||||
" WHERE (t.tipo_variazione IS NULL OR t.tipo_variazione <> 'D')),\n" +
|
||||
" tmp_lisv AS (SELECT l.cod_mart,\n" +
|
||||
" l.cod_vlis,\n" +
|
||||
" ISNULL(p.data_iniz, l.data_iniz) AS data_iniz,\n" +
|
||||
" ISNULL(p.prz_vend, l.prz_vend) AS prz_vend,\n" +
|
||||
" ISNULL(p.prz_vend_netto, l.prz_vend_netto) AS prz_vend_netto,\n" +
|
||||
" ISNULL(p.perc_sco1, l.perc_sco1) AS perc_sco1,\n" +
|
||||
" ISNULL(p.perc_sco2, l.perc_sco2) AS perc_sco2,\n" +
|
||||
" ISNULL(p.perc_sco3, l.perc_sco3) AS perc_sco3,\n" +
|
||||
" ISNULL(p.perc_sco4, l.perc_sco4) AS perc_sco4,\n" +
|
||||
" CONVERT(NUMERIC(20, 5), 0) AS qta_residua,\n" +
|
||||
" CONVERT(BIGINT, NULL) AS id_contratto,\n" +
|
||||
" ISNULL(p.rap_conv, l.rap_conv) AS rap_conv,\n" +
|
||||
" ISNULL(p.note, l.note) AS note,\n" +
|
||||
" CAST(NULL AS VARCHAR(5)) AS cod_vdes,\n" +
|
||||
" l.cod_tcol_ul AS cod_tcol_ul,\n" +
|
||||
" ISNULL(p.unt_mis_ven, l.unt_mis_ven) AS unt_mis_ven,\n" +
|
||||
" l.colli_pedana AS colli_pedana,\n" +
|
||||
" ISNULL(p.tipo_variazione, l.tipo_variazione) AS tipo_variazione,\n" +
|
||||
" CONVERT(VARCHAR(1), CASE\n" +
|
||||
" WHEN p.cod_promo IS NULL THEN NULL\n" +
|
||||
" ELSE 'P' END) AS tipo_promo,\n" +
|
||||
" CONVERT(VARCHAR(5), NULL) AS cod_paga,\n" +
|
||||
" CONVERT(VARCHAR(5), NULL) AS descr_paga,\n" +
|
||||
" l.porto,\n" +
|
||||
" l.qta_cnf\n" +
|
||||
" FROM dbo.getListinoVendita(@dataValidita, @codVlis, NULL) l\n" +
|
||||
" LEFT OUTER JOIN dbo.getPromozioneVendita(@dataValidita, @dataValidita,\n" +
|
||||
" @codVlis, NULL, NULL) p\n" +
|
||||
" ON l.cod_vlis = p.cod_vlis AND l.cod_mart = p.cod_mart AND\n" +
|
||||
" ISNULL(@viewPromo, 0) = 1\n" +
|
||||
" WHERE l.cod_vlis = @codVlis\n" +
|
||||
" AND l.cod_mart IN (SELECT cod_mart\n" +
|
||||
" FROM assortimento\n" +
|
||||
" UNION ALL\n" +
|
||||
" SELECT cod_mart\n" +
|
||||
" FROM listino)\n" +
|
||||
" AND l.tipo_variazione <> 'D'\n" +
|
||||
" AND l.tipo_variazione IS NOT NULL\n" +
|
||||
" AND l.flag_attivo = 'S'\n" +
|
||||
" UNION ALL\n" +
|
||||
" SELECT l.cod_mart,\n" +
|
||||
" l.cod_vlis,\n" +
|
||||
" NULL AS data_iniz,\n" +
|
||||
" NULL AS prz_vend,\n" +
|
||||
" NULL AS prz_vend_netto,\n" +
|
||||
" NULL AS perc_sco1,\n" +
|
||||
" NULL AS perc_sco2,\n" +
|
||||
" NULL AS perc_sco3,\n" +
|
||||
" NULL AS perc_sco4,\n" +
|
||||
" NULL AS qta_residua,\n" +
|
||||
" NULL AS id_contratto,\n" +
|
||||
" um.rap_conv AS rap_conv,\n" +
|
||||
" NULL AS note,\n" +
|
||||
" CAST(NULL AS VARCHAR(5)) AS cod_vdes,\n" +
|
||||
" NULL AS cod_tcol_ul,\n" +
|
||||
" l.unt_mis_ven AS unt_mis_ven,\n" +
|
||||
" NULL AS colli_pedana,\n" +
|
||||
" NULL AS tipo_variazione,\n" +
|
||||
" NULL AS tipo_promo,\n" +
|
||||
" CONVERT(VARCHAR(5), NULL) AS cod_paga,\n" +
|
||||
" CONVERT(VARCHAR(5), NULL) AS descr_paga,\n" +
|
||||
" NULL porto,\n" +
|
||||
" mtb_aart.qta_cnf\n" +
|
||||
" FROM mtb_lisv l\n" +
|
||||
" INNER JOIN listino ON l.cod_mart = listino.cod_mart\n" +
|
||||
" INNER JOIN mtb_aart ON l.cod_mart = mtb_aart.cod_mart\n" +
|
||||
" CROSS APPLY dbo.getUntMisArticolo(l.cod_mart, l.unt_mis_ven) um\n" +
|
||||
" WHERE l.cod_vlis = @codVlis\n" +
|
||||
" AND listino.tipo_variazione IS NULL\n" +
|
||||
" UNION ALL\n" +
|
||||
" SELECT vvw_contratti_vendita.cod_mart,\n" +
|
||||
" NULL AS cod_vlis,\n" +
|
||||
" vvw_contratti_vendita.data_iniz,\n" +
|
||||
" vvw_contratti_vendita.prz_vend,\n" +
|
||||
" ROUND(vvw_contratti_vendita.prz_vend *\n" +
|
||||
" (1 - ISNULL(vvw_contratti_vendita.perc_sco1, 0))\n" +
|
||||
" * (1 - ISNULL(vvw_contratti_vendita.perc_sco2, 0))\n" +
|
||||
" * (1 - ISNULL(vvw_contratti_vendita.perc_sco3, 0))\n" +
|
||||
" * (1 - ISNULL(vvw_contratti_vendita.perc_sco4, 0)),\n" +
|
||||
" 5) AS prz_vend_netto,\n" +
|
||||
" vvw_contratti_vendita.perc_sco1,\n" +
|
||||
" vvw_contratti_vendita.perc_sco2,\n" +
|
||||
" vvw_contratti_vendita.perc_sco3,\n" +
|
||||
" vvw_contratti_vendita.perc_sco4,\n" +
|
||||
" vvw_contratti_vendita.qta_residua,\n" +
|
||||
" vvw_contratti_vendita.id_contratto,\n" +
|
||||
" vvw_contratti_vendita.rap_conv,\n" +
|
||||
" vvw_contratti_vendita.note,\n" +
|
||||
" vvw_contratti_vendita.cod_vdes,\n" +
|
||||
" NULL,\n" +
|
||||
" vvw_contratti_vendita.unt_mis_ven,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" 'C' AS tipo_promo,\n" +
|
||||
" vvw_contratti_vendita.cod_paga,\n" +
|
||||
" vvw_contratti_vendita.descrizione_paga AS descr_paga,\n" +
|
||||
" NULL AS porto,\n" +
|
||||
" mtb_aart.qta_cnf\n" +
|
||||
" FROM vvw_contratti_vendita\n" +
|
||||
" INNER JOIN mtb_aart ON vvw_contratti_vendita.cod_mart = mtb_aart.cod_mart\n" +
|
||||
" WHERE vvw_contratti_vendita.cod_anag = @codAnag\n" +
|
||||
" AND (@codVdes IS NULL OR vvw_contratti_vendita.cod_vdes IS NULL OR\n" +
|
||||
" vvw_contratti_vendita.cod_vdes = @codVdes)\n" +
|
||||
" AND (ISNULL(@dataValidita, CAST(GETDATE() AS DATE)) BETWEEN\n" +
|
||||
" vvw_contratti_vendita.data_iniz AND vvw_contratti_vendita.data_fine)\n" +
|
||||
" AND vvw_contratti_vendita.qta_residua > 0)\n" +
|
||||
"\n" +
|
||||
" SELECT tmp_lisv.cod_mart,\n" +
|
||||
" ISNULL(maa.cod_mart_anag, tmp_lisv.cod_mart) AS cod_mart_anag,\n" +
|
||||
" cod_vlis,\n" +
|
||||
" data_iniz,\n" +
|
||||
" prz_vend,\n" +
|
||||
" prz_vend_netto,\n" +
|
||||
" perc_sco1,\n" +
|
||||
" perc_sco2,\n" +
|
||||
" perc_sco3,\n" +
|
||||
" perc_sco4,\n" +
|
||||
" qta_residua,\n" +
|
||||
" id_contratto,\n" +
|
||||
" rap_conv,\n" +
|
||||
" ISNULL(maa.note, tmp_lisv.note) AS note,\n" +
|
||||
" cod_tcol_ul,\n" +
|
||||
" unt_mis_ven,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN maa.colli_pedana IS NULL OR maa.colli_pedana = 0 THEN tmp_lisv.colli_pedana\n" +
|
||||
" ELSE maa.colli_pedana END AS colli_pedana,\n" +
|
||||
" tipo_variazione,\n" +
|
||||
" tipo_promo,\n" +
|
||||
" cod_paga,\n" +
|
||||
" descr_paga,\n" +
|
||||
" porto,\n" +
|
||||
" qta_cnf,\n" +
|
||||
" CAST(CASE WHEN tmp_lisv.data_iniz IS NULL THEN 0 ELSE 1 END AS BIT) AS art_lisv,\n" +
|
||||
" cod_vdes\n" +
|
||||
" FROM tmp_lisv\n" +
|
||||
" LEFT OUTER JOIN mtb_aart_anag maa\n" +
|
||||
" ON tmp_lisv.cod_mart = maa.cod_mart AND maa.cod_anag = @codAnag)");
|
||||
|
||||
// Prova modifica report in migration
|
||||
// if (isCustomerDb(IntegryCustomerDB.Biolevante_Biolevante)) {
|
||||
// String jrxml = "";
|
||||
// jrxml = Base64.getEncoder().encodeToString(jrxml.getBytes());
|
||||
//
|
||||
// WtbJrept wtbJrept = new WtbJrept()
|
||||
// .setId(15L)
|
||||
// .setB64Jrxml(jrxml);
|
||||
//
|
||||
// wtbJrept.setOperation(OperationType.UPDATE);
|
||||
// wtbJrept.manageWithParentConnection(advancedDataSource.getConnection(), droolsDataCompleting);
|
||||
// }
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240920165453 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (!isCustomerDb(IntegryCustomerDB.Salpar_MasabaSrl))
|
||||
return;
|
||||
|
||||
createSetup("IMPORT_ORDINI", "PUDDY", "ATTIVO", "S",
|
||||
"Inserire S/N per attivare/disattivare il tipo di importazione", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_ORDINI", "PUDDY", "EMAIL_FOR_LOG", "test@integry.it",
|
||||
"Inserire il file l'indirizzo email per inviare il log dell'importazione", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_ORDINI", "PUDDY", "FILE_FILTER", null,
|
||||
"Inserire il criterio di filtro dei file o il nome del file specifio (seguire la sintassi di java)", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_ORDINI", "PUDDY", "GG_CANC_FILE", null,
|
||||
"Giorni per la cancellazione dei file dalla cartella di appoggio", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_ORDINI", "PUDDY", "IMPORT_REST", "S",
|
||||
"Inserire S/N per attivare/disattivare il salvataggio con i servizi REST", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_ORDINI", "PUDDY", "LISTENING", "N",
|
||||
"Se LISTENIG = 'N' la procedura di importazione non si potrà mai mettere in ascolto sulla directory perchè nella procedura vengono prese in considerazione più file.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_ORDINI", "PUDDY", "PATH_FILE", null,
|
||||
"Directory contente i file da importare.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_ORDINI", "PUDDY", "PATH_FILE_IMPORTED", null,
|
||||
"Directory dove vengono spostati i file dopo l'importazione.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240920170705 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (!isCustomerDb(IntegryCustomerDB.Salpar_MasabaSrl))
|
||||
return;
|
||||
|
||||
createSetup("IMPORT_ORDINI", "PUDDY", "PROFILE_DB_VG", "VGALIMENTI",
|
||||
"Profile per la connessione al DB VGAlimenti", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240923111741 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetup("IMPORT_COLLI", "DESADV", "ATTIVO", "N",
|
||||
"Inserire S/N per attivare/disattivare il tipo di importazione", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_COLLI", "DESADV", "EMAIL_FOR_LOG", null,
|
||||
"Inserire il file l'indirizzo email per inviare il log dell'importazione", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_COLLI", "DESADV", "FILE_FILTER", null,
|
||||
"Inserire il criterio di filtro dei file o il nome del file specifio (seguire la sintassi di java)", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_COLLI", "DESADV", "GG_CANC_FILE", null,
|
||||
"Giorni per la cancellazione dei file dalla cartella di appoggio", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_COLLI", "DESADV", "IMPORT_REST", "S",
|
||||
"Inserire S/N per attivare/disattivare il salvataggio con i servizi REST", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_COLLI", "DESADV", "LISTENING", "N",
|
||||
"Se LISTENIG = 'N' la procedura di importazione non si potrà mai mettere in ascolto sulla directory perchè nella procedura vengono prese in considerazione più file.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_COLLI", "DESADV", "PATH_FILE", null,
|
||||
"Directory contente i file da importare.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_COLLI", "DESADV", "PATH_FILE_IMPORTED", null,
|
||||
"Directory dove vengono spostati i file dopo l'importazione.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240923125840 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB() || !isTextiles())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
executeStatement(
|
||||
"UPDATE Wdtb_ordt\n" +
|
||||
"SET Wdtb_ordt.user_name =\n" +
|
||||
" (SELECT user_name\n" +
|
||||
" FROM stb_user\n" +
|
||||
" WHERE Wdtb_ordt.compilato_da = stb_user.full_name\n" +
|
||||
" AND stb_user.flag_attivo = 'S'\n" +
|
||||
" AND stb_user.key_group = 5)\n" +
|
||||
"FROM wdtb_ordt\n" +
|
||||
"WHERE data_ord >= '2024.1.1'\n" +
|
||||
" AND Wdtb_ordt.user_name IS NULL"
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240924095921 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
String reportNameSchedaScar = null;
|
||||
String reportNameCertificati = null;
|
||||
String reportNameDettaglioValore = null;
|
||||
String reportNameSchedaVersamento = null;
|
||||
String reportNameSchedaTraspPomodori = null;
|
||||
|
||||
|
||||
if (isCustomer(IntegryCustomer.RossoGargano)) {
|
||||
reportNameSchedaScar = "SchedaGestioneScaricoProdotto";
|
||||
reportNameSchedaVersamento = "SchedaVersamentoProdotto";
|
||||
reportNameSchedaTraspPomodori = "SchedaTrasportiPomodoro";
|
||||
reportNameCertificati = "CertificatoConsegnaIndustrie";
|
||||
reportNameDettaglioValore = "DettaglioMovimentiAValore";
|
||||
}
|
||||
|
||||
|
||||
createSetup("PVM", "PIAN_ACC_ROSSG", "REPORT_NAME_CERTIFICATI", reportNameCertificati, "Nome report stampa certificato", "REPORT_NAME");
|
||||
createSetup("PVM", "PIAN_ACC_ROSSG", "REPORT_NAME_DET_VALORE", reportNameDettaglioValore, "Nome report scheda dettaglio a valore", "REPORT_NAME");
|
||||
createSetup("PVM", "PIAN_ACC_ROSSG", "REPORT_NAME_SCHEDA_SCAR", reportNameSchedaScar, "Nome report scheda gestione scarico prodotti", "REPORT_NAME");
|
||||
createSetup("PVM", "PIAN_ACC_ROSSG", "REPORT_NAME_SCHEDA_VERSAMENTO", reportNameSchedaVersamento, "Nome report Scheda versamento prodotto", "REPORT_NAME");
|
||||
createSetup("PVM", "PIAN_ACC_ROSSG", "REPORT_NAME_SCHEDA_TRASP_POMODORO", reportNameSchedaTraspPomodori, "Nome report Scheda trasporto pomodori", "REPORT_NAME");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240924152410 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS))
|
||||
return;
|
||||
|
||||
executeStatement("alter table jtb_flav add altre_mansioni varchar(8000)");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240924155208 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (!isCustomerDb(IntegryCustomerDB.Gramm_Gramm))
|
||||
return;
|
||||
|
||||
createSetup("W_VDISKCONAD_DLG", "FILCONAD", "FLAG_VIS_RIF_BOLLA_LISTINO_3115", "S",
|
||||
"Se impostato a S nel generare il file FILCONAD per i documenti con listino 3115 nel file al posto dei riferimenti della fattura verranno specificati i riferimento della bolla", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240925103433 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetup("W_CSCADFOR_DISP", "DATAWINDOW", "D_CSCADFOR_REP", null,
|
||||
null, false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("W_CSCADFOR_DISP", "DATAWINDOW", "D_CSCADFOR_NOBANCA_REP", null,
|
||||
null, false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
|
||||
if(isCustomer(IntegryCustomer.Carelli)) {
|
||||
updateSetupValue("w_cscadfor_disp", "DATAWINDOW", "d_cscadfor_rep", "d_cscadfor_carelli_rep");
|
||||
updateSetupValue("w_cscadfor_disp", "DATAWINDOW", "d_cscadfor_nobanca_rep", "d_cscadfor_nobanca_carelli_rep");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240925105952 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
String value = null;
|
||||
|
||||
if (isCustomer(IntegryCustomer.SaporiVeri)){
|
||||
value = "0.2";
|
||||
}
|
||||
|
||||
createSetup("ORDIFY", "SETUP", "PERC_PROVVIGIONE", value,
|
||||
"Percentuale di provvigione da applicare per ogni punto percentuale non applicato", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240925163122 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetup("IMPORT_SCADENZE", "DOCFINANCE", "ATTIVO", "N",
|
||||
"Inserire S/N per attivare/disattivare il tipo di importazione", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_SCADENZE", "DOCFINANCE", "EMAIL_FOR_LOG", null,
|
||||
"Inserire il file l'indirizzo email per inviare il log dell'importazione", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_SCADENZE", "DOCFINANCE", "FILE_FILTER", null,
|
||||
"Inserire il criterio di filtro dei file o il nome del file specifio (seguire la sintassi di java)", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_SCADENZE", "DOCFINANCE", "GG_CANC_FILE", null,
|
||||
"Giorni per la cancellazione dei file dalla cartella di appoggio", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_SCADENZE", "DOCFINANCE", "IMPORT_REST", "S",
|
||||
"Inserire S/N per attivare/disattivare il salvataggio con i servizi REST", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_SCADENZE", "DOCFINANCE", "LISTENING", "N",
|
||||
"Se LISTENIG = 'N' la procedura di importazione non si potrà mai mettere in ascolto sulla directory perchè nella procedura vengono prese in considerazione più file.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_SCADENZE", "DOCFINANCE", "PATH_FILE", null,
|
||||
"Directory contente i file da importare.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_SCADENZE", "DOCFINANCE", "PATH_FILE_IMPORTED", null,
|
||||
"Directory dove vengono spostati i file dopo l'importazione.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240926090309 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetup("CRUSCOTTO_PRODUZIONE", "SETUP", "RIAPRI_ORDINI", "N",
|
||||
"Se impostato a S nella riapertura della giornata sul cruscotto va ad impostare a N flag_evaso_forzato e flag_evaso", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240926090420 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (!isCustomerDb(IntegryCustomerDB.Agricoper_Agricoper))
|
||||
return;
|
||||
|
||||
updateSetupValue("CRUSCOTTO_PRODUZIONE", "SETUP", "RIAPRI_ORDINI", "S",
|
||||
"Se impostato a S nella riapertura della giornata sul cruscotto va ad impostare a N flag_evaso_forzato e flag_evaso", false, null, false, false, false,
|
||||
false, false, null, false, null);
|
||||
|
||||
executeStatement("DELETE\n" +
|
||||
"FROM stb_gest_setup_depo\n" +
|
||||
"WHERE gest_name = 'CRUSCOTTO_PRODUZIONE'\n" +
|
||||
" AND section = 'SETUP'\n" +
|
||||
" AND key_section = 'RIAPRI_ORDINI'"
|
||||
);
|
||||
|
||||
executeStatement("DELETE\n" +
|
||||
"FROM wtb_gest_setup_user\n" +
|
||||
"WHERE gest_name = 'CRUSCOTTO_PRODUZIONE'\n" +
|
||||
" AND section = 'SETUP'\n" +
|
||||
" AND key_section = 'RIAPRI_ORDINI'"
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240926115459 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
executeStatement("ALTER TABLE ctb_scad ADD intercode VARCHAR(40)");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240926171241 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetupQuery("SI_NO", "SI_NO", "SELECT 'S' UNION ALL SELECT 'N'");
|
||||
createSetup("LIQUIDAZIONE_IVA", "CREDITO_ANNO_PREC", "VISUALIZZA_LIPE", "N",
|
||||
"Visualizza il credito iva anno precedente nel capo VP9 nella Lipe", false, "SI_NO", false, false,
|
||||
false, false, false, null, false, "SELECT 'S' UNION ALL SELECT 'N'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240927093621 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if(isCustomer(IntegryCustomer.Carelli)) {
|
||||
updateSetupValue("LIQUIDAZIONE_IVA", "CREDITO_ANNO_PREC", "VISUALIZZA_LIPE", "S");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240927103624 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetup("EXPORT_ANAGRAFICHE CLIENTI/FORNITORI", "DOCFINANCE", "ATTIVO", "N",
|
||||
"Inserire S/N per attivare/disattivare il tipo di importazione", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("EXPORT_ANAGRAFICHE CLIENTI/FORNITORI", "DOCFINANCE", "EMAIL_FOR_LOG", null,
|
||||
"Inserire il file l'indirizzo email per inviare il log dell'importazione", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("EXPORT_ANAGRAFICHE CLIENTI/FORNITORI", "DOCFINANCE", "GG_CANC_FILE", null,
|
||||
"Giorni per la cancellazione dei file dalla cartella di appoggio", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("EXPORT_ANAGRAFICHE CLIENTI/FORNITORI", "DOCFINANCE", "IMPORT_REST", "S",
|
||||
"Inserire S/N per attivare/disattivare il salvataggio con i servizi REST", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("EXPORT_ANAGRAFICHE CLIENTI/FORNITORI", "DOCFINANCE", "PATH_FILE", null,
|
||||
"Directory dove vengono salvati i file temporanei, se non è configurata i file saranno salvati in c:\\mlSetupWS\\TEMP_EXPORT", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240927121750 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetup("EXPORT_SCADENZE", "DOCFINANCE", "ATTIVO", "N",
|
||||
"Inserire S/N per attivare/disattivare il tipo di importazione", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("EXPORT_SCADENZE", "DOCFINANCE", "EMAIL_FOR_LOG", null,
|
||||
"Inserire il file l'indirizzo email per inviare il log dell'importazione", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("EXPORT_SCADENZE", "DOCFINANCE", "GG_CANC_FILE", null,
|
||||
"Giorni per la cancellazione dei file dalla cartella di appoggio", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("EXPORT_SCADENZE", "DOCFINANCE", "IMPORT_REST", "S",
|
||||
"Inserire S/N per attivare/disattivare il salvataggio con i servizi REST", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("EXPORT_SCADENZE", "DOCFINANCE", "PATH_FILE", null,
|
||||
"Directory dove vengono salvati i file temporanei, se non è configurata i file saranno salvati in c:\\mlSetupWS\\TEMP_EXPORT", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,452 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
import it.integry.ems_model.entity.*;
|
||||
import it.integry.ems_model.types.OperationType;
|
||||
|
||||
public class Migration_20240930110848 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB() || !isCustomer(IntegryCustomer.Tosca))
|
||||
return;
|
||||
|
||||
updateSetupValue("w_dordi_rc", "CREA_COMMESSA", "AUTO_GENERATE","N");
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Tosca_Cloud)) {
|
||||
executeStatement("SET IDENTITY_INSERT tosca_cloud.dbo.stb_publications ON;");
|
||||
executeStatement("INSERT INTO stb_publications (id, publication_description) VALUES (10, N'Sincronizzazione Anagrafiche');");
|
||||
executeStatement("INSERT INTO stb_publications (id, publication_description) VALUES (11, N'Sincronizzazione impegnato (Triggiano)');");
|
||||
executeStatement("INSERT INTO stb_publications (id, publication_description) VALUES (12, N'Sincronizzazione impegnato (Caserta)');");
|
||||
executeStatement("INSERT INTO stb_publications (id, publication_description) VALUES (13, N'Sincronizzazione impegnato (Catanzaro)');");
|
||||
executeStatement("INSERT INTO stb_publications (id, publication_description) VALUES (14, N'Sincronizzazione impegnato (Forlì-Cesena)');");
|
||||
executeStatement("INSERT INTO stb_publications (id, publication_description) VALUES (15, N'Sincronizzazione impegnato (Milano)');");
|
||||
executeStatement("INSERT INTO stb_publications (id, publication_description) VALUES (16, N'Sincronizzazione impegnato (Ragusa)');");
|
||||
executeStatement("INSERT INTO stb_publications (id, publication_description) VALUES (17, N'Sincronizzazione impegnato (Roma)');");
|
||||
executeStatement("INSERT INTO stb_publications (id, publication_description) VALUES (18, N'Sincronizzazione impegnato (Verona)');");
|
||||
executeStatement("SET IDENTITY_INSERT tosca_cloud.dbo.stb_publications OFF;");
|
||||
|
||||
//<editor-fold desc="Pubblicazione anagrafiche">
|
||||
StbPublications anagPublication = new StbPublications();
|
||||
anagPublication
|
||||
.setId(10L)
|
||||
.setPublicationDescription("Sincronizzazione Anagrafiche");
|
||||
anagPublication.setOperation(OperationType.NO_OP);
|
||||
|
||||
StbPublicationsDetail detailGtbAnag = new StbPublicationsDetail();
|
||||
detailGtbAnag
|
||||
.setActive(true)
|
||||
.setStbPublicationId(10L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(GtbAnag.ENTITY)
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
anagPublication.getStbPublicationsDetails().add(detailGtbAnag);
|
||||
|
||||
StbPublicationsDetail detailVtbDest = new StbPublicationsDetail();
|
||||
detailVtbDest.setActive(true)
|
||||
.setStbPublicationId(10L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(VtbDest.ENTITY)
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
anagPublication.getStbPublicationsDetails().add(detailVtbDest);
|
||||
|
||||
StbPublicationsDetail detailMtbDepo = new StbPublicationsDetail();
|
||||
detailMtbDepo.setActive(true)
|
||||
.setStbPublicationId(10L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(MtbDepo.ENTITY)
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
anagPublication.getStbPublicationsDetails().add(detailMtbDepo);
|
||||
|
||||
StbPublicationsDetail detailVtbClie = new StbPublicationsDetail();
|
||||
detailVtbClie
|
||||
.setActive(true)
|
||||
.setStbPublicationId(10L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(VtbClie.ENTITY)
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
anagPublication.getStbPublicationsDetails().add(detailVtbClie);
|
||||
|
||||
StbPublicationsDetail detailAtbForn = new StbPublicationsDetail();
|
||||
detailAtbForn
|
||||
.setActive(true)
|
||||
.setStbPublicationId(10L)
|
||||
.setEntityName(AtbForn.ENTITY)
|
||||
.setReadyToTransmit(true)
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
anagPublication.getStbPublicationsDetails().add(detailAtbForn);
|
||||
|
||||
anagPublication.manageWithParentConnection(advancedDataSource.getConnection(),droolsDataCompleting);
|
||||
//</editor-fold>
|
||||
//<editor-fold desc="Pubblicazione impegnato (Triggiano)">
|
||||
StbPublications impegnatoTriggiano = new StbPublications();
|
||||
impegnatoTriggiano.setId(11L).setPublicationDescription("Sincronizzazione impegnato (Triggiano)");
|
||||
impegnatoTriggiano.setOperation(OperationType.NO_OP);
|
||||
|
||||
StbPublicationsDetail detailDtbOrdtBA = new StbPublicationsDetail();
|
||||
detailDtbOrdtBA
|
||||
.setStbPublicationId(11L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(DtbOrdt.ENTITY)
|
||||
.setWhereCondField("gestione = 'V' AND codMdep = 'BA'")
|
||||
.setActive(true)
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
impegnatoTriggiano.getStbPublicationsDetails().add(detailDtbOrdtBA);
|
||||
|
||||
|
||||
StbPublicationsDetail detailDtbOrdrBA = new StbPublicationsDetail();
|
||||
detailDtbOrdrBA
|
||||
.setStbPublicationId(11L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(DtbOrdr.ENTITY)
|
||||
.setActive(true)
|
||||
.setWhereCondField("gestione = 'V' AND codMdep = 'BA'")
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
impegnatoTriggiano.getStbPublicationsDetails().add(detailDtbOrdrBA);
|
||||
impegnatoTriggiano.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
//</editor-fold>
|
||||
//<editor-fold desc="Pubblicazione impegnato (Caserta)">
|
||||
StbPublications impegnatoCaserta = new StbPublications();
|
||||
impegnatoCaserta.setId(12L).setPublicationDescription("Sincronizzazione impegnato (Caserta)");
|
||||
impegnatoCaserta.setOperation(OperationType.NO_OP);
|
||||
|
||||
StbPublicationsDetail detailDtbOrdtCE = new StbPublicationsDetail();
|
||||
detailDtbOrdtCE
|
||||
.setStbPublicationId(12L)
|
||||
.setEntityName(DtbOrdt.ENTITY)
|
||||
.setReadyToTransmit(true)
|
||||
.setWhereCondField("gestione = 'V' AND codMdep = 'CE'")
|
||||
.setActive(true)
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
impegnatoCaserta.getStbPublicationsDetails().add(detailDtbOrdtCE);
|
||||
|
||||
|
||||
StbPublicationsDetail detailDtbOrdrCE = new StbPublicationsDetail();
|
||||
detailDtbOrdrCE
|
||||
.setStbPublicationId(12L)
|
||||
.setEntityName(DtbOrdr.ENTITY)
|
||||
.setReadyToTransmit(true)
|
||||
.setActive(true)
|
||||
.setWhereCondField("gestione = 'V' AND codMdep = 'CE'")
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
impegnatoCaserta.getStbPublicationsDetails().add(detailDtbOrdrCE);
|
||||
impegnatoCaserta.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
//</editor-fold>
|
||||
//<editor-fold desc="Pubblicazione impegnato (Catanzaro)">
|
||||
StbPublications impegnatoCatanzaro = new StbPublications();
|
||||
impegnatoCatanzaro.setId(13L).setPublicationDescription("Sincronizzazione impegnato (Catanzaro)");
|
||||
impegnatoCatanzaro.setOperation(OperationType.NO_OP);
|
||||
|
||||
StbPublicationsDetail detailDtbOrdtCZ = new StbPublicationsDetail();
|
||||
detailDtbOrdtCZ
|
||||
.setStbPublicationId(13L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(DtbOrdt.ENTITY)
|
||||
.setWhereCondField("gestione = 'V' AND codMdep = 'CZ'")
|
||||
.setActive(true)
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
impegnatoCatanzaro.getStbPublicationsDetails().add(detailDtbOrdtCZ);
|
||||
|
||||
|
||||
StbPublicationsDetail detailDtbOrdrCZ = new StbPublicationsDetail();
|
||||
detailDtbOrdrCZ
|
||||
.setStbPublicationId(13L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(DtbOrdr.ENTITY)
|
||||
.setActive(true)
|
||||
.setWhereCondField("gestione = 'V' AND codMdep = 'CZ'")
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
impegnatoCatanzaro.getStbPublicationsDetails().add(detailDtbOrdrCZ);
|
||||
impegnatoCatanzaro.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
//</editor-fold>
|
||||
//<editor-fold desc="Pubblicazione impegnato (Forlì-Cesena)">
|
||||
StbPublications impegnatoFC = new StbPublications();
|
||||
impegnatoFC.setId(14L).setPublicationDescription("Sincronizzazione impegnato (Forlì-Cesena)");
|
||||
impegnatoFC.setOperation(OperationType.NO_OP);
|
||||
|
||||
StbPublicationsDetail detailDtbOrdtFC = new StbPublicationsDetail();
|
||||
detailDtbOrdtFC
|
||||
.setStbPublicationId(14L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(DtbOrdt.ENTITY)
|
||||
.setWhereCondField("gestione = 'V' AND codMdep = 'FC'")
|
||||
.setActive(true)
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
impegnatoFC.getStbPublicationsDetails().add(detailDtbOrdtFC);
|
||||
|
||||
|
||||
StbPublicationsDetail detailDtbOrdrFC = new StbPublicationsDetail();
|
||||
detailDtbOrdrFC
|
||||
.setStbPublicationId(14L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(DtbOrdr.ENTITY)
|
||||
.setActive(true)
|
||||
.setWhereCondField("gestione = 'V' AND codMdep = 'FC'")
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
impegnatoFC.getStbPublicationsDetails().add(detailDtbOrdrFC);
|
||||
impegnatoFC.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
//</editor-fold>
|
||||
//<editor-fold desc="Pubblicazione impegnato (Milano)">
|
||||
StbPublications impegnatoMI = new StbPublications();
|
||||
impegnatoMI.setId(15L).setPublicationDescription("Sincronizzazione impegnato (Milano)");
|
||||
impegnatoMI.setOperation(OperationType.NO_OP);
|
||||
|
||||
StbPublicationsDetail detailDtbOrdtMI = new StbPublicationsDetail();
|
||||
detailDtbOrdtMI
|
||||
.setStbPublicationId(15L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(DtbOrdt.ENTITY)
|
||||
.setWhereCondField("gestione = 'V' AND codMdep = 'MI'")
|
||||
.setActive(true)
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
impegnatoMI.getStbPublicationsDetails().add(detailDtbOrdtMI);
|
||||
|
||||
|
||||
StbPublicationsDetail detailDtbOrdrMI = new StbPublicationsDetail();
|
||||
detailDtbOrdrMI
|
||||
.setStbPublicationId(15L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(DtbOrdr.ENTITY)
|
||||
.setActive(true)
|
||||
.setWhereCondField("gestione = 'V' AND codMdep = 'MI'")
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
impegnatoMI.getStbPublicationsDetails().add(detailDtbOrdrMI);
|
||||
impegnatoMI.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
//</editor-fold>
|
||||
//<editor-fold desc="Pubblicazione impegnato (Ragusa)">
|
||||
StbPublications impegnatoRG = new StbPublications();
|
||||
impegnatoRG.setId(16L).setPublicationDescription("Sincronizzazione impegnato (Ragusa)");
|
||||
impegnatoRG.setOperation(OperationType.NO_OP);
|
||||
|
||||
StbPublicationsDetail detailDtbOrdtRG = new StbPublicationsDetail();
|
||||
detailDtbOrdtRG
|
||||
.setStbPublicationId(16L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(DtbOrdt.ENTITY)
|
||||
.setWhereCondField("gestione = 'V' AND codMdep = 'RG'")
|
||||
.setActive(true)
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
impegnatoRG.getStbPublicationsDetails().add(detailDtbOrdtRG);
|
||||
|
||||
|
||||
StbPublicationsDetail detailDtbOrdrRG = new StbPublicationsDetail();
|
||||
detailDtbOrdrRG
|
||||
.setStbPublicationId(16L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(DtbOrdr.ENTITY)
|
||||
.setActive(true)
|
||||
.setWhereCondField("gestione = 'V' AND codMdep = 'RG'")
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
impegnatoRG.getStbPublicationsDetails().add(detailDtbOrdrRG);
|
||||
impegnatoRG.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
//</editor-fold>
|
||||
//<editor-fold desc="Pubblicazione impegnato (Roma)">
|
||||
StbPublications impegnatoRoma = new StbPublications();
|
||||
impegnatoRoma.setId(17L).setPublicationDescription("Sincronizzazione impegnato (Roma)");
|
||||
impegnatoRoma.setOperation(OperationType.NO_OP);
|
||||
|
||||
StbPublicationsDetail detailDtbOrdtRM = new StbPublicationsDetail();
|
||||
detailDtbOrdtRM
|
||||
.setStbPublicationId(17L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(DtbOrdt.ENTITY)
|
||||
.setWhereCondField("gestione = 'V' AND codMdep = 'RM'")
|
||||
.setActive(true)
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
impegnatoRoma.getStbPublicationsDetails().add(detailDtbOrdtRM);
|
||||
|
||||
StbPublicationsDetail detailDtbOrdrRM = new StbPublicationsDetail();
|
||||
detailDtbOrdrRM
|
||||
.setStbPublicationId(17L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(DtbOrdr.ENTITY)
|
||||
.setActive(true)
|
||||
.setWhereCondField("gestione = 'V' AND codMdep = 'RM'")
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
impegnatoRoma.getStbPublicationsDetails().add(detailDtbOrdrRM);
|
||||
impegnatoRoma.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
//</editor-fold>
|
||||
//<editor-fold desc="Pubblicazione impegnato (Verona)">
|
||||
StbPublications impegnatoVR = new StbPublications();
|
||||
impegnatoVR.setId(18L).setPublicationDescription("Sincronizzazione impegnato (Verona)");
|
||||
impegnatoVR.setOperation(OperationType.NO_OP);
|
||||
|
||||
StbPublicationsDetail detailDtbOrdtVR = new StbPublicationsDetail();
|
||||
detailDtbOrdtVR
|
||||
.setStbPublicationId(18L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(DtbOrdt.ENTITY)
|
||||
.setWhereCondField("gestione = 'V' AND codMdep = 'VR'")
|
||||
.setActive(true)
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
impegnatoVR.getStbPublicationsDetails().add(detailDtbOrdtVR);
|
||||
|
||||
|
||||
StbPublicationsDetail detailDtbOrdrVR = new StbPublicationsDetail();
|
||||
detailDtbOrdrVR
|
||||
.setStbPublicationId(18L)
|
||||
.setReadyToTransmit(true)
|
||||
.setEntityName(DtbOrdr.ENTITY)
|
||||
.setActive(true)
|
||||
.setWhereCondField("gestione = 'V' AND codMdep = 'VR'")
|
||||
.setExportHistory(false)
|
||||
.setOperation(OperationType.INSERT);
|
||||
impegnatoVR.getStbPublicationsDetails().add(detailDtbOrdrVR);
|
||||
impegnatoVR.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
//</editor-fold>
|
||||
} else {
|
||||
//<editor-fold desc="sottoscrizione anagrafiche">
|
||||
StbRemoteSubscription anagSubscription = new StbRemoteSubscription();
|
||||
anagSubscription
|
||||
.setActive(true)
|
||||
.setPublicationId(10L)
|
||||
.setPublicationDescription("Sincronizzazione anagrafiche clienti/fornitori")
|
||||
.setEndpointProtocol("HTTP")
|
||||
.setEndpointHost("4.232.161.31")
|
||||
.setEndpointPort(8080)
|
||||
.setUsernameField("dba")
|
||||
.setPassword("sql")
|
||||
.setProfileDb("TOSCA_CLOUD")
|
||||
.setOperation(OperationType.INSERT);
|
||||
anagSubscription.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
;
|
||||
//</editor-fold>
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Tosca_Ba)) {
|
||||
StbRemoteSubscription syncImpegnatoBa = new StbRemoteSubscription();
|
||||
syncImpegnatoBa.setActive(true)
|
||||
.setPublicationId(11L)
|
||||
.setProfileDb("TOSCA_CLOUD")
|
||||
.setPublicationDescription("Sincronizzazione impengato (Ba)")
|
||||
.setEndpointProtocol("HTTP")
|
||||
.setEndpointHost("4.232.161.31")
|
||||
.setEndpointPort(8080)
|
||||
.setUsernameField("dba")
|
||||
.setPassword("sql")
|
||||
.setOperation(OperationType.INSERT);
|
||||
syncImpegnatoBa.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
} else if (isCustomerDb(IntegryCustomerDB.Tosca_Ce)) {
|
||||
StbRemoteSubscription syncImpegnatoCe = new StbRemoteSubscription();
|
||||
syncImpegnatoCe.setActive(true)
|
||||
.setPublicationId(12L)
|
||||
.setProfileDb("TOSCA_CLOUD")
|
||||
.setPublicationDescription("Sincronizzazione impengato (Caserta)")
|
||||
.setEndpointProtocol("HTTP")
|
||||
.setEndpointHost("4.232.161.31")
|
||||
.setEndpointPort(8080)
|
||||
.setUsernameField("dba")
|
||||
.setPassword("sql")
|
||||
.setOperation(OperationType.INSERT);
|
||||
syncImpegnatoCe.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
} else if (isCustomerDb(IntegryCustomerDB.Tosca_Cz)) {
|
||||
StbRemoteSubscription syncImpegnatoCz = new StbRemoteSubscription();
|
||||
syncImpegnatoCz.setActive(true)
|
||||
.setPublicationId(13L)
|
||||
.setProfileDb("TOSCA_CLOUD")
|
||||
.setPublicationDescription("Sincronizzazione impengato (Catanzaro)")
|
||||
.setEndpointProtocol("HTTP")
|
||||
.setEndpointHost("4.232.161.31")
|
||||
.setEndpointPort(8080)
|
||||
.setUsernameField("dba")
|
||||
.setPassword("sql")
|
||||
.setOperation(OperationType.INSERT);
|
||||
syncImpegnatoCz.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
} else if (isCustomerDb(IntegryCustomerDB.Tosca_Fc)) {
|
||||
StbRemoteSubscription syncImpegnatoFc = new StbRemoteSubscription();
|
||||
syncImpegnatoFc.setActive(true)
|
||||
.setPublicationId(14L)
|
||||
.setProfileDb("TOSCA_CLOUD")
|
||||
.setPublicationDescription("Sincronizzazione impengato (Forlì-Cesena)")
|
||||
.setEndpointProtocol("HTTP")
|
||||
.setEndpointHost("4.232.161.31")
|
||||
.setEndpointPort(8080)
|
||||
.setUsernameField("dba")
|
||||
.setPassword("sql")
|
||||
.setOperation(OperationType.INSERT);
|
||||
syncImpegnatoFc.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
} else if (isCustomerDb(IntegryCustomerDB.Tosca_Mi)) {
|
||||
StbRemoteSubscription syncImpegnatoMi = new StbRemoteSubscription();
|
||||
syncImpegnatoMi.setActive(true)
|
||||
.setPublicationId(15L)
|
||||
.setProfileDb("TOSCA_CLOUD")
|
||||
.setPublicationDescription("Sincronizzazione impengato (Milano)")
|
||||
.setEndpointProtocol("HTTP")
|
||||
.setEndpointHost("4.232.161.31")
|
||||
.setEndpointPort(8080)
|
||||
.setUsernameField("dba")
|
||||
.setPassword("sql")
|
||||
.setOperation(OperationType.INSERT);
|
||||
syncImpegnatoMi.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
} else if (isCustomerDb(IntegryCustomerDB.Tosca_Rg)) {
|
||||
StbRemoteSubscription syncImpegnatoRg = new StbRemoteSubscription();
|
||||
syncImpegnatoRg.setActive(true)
|
||||
.setPublicationId(16L)
|
||||
.setProfileDb("TOSCA_CLOUD")
|
||||
.setPublicationDescription("Sincronizzazione impengato (Ragusa)")
|
||||
.setEndpointProtocol("HTTP")
|
||||
.setEndpointHost("4.232.161.31")
|
||||
.setEndpointPort(8080)
|
||||
.setUsernameField("dba")
|
||||
.setPassword("sql")
|
||||
.setOperation(OperationType.INSERT);
|
||||
syncImpegnatoRg.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
} else if (isCustomerDb(IntegryCustomerDB.Tosca_Rm)) {
|
||||
StbRemoteSubscription syncImpegnatoRm = new StbRemoteSubscription();
|
||||
syncImpegnatoRm.setActive(true)
|
||||
.setPublicationId(17L)
|
||||
.setProfileDb("TOSCA_CLOUD")
|
||||
.setPublicationDescription("Sincronizzazione impengato (Roma)")
|
||||
.setEndpointProtocol("HTTP")
|
||||
.setEndpointHost("4.232.161.31")
|
||||
.setEndpointPort(8080)
|
||||
.setUsernameField("dba")
|
||||
.setPassword("sql")
|
||||
.setOperation(OperationType.INSERT);
|
||||
syncImpegnatoRm.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
} else if (isCustomerDb(IntegryCustomerDB.Tosca_Vr)) {
|
||||
StbRemoteSubscription syncImpegnatoVr = new StbRemoteSubscription();
|
||||
syncImpegnatoVr.setActive(true)
|
||||
.setPublicationId(18L)
|
||||
.setProfileDb("TOSCA_CLOUD")
|
||||
.setPublicationDescription("Sincronizzazione impengato (Verona)")
|
||||
.setEndpointProtocol("HTTP")
|
||||
.setEndpointHost("4.232.161.31")
|
||||
.setEndpointPort(8080)
|
||||
.setUsernameField("dba")
|
||||
.setPassword("sql")
|
||||
.setOperation(OperationType.INSERT);
|
||||
syncImpegnatoVr.manageWithParentConnection(advancedDataSource.getConnection());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240930121836 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
executeStatement("alter table gtb_nazi add tipo_trasporto varchar (1)");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
import it.integry.ems_model.utility.dto.IndexTableDTO;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
public class Migration_20240930172801 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
executeStatement("create table ctb_movr_intercode(\n" +
|
||||
" id bigint not null identity,\n" +
|
||||
" num_cmov int not null,\n" +
|
||||
" id_riga int not null,\n" +
|
||||
" intercode varchar(40),\n" +
|
||||
" num_doc_orig varchar(40))",
|
||||
" alter table ctb_movr_intercode add constraint pk_ctb_movr_intercode primary key (id)");
|
||||
|
||||
IndexTableDTO indexTableDTO = new IndexTableDTO()
|
||||
.setIndexName("IX_ctb_movr_intercode_unique")
|
||||
.setTableName("ctb_movr_intercode")
|
||||
.setUnique(true)
|
||||
.setColumnsIndex(Arrays.asList(
|
||||
new IndexTableDTO.ColumnIndex("num_cmov"),
|
||||
new IndexTableDTO.ColumnIndex("id_riga")
|
||||
));
|
||||
|
||||
createIndex(indexTableDTO);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,244 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240930180552 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (!isCustomerDb(IntegryCustomerDB.Biolevante_Biolevante))
|
||||
return;
|
||||
|
||||
executeStatement("ALTER VIEW [dbo].[vsvw_vendite]\n" +
|
||||
"AS\n" +
|
||||
" SELECT DISTINCT dtb_doct_b.cod_dtip_val AS cod_dtip,\n" +
|
||||
"\t\tdtb_doct_b.data_doc_val AS data_doc,\n" +
|
||||
"\t\tdtb_doct_b.ser_doc_val AS ser_doc,\n" +
|
||||
"\t\tdtb_doct_b.num_doc_val AS num_doc,\n" +
|
||||
"\t\tdtb_docr.cod_dtip_comp,\n" +
|
||||
"\t\tdtb_docr.data_doc_comp,\n" +
|
||||
"\t\tdtb_docr.ser_doc_comp,\n" +
|
||||
"\t\tdtb_docr.num_doc_comp,\n" +
|
||||
"\t\tdtb_doct_a.cod_vage,\n" +
|
||||
"\t\tIsnull(vtb_clie.cod_anag_stat, dtb_doct_b.cod_anag) AS cod_anag,\n" +
|
||||
"\t\tdtb_doct_b.cod_vdes,\n" +
|
||||
"\t\tdtb_doct_b.cod_vzon,\n" +
|
||||
"\t\tvtb_clie.cod_vtip,\n" +
|
||||
"\t\tdtb_doct_b.cod_dtip AS cod_dtip_bolla,\n" +
|
||||
"\t\tdtb_doct_b.data_doc AS data_doc_bolla,\n" +
|
||||
"\t\tdtb_doct_b.ser_doc AS ser_doc_bolla,\n" +
|
||||
"\t\tdtb_doct_b.num_doc AS num_doc_bolla,\n" +
|
||||
"\t\tdtb_doct_b.cod_mdep,\n" +
|
||||
"\t\tIsnull(mtb_aart.cod_mart_stat, dtb_docr.cod_mart) AS cod_mart,\n" +
|
||||
"\t\tmtb_aart.cod_mgrp,\n" +
|
||||
"\t\tmtb_aart.cod_msgr,\n" +
|
||||
"\t\tmtb_aart.cod_mtip,\n" +
|
||||
"\t\tmtb_aart.cod_mstp,\n" +
|
||||
"\t\tIsnull(mtb_aart.descrizione_estesa, dtb_docr.descrizione) AS descrizione,\n" +
|
||||
"\t\tdtb_docr.unt_doc,\n" +
|
||||
"\t\t( segno_val_scar - segno_val_car ) * dtb_doct_a.tot_imponib / dtb_doct_a.cambio AS tot_imponib,\n" +
|
||||
"\t\t( segno_val_scar - segno_val_car ) * dtb_doct_a.tot_iva / dtb_doct_a.cambio AS tot_iva,\n" +
|
||||
"\t\tdtb_doct_b.tot_imponib / dtb_doct_b.cambio AS tot_imponib_bolla,\n" +
|
||||
"\t\tdtb_doct_b.tot_iva / dtb_doct_b.cambio AS tot_iva_bolla,\n" +
|
||||
"\t\t( segno_val_scar - segno_val_car ) * dtb_docr.importo_riga / dtb_doct_b.cambio AS importo_riga,\n" +
|
||||
"\t\tCASE WHEN sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN( segno_qta_scar - segno_qta_car ) * qta_doc ELSE 0 END AS qta_vend,\n" +
|
||||
"\t\tCASE WHEN mtb_aart.peso_kg <> 0 AND mtb_aart.peso_kg IS NOT NULL THEN( CASE WHEN sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100\tTHEN\t\t( segno_qta_scar - segno_qta_car ) * qta_doc * dtb_docr.rap_conv * mtb_aart.peso_kg\tELSE 0 END ) ELSE 0 END AS qta_vend_kg,\n" +
|
||||
"\t\tCASE WHEN sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) ) / dtb_doct_b.cambio ELSE 0 END AS val_vend,\n" +
|
||||
"\t\tCASE WHEN sconto5 = 100 OR sconto6 = 100 OR sconto7 = 100 THEN( segno_qta_scar - segno_qta_car ) * qta_doc ELSE 0 END AS qta_omg,\n" +
|
||||
"\t\tCASE WHEN mtb_aart.peso_kg <> 0 AND mtb_aart.peso_kg IS NOT NULL THEN( CASE WHEN sconto5 = 100 OR sconto6 = 100 OR sconto7 = 100THEN( segno_qta_scar - segno_qta_car ) * qta_doc * dtb_docr.rap_conv * mtb_aart.peso_kg ELSE 0 END ) ELSE 0 END AS qta_omg_kg,\n" +
|
||||
"\t\tCASE WHEN sconto5 = 100 OR sconto6 = 100 OR sconto7 = 100 THEN( ( segno_qta_scar - segno_qta_car ) * qta_doc * val_unt ) / dtb_doct_b.cambio ELSE 0 END AS val_omg,\n" +
|
||||
"\t\t(( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) * ( dtb_docr.perc_prov / 100 ) + (segno_val_scar - segno_val_car ) * qta_doc * val_prov ) / dtb_doct_b.cambio AS importo_prov,\n" +
|
||||
"\t\tdtb_docr.id_riga,\n" +
|
||||
"\t\tgtb_divi.cod_divi,\n" +
|
||||
"\t\tdtb_doct_a.listino AS cod_vlis,\n" +
|
||||
"\t\tCASE WHEN sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN( segno_qta_scar - segno_qta_car ) * qta_doc * costo_unt / dtb_doct_b.cambio ELSE 0 END AS val_costo,\n" +
|
||||
"\t\tCASE WHEN sconto5 = 100 OR sconto6 = 100 OR sconto7 = 100 THEN( ( segno_qta_scar - segno_qta_car ) * qta_doc * costo_unt ) / dtb_doct_b.cambio ELSE 0 END AS val_omg_costo,\n" +
|
||||
"\t\tCASE WHEN sconto8 = 100 THEN( ( segno_qta_scar - segno_qta_car ) * qta_doc * costo_unt ) / dtb_doct_b.cambio ELSE 0 END AS val_scarti_prod,\n" +
|
||||
"\t\tCASE WHEN flag_tipo_reso = 'R' THEN( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) ) / dtb_doct_b.cambio ELSE 0 END AS val_resi_rivendibili,\n" +
|
||||
"\t\tCASE WHEN flag_tipo_reso = 'S' THEN( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) ) / dtb_doct_b.cambio ELSE 0 END AS val_resi_non_rivendibili,\n" +
|
||||
"\t\tCASE WHEN flag_tipo_reso = 'P' THEN( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) ) / dtb_doct_b.cambio ELSE 0 END AS val_resi_rettifica_prezzo,\n" +
|
||||
"\t\tCASE WHEN flag_tipo_reso IS NOT NULL THEN( segno_qta_scar - segno_qta_car ) * qta_doc ELSE 0 END AS qta_resi_rivendibili,\n" +
|
||||
"\t\tdtb_docr.rap_conv,\n" +
|
||||
"\t\tqta_doc * dtb_docr.rap_conv * peso_kg * ( segno_qta_scar - segno_qta_car ) ASpesokg,\n" +
|
||||
"\t\tCASE WHEN dtb_docr.qta_cnf * ( segno_qta_scar - segno_qta_car ) = 0 THEN 0 ELSE qta_doc * dtb_docr.rap_conv / dtb_docr.qta_cnf * ( segno_qta_scar - segno_qta_car ) END AS confezioni,\n" +
|
||||
"\t\t(( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( dtb_doct_b.sconto1 / 100 ) )) / dtb_doct_b.cambio AS val_sconto1,(( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( dtb_doct_b.sconto2 / 100 ) )) /dtb_doct_b.cambio AS val_sconto2,\n" +
|
||||
"\t\t(( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( dtb_doct_b.sconto3 / 100 ) )) / dtb_doct_b.cambio AS val_sconto3,\n" +
|
||||
"\t\t(( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) * ( dtb_doct_b.sconto4 / 100 ) )) / dtb_doct_b.cambio AS val_sconto4,\n" +
|
||||
"\t\t(( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( dtb_docr.sconto5 / 100 ) )) /dtb_doct_b.cambio AS val_sconto5,\n" +
|
||||
"\t\t(( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( dtb_docr.sconto6 / 100 ) )) / dtb_doct_b.cambio AS val_sconto6,\n" +
|
||||
"\t\t(( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( dtb_docr.sconto7 / 100 ) )) /dtb_doct_b.cambio AS val_sconto7,\n" +
|
||||
"\t\t(( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( dtb_docr.sconto8 / 100 ) )) / dtb_doct_b.cambio AS val_sconto8,\n" +
|
||||
"\t\t( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt ) / dtb_doct_b.cambio AS fatturato_lordo,\n" +
|
||||
"\t\t( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_doct_b.sconto4 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) * ( dtb_docr.perc_gest / 100 ) + ( segno_val_scar - segno_val_car ) * qta_doc * val_gest ) / dtb_doct_b.cambio AS importo_gest,\n" +
|
||||
"\t\t(( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) * ( dtb_docr.perc_ispe / 100 ) + (segno_val_scar - segno_val_car ) * qta_doc * val_ispe ) / dtb_doct_b.cambio AS importo_prov_ispe,\n" +
|
||||
"\t\t(( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) * ( dtb_docr.perc_promo / 100 ) + ( segno_val_scar - segno_val_car ) * qta_doc * val_promo ) / dtb_doct_b.cambio AS importo_promo,\n" +
|
||||
"\t\t( (( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) * ( dtb_docr.perc_oneri / 100 ) + ( segno_val_scar - segno_val_car ) * qta_doc * val_oneri ) / dtb_doct_b.cambio ) +Isnull(( (( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) * ( venditeOneri.perc_oneri_art / 100 ) + ( segno_val_scar - segno_val_car ) * qta_doc * venditeOneri.val_oneri_art ) / dtb_doct_b.cambio ), 0) AS importo_oneri,\n" +
|
||||
"\t\tdtb_docr.cod_promo,\n" +
|
||||
"\t\tvtb_clie.cod_vass,\n" +
|
||||
"\t\tvtb_clie.cod_vgrp_acq,\n" +
|
||||
"\t\tmtb_aart.peso_kg,\n" +
|
||||
"\t\tmtb_aart.qta_cnf,\n" +
|
||||
"\t\tCONVERT(INT, CASE WHEN dtb_doct_b.cod_forn_td IS NULL THEN 0 ELSE 1 END) AS flag_doc_td,\n" +
|
||||
"\t\tdtb_docr.cod_jcom,\n" +
|
||||
"\t\tdtb_doct_b.porto,\n" +
|
||||
"\t\tdtb_doct_b.mezzo,\n" +
|
||||
"\t\tgtb_anag.nazione as nazione_clie, \n" +
|
||||
"\t\tvtb_dest.nazione as nazione_dest\n" +
|
||||
"FROM dtb_docr\n" +
|
||||
" LEFT OUTER JOIN dbo.Getviewvenditeoneri() venditeOneri\n" +
|
||||
" ON dtb_docr.cod_anag = venditeOneri.cod_anag_comp\n" +
|
||||
" AND dtb_docr.cod_dtip = venditeOneri.cod_dtip_comp\n" +
|
||||
" AND dtb_docr.data_doc = venditeOneri.data_doc_comp\n" +
|
||||
" AND dtb_docr.num_doc = venditeOneri.num_doc_comp\n" +
|
||||
" AND dtb_docr.ser_doc = venditeOneri.ser_doc_comp\n" +
|
||||
" AND dtb_docr.cod_mart = venditeOneri.cod_mart,\n" +
|
||||
" dtb_doct AS dtb_doct_a,\n" +
|
||||
" dtb_doct AS dtb_doct_b left outer join vtb_dest on dtb_doct_b.cod_anag = vtb_dest.cod_anag and \n" +
|
||||
"\t\t\t\t\t\t\t\t\t\t\t\t\t\t dtb_doct_b.cod_vdes = vtb_dest.cod_vdes,\n" +
|
||||
" dtb_tipi,\n" +
|
||||
" gtb_divi,\n" +
|
||||
" azienda,\n" +
|
||||
" mtb_aart,\n" +
|
||||
" mtb_sgrp,\n" +
|
||||
" vtb_clie inner join gtb_anag on vtb_Clie.cod_anag = gtb_anag.cod_anag\t\t\t \n" +
|
||||
"WHERE ( dtb_doct_b.cod_anag = dtb_docr.cod_anag )\n" +
|
||||
" AND ( dtb_doct_b.cod_dtip = dtb_docr.cod_dtip )\n" +
|
||||
" AND ( dtb_doct_b.data_doc = dtb_docr.data_doc )\n" +
|
||||
" AND ( dtb_doct_b.ser_doc = dtb_docr.ser_doc )\n" +
|
||||
" AND ( dtb_doct_b.num_doc = dtb_docr.num_doc )\n" +
|
||||
" AND ( dtb_doct_b.cod_anag = dtb_doct_a.cod_anag )\n" +
|
||||
" AND ( dtb_doct_b.cod_dtip_val = dtb_doct_a.cod_dtip )\n" +
|
||||
" AND ( dtb_doct_b.data_doc_val = dtb_doct_a.data_doc )\n" +
|
||||
" AND ( dtb_doct_b.ser_doc_val = dtb_doct_a.ser_doc )\n" +
|
||||
" AND ( dtb_doct_b.num_doc_val = dtb_doct_a.num_doc )\n" +
|
||||
" AND ( dtb_doct_b.cod_anag = vtb_clie.cod_anag )\n" +
|
||||
" AND ( dtb_tipi.cod_dtip = dtb_doct_b.cod_dtip )\n" +
|
||||
" AND ( azienda.cod_divi_contab = gtb_divi.cod_divi )\n" +
|
||||
" AND ( dtb_docr.cod_mart = mtb_aart.cod_mart )\n" +
|
||||
" AND ( mtb_aart.cod_mgrp = mtb_sgrp.cod_mgrp )\n" +
|
||||
" AND ( mtb_aart.cod_msgr = mtb_sgrp.cod_msgr )\n" +
|
||||
" AND ( mtb_sgrp.incl_in_stat = 'S' )\n" +
|
||||
" AND ( ( dtb_doct_b.gestione = 'V' )\n" +
|
||||
" AND ( dtb_tipi.tipo_emissione = 'DIRETTA' )\n" +
|
||||
" AND ( dtb_docr.cod_mart IS NOT NULL ) )\n" +
|
||||
" AND ( dtb_tipi.flag_incl_stat = 'S' )\n" +
|
||||
"UNION ALL\n" +
|
||||
"SELECT dtb_doct_b.cod_dtip_val,\n" +
|
||||
"\t\tdtb_doct_b.data_doc_val,\n" +
|
||||
"\t\tdtb_doct_b.ser_doc_val,\n" +
|
||||
"\t\tdtb_doct_b.num_doc_val,\n" +
|
||||
"\t\tdtb_docr.cod_dtip_comp,\n" +
|
||||
"\t\tdtb_docr.data_doc_comp,\n" +
|
||||
"\t\tdtb_docr.ser_doc_comp,\n" +
|
||||
"\t\tdtb_docr.num_doc_comp,\n" +
|
||||
"\t\tdtb_doct_a.cod_vage,\n" +
|
||||
"\t\tIsnull(vtb_clie.cod_anag_stat, dtb_doct_b.cod_anag)\n" +
|
||||
"\t\tAS cod_anag,\n" +
|
||||
"\t\tdtb_doct_b.cod_vdes,\n" +
|
||||
"\t\tdtb_doct_b.cod_vzon,\n" +
|
||||
"\t\tvtb_clie.cod_vtip,\n" +
|
||||
"\t\tdtb_doct_b.cod_dtip,\n" +
|
||||
"\t\tdtb_doct_b.data_doc,\n" +
|
||||
"\t\tdtb_doct_b.ser_doc,\n" +
|
||||
"\t\tdtb_doct_b.num_doc,\n" +
|
||||
"\t\tdtb_doct_b.cod_mdep,\n" +
|
||||
"\t\tdtb_docr.cod_mart,\n" +
|
||||
"\t\tNULL,\n" +
|
||||
"\t\tNULL,\n" +
|
||||
"\t\tNULL,\n" +
|
||||
"\t\tNULL,\n" +
|
||||
"\t\tdtb_docr.descrizione,\n" +
|
||||
"\t\tdtb_docr.unt_doc,\n" +
|
||||
"\t\t( segno_val_scar - segno_val_car ) * dtb_doct_a.tot_imponib / dtb_doct_a.cambio AS tot_imponib,\n" +
|
||||
"\t\t( segno_val_scar - segno_val_car ) * dtb_doct_a.tot_iva / dtb_doct_a.cambio AS tot_iva,\n" +
|
||||
"\t\tdtb_doct_b.tot_imponib / dtb_doct_b.cambio AS tot_imponib_bolla,\n" +
|
||||
"\t\tdtb_doct_b.tot_iva / dtb_doct_b.cambio AS tot_iva_bolla,\n" +
|
||||
"\t\t( segno_val_scar - segno_val_car ) * dtb_docr.importo_riga / dtb_doct_b.cambio AS importo_riga,\n" +
|
||||
"\t\tCASE WHEN sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN( segno_qta_scar - segno_qta_car ) * qta_doc ELSE 0 END AS qta_vend,\n" +
|
||||
"\t\tCONVERT(NUMERIC(15, 5), 0) AS qta_vend_kg,\n" +
|
||||
"\t\tCASE WHEN sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) ) / dtb_doct_b.cambio ELSE 0 END AS val_vend,\n" +
|
||||
"\t\tCASE WHEN sconto5 = 100 OR sconto6 = 100 OR sconto7 = 100 THEN( segno_qta_scar - segno_qta_car ) * qta_doc ELSE 0 END AS qta_omg, CONVERT(NUMERIC(15, 5), 0) AS qta_omg_kg,\n" +
|
||||
"\t\tCASE WHEN sconto5 = 100 OR sconto6 = 100 OR sconto7 = 100 THEN( ( segno_qta_scar - segno_qta_car ) * qta_doc * val_unt ) / dtb_doct_b.cambio ELSE 0 END AS val_omg,\n" +
|
||||
"\t\t( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) * ( dtb_docr.perc_prov / 100 ) + ( segno_val_scar - segno_val_car ) * qta_doc * val_prov ) / dtb_doct_b.cambio AS importo_prov,\n" +
|
||||
"\t\tdtb_docr.id_riga,\n" +
|
||||
"\t\tgtb_divi.cod_divi,\n" +
|
||||
"\t\tdtb_doct_a.listino AS cod_vlis,\n" +
|
||||
"\t\tCONVERT(NUMERIC(20, 5), 0) AS val_costo,\n" +
|
||||
"\t\tCONVERT(NUMERIC(20, 5), 0) AS val_omg_costo,\n" +
|
||||
"\t\tCONVERT(NUMERIC(20, 5), 0) AS val_scarti_prod,\n" +
|
||||
"\t\tCASE WHEN flag_tipo_reso = 'R' THEN( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) ) / dtb_doct_b.cambio ELSE 0 END AS val_resi_rivendibili,\n" +
|
||||
"\t\tCASE WHEN flag_tipo_reso = 'S' THEN( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) ) / dtb_doct_b.cambio ELSE 0 END AS val_resi_non_rivendibili,\n" +
|
||||
"\t\tCASE WHEN flag_tipo_reso = 'P' THEN( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) ) / dtb_doct_b.cambio ELSE 0 END AS val_resi_rettifica_prezzo,\n" +
|
||||
"\t\tCASE WHEN flag_tipo_reso IS NOT NULL THEN ( segno_qta_scar - segno_qta_car ) * qta_doc ELSE 0 END AS qta_resi_rivendibili,\n" +
|
||||
"\t\tdtb_docr.rap_conv,\n" +
|
||||
"\t\t0 AS pesokg,\n" +
|
||||
"\t\tCASE WHEN dtb_docr.qta_cnf * ( segno_qta_scar - segno_qta_car ) = 0 THEN 0 ELSE qta_doc * dtb_docr.rap_conv / dtb_docr.qta_cnf * ( segno_qta_scar - segno_qta_car ) END AS confezioni,\n" +
|
||||
"\t\t(( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( dtb_doct_b.sconto1 / 100 ) )) / dtb_doct_b.cambio AS val_sconto1, (( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( dtb_doct_b.sconto2 / 100 ) )) / dtb_doct_b.cambio AS val_sconto2,\n" +
|
||||
"\t\t(( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( dtb_doct_b.sconto3 / 100 ) )) / dtb_doct_b.cambio AS val_sconto3,\n" +
|
||||
"\t\t(( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) * ( dtb_doct_b.sconto4 / 100 ) )) / dtb_doct_b.cambio AS val_sconto4,\n" +
|
||||
"\t\t(( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( dtb_docr.sconto5 / 100 ) )) /dtb_doct_b.cambio AS val_sconto5,\n" +
|
||||
"\t\t(( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( dtb_docr.sconto6 / 100 ) )) / dtb_doct_b.cambio AS val_sconto6,\n" +
|
||||
"\t\t(( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( dtb_docr.sconto7 / 100 ) )) /dtb_doct_b.cambio AS val_sconto7,\n" +
|
||||
"\t\t(( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( dtb_docr.sconto8 / 100 ) )) / dtb_doct_b.cambio AS val_sconto8,\n" +
|
||||
"\t\t( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt ) / dtb_doct_b.cambio AS fatturato_lordo,\n" +
|
||||
"\t\t( ( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_doct_b.sconto4 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) * ( dtb_docr.perc_gest / 100 ) + ( segno_val_scar - segno_val_car ) * qta_doc * val_gest ) / dtb_doct_b.cambio AS importo_gest,\n" +
|
||||
"\t\t(( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) * ( dtb_docr.perc_ispe / 100 ) + (segno_val_scar - segno_val_car ) * qta_doc * val_ispe ) / dtb_doct_b.cambio AS importo_prov_ispe,\n" +
|
||||
"\t\t(( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) * ( dtb_docr.perc_promo / 100 ) + ( segno_val_scar - segno_val_car ) * qta_doc * val_promo ) / dtb_doct_b.cambio AS importo_promo,\n" +
|
||||
"\t\t( (( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) * ( dtb_docr.perc_oneri / 100 ) + ( segno_val_scar - segno_val_car ) * qta_doc * val_oneri ) / dtb_doct_b.cambio ) +Isnull(( (( segno_val_scar - segno_val_car ) * qta_doc * val_unt * ( 1 - dtb_doct_b.sconto1 / 100 ) * ( 1 - dtb_doct_b.sconto2 / 100 ) * ( 1 - dtb_doct_b.sconto3 / 100 ) * ( 1 - dtb_docr.sconto5 / 100 ) * ( 1 - dtb_docr.sconto6 / 100 ) * ( 1 - dtb_docr.sconto7 / 100 ) * ( 1 - dtb_docr.sconto8 / 100 ) * ( venditeOneri.perc_oneri_art / 100 ) + ( segno_val_scar - segno_val_car ) * qta_doc * venditeOneri.val_oneri_art ) / dtb_doct_b.cambio ), 0) AS importo_oneri,\n" +
|
||||
"\t\tdtb_docr.cod_promo,\n" +
|
||||
"\t\tvtb_clie.cod_vass,\n" +
|
||||
"\t\tvtb_clie.cod_vgrp_acq,\n" +
|
||||
"\t\tNULL,\n" +
|
||||
"\t\tNULL,\n" +
|
||||
"\t\tCONVERT(INT, CASE WHEN dtb_doct_b.cod_forn_td IS NULL THEN 0 ELSE 1 END) AS flag_doc_td,\n" +
|
||||
"\t\tdtb_docr.cod_jcom,\n" +
|
||||
"\t\tdtb_doct_b.porto,\n" +
|
||||
"\t\tdtb_doct_b.mezzo ,\n" +
|
||||
"\t\tgtb_anag.nazione as nazione_clie, \n" +
|
||||
"\t\tvtb_dest.nazione as nazione_dest\n" +
|
||||
"FROM dtb_docr\n" +
|
||||
" LEFT OUTER JOIN dbo.Getviewvenditeoneri() venditeOneri\n" +
|
||||
" ON dtb_docr.cod_anag = venditeOneri.cod_anag_comp\n" +
|
||||
" AND dtb_docr.cod_dtip = venditeOneri.cod_dtip_comp\n" +
|
||||
" AND dtb_docr.data_doc = venditeOneri.data_doc_comp\n" +
|
||||
" AND dtb_docr.num_doc = venditeOneri.num_doc_comp\n" +
|
||||
" AND dtb_docr.ser_doc = venditeOneri.ser_doc_comp\n" +
|
||||
" AND dtb_docr.cod_mart = venditeOneri.cod_mart,\n" +
|
||||
" dtb_doct AS dtb_doct_b left outer join vtb_dest on dtb_doct_b.cod_anag = vtb_dest.cod_anag and \n" +
|
||||
"\t\t\t\t\t\t\t\t\t\t\t\t\t\t dtb_doct_b.cod_vdes = vtb_dest.cod_vdes,\n" +
|
||||
" dtb_doct AS dtb_doct_a,\n" +
|
||||
" dtb_tipi,\n" +
|
||||
" gtb_divi,\n" +
|
||||
" azienda,\n" +
|
||||
" vtb_clie inner join gtb_anag on vtb_Clie.cod_anag = gtb_anag.cod_anag\n" +
|
||||
"WHERE ( dtb_doct_b.cod_anag = dtb_docr.cod_anag )\n" +
|
||||
" AND ( dtb_doct_b.cod_dtip = dtb_docr.cod_dtip )\n" +
|
||||
" AND ( dtb_doct_b.data_doc = dtb_docr.data_doc )\n" +
|
||||
" AND ( dtb_doct_b.ser_doc = dtb_docr.ser_doc )\n" +
|
||||
" AND ( dtb_doct_b.num_doc = dtb_docr.num_doc )\n" +
|
||||
" AND ( dtb_doct_b.cod_anag = dtb_doct_a.cod_anag )\n" +
|
||||
" AND ( dtb_doct_b.cod_dtip_val = dtb_doct_a.cod_dtip )\n" +
|
||||
" AND ( dtb_doct_b.data_doc_val = dtb_doct_a.data_doc )\n" +
|
||||
" AND ( dtb_doct_b.ser_doc_val = dtb_doct_a.ser_doc )\n" +
|
||||
" AND ( dtb_doct_b.num_doc_val = dtb_doct_a.num_doc )\n" +
|
||||
" AND ( dtb_doct_b.cod_anag = vtb_clie.cod_anag )\n" +
|
||||
" AND ( dtb_tipi.cod_dtip = dtb_doct_b.cod_dtip )\n" +
|
||||
" AND ( azienda.cod_divi_contab = gtb_divi.cod_divi )\n" +
|
||||
" AND ( ( dtb_doct_b.gestione = 'V' )\n" +
|
||||
" AND ( dtb_tipi.tipo_emissione = 'DIRETTA' )\n" +
|
||||
" AND ( dtb_docr.cod_mart IS NULL )\n" +
|
||||
" AND ( dtb_docr.qta_doc <> 0 ) )\n" +
|
||||
" AND ( dtb_tipi.flag_incl_stat = 'S' ) \n");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241001111539 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
|
||||
createSetup("W_VFATTCLIE_DISP", "DATAWINDOW", "D_VFATTCLIE_REP", null,
|
||||
null, false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
|
||||
|
||||
if(isCustomer(IntegryCustomer.Biolevante)) {
|
||||
updateSetupValue("W_VFATTCLIE_DISP", "DATAWINDOW", "D_VFATTCLIE_REP", "D_VFATTCLIE_BIOLEVANTE_REP");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241001133030 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
|
||||
if (isCustomer(IntegryCustomer.Tosca))
|
||||
updateSetupValue("PICKING","SPEDIZIONE","FLAG_CAN_ADD_EXTRA_ITEMS","S");
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241001164607 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
String value = "S";
|
||||
|
||||
createSetup("PICKING", "SETUP", "ENABLE_POSITION_CHANGE_REQUEST", value,
|
||||
"Permette di abilitare il pop-up di richiesta di modifica posizione", false, "SI_NO", false, false,
|
||||
false, false, false, null, false, "SELECT 'S' UNION ALL SELECT 'N'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241002090224 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Gramm_Gramm))
|
||||
return;
|
||||
|
||||
executeStatement("update stb_gest_setup set value = 'N' where gest_name = 'IMPORT_DOCUMENTI_TRASPORTO' and section in ('DIPA','EBC', 'MIRARCHI') and key_section = 'ATTIVO' and value = 'S'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241003123326 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
|
||||
createSetup("W_VARTVENDCLI_DISP", "DATAWINDOW", "D_VARTVENDCLI_CANALE_REP", null,
|
||||
null, false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("W_VARTVENDCLI_DISP", "DATAWINDOW", "D_VARTVENDCLI_NODEST_REP", null,
|
||||
null, false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
|
||||
if(isCustomer(IntegryCustomer.Gramm)) {
|
||||
updateSetupValue("W_VARTVENDCLI_DISP", "DATAWINDOW", "D_VARTVENDCLI_REP", "D_VARTVENDCLI_GRAMM_REP");
|
||||
updateSetupValue("W_VARTVENDCLI_DISP", "DATAWINDOW", "D_VARTVENDCLI_CANALE_REP", "D_VARTVENDCLI_CANALE_GRAMM_REP");
|
||||
updateSetupValue("W_VARTVENDCLI_DISP", "DATAWINDOW", "D_VARTVENDCLI_NODEST_REP", "D_VARTVENDCLI_NODEST_GRAMM_REP");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,137 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241003172732 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
|
||||
createOrUpdateFunction("f_int2lettere", "CREATE FUNCTION dbo.f_int2lettere (@Numero INT)\n" +
|
||||
"RETURNS NVARCHAR(4000)\n" +
|
||||
"AS\n" +
|
||||
"BEGIN\n" +
|
||||
" DECLARE @Risultato NVARCHAR(4000) = ''\n" +
|
||||
" DECLARE @Unita NVARCHAR(11)\n" +
|
||||
" DECLARE @Decine NVARCHAR(11)\n" +
|
||||
" DECLARE @Centinaia NVARCHAR(11)\n" +
|
||||
" DECLARE @Migliaia NVARCHAR(11)\n" +
|
||||
" DECLARE @Milioni NVARCHAR(11)\n" +
|
||||
"\n" +
|
||||
" IF @Numero = 0\n" +
|
||||
" RETURN 'zero'\n" +
|
||||
"\n" +
|
||||
" IF @Numero < 0\n" +
|
||||
" RETURN 'meno ' + dbo.f_numeroInLettere(-@Numero)\n" +
|
||||
"\n" +
|
||||
" -- Milioni\n" +
|
||||
" IF @Numero >= 1000000\n" +
|
||||
" BEGIN\n" +
|
||||
" SET @Milioni = dbo.f_numeroInLettere(@Numero / 1000000)\n" +
|
||||
" SET @Risultato = @Milioni + 'milione' + CASE WHEN @Numero / 1000000 > 1 THEN 'i' ELSE '' END\n" +
|
||||
" SET @Numero = @Numero % 1000000\n" +
|
||||
" /*IF @Numero > 0\n" +
|
||||
" SET @Risultato = @Risultato + ' '*/\n" +
|
||||
" END\n" +
|
||||
"\n" +
|
||||
" -- Migliaia\n" +
|
||||
" IF @Numero >= 1000\n" +
|
||||
" BEGIN\n" +
|
||||
" SET @Migliaia = dbo.f_numeroInLettere(@Numero / 1000)\n" +
|
||||
" IF @Numero / 1000 = 1\n" +
|
||||
" SET @Risultato = @Risultato + 'mille'\n" +
|
||||
" ELSE\n" +
|
||||
" SET @Risultato = @Risultato + @Migliaia + 'mila'\n" +
|
||||
" SET @Numero = @Numero % 1000\n" +
|
||||
" /* IF @Numero > 0\n" +
|
||||
" SET @Risultato = @Risultato + ' '*/\n" +
|
||||
" END\n" +
|
||||
"\n" +
|
||||
" -- Centinaia\n" +
|
||||
" IF @Numero >= 100\n" +
|
||||
" BEGIN\n" +
|
||||
" SET @Centinaia = CASE\n" +
|
||||
" WHEN @Numero / 100 = 1 THEN 'cento'\n" +
|
||||
" WHEN @Numero / 100 = 2 THEN 'duecento'\n" +
|
||||
" WHEN @Numero / 100 = 3 THEN 'trecento'\n" +
|
||||
" WHEN @Numero / 100 = 4 THEN 'quattrocento'\n" +
|
||||
" WHEN @Numero / 100 = 5 THEN 'cinquecento'\n" +
|
||||
" WHEN @Numero / 100 = 6 THEN 'seicento'\n" +
|
||||
" WHEN @Numero / 100 = 7 THEN 'settecento'\n" +
|
||||
" WHEN @Numero / 100 = 8 THEN 'ottocento'\n" +
|
||||
" ELSE 'novecento'\n" +
|
||||
" END\n" +
|
||||
" SET @Risultato = @Risultato + @Centinaia\n" +
|
||||
" SET @Numero = @Numero % 100\n" +
|
||||
" /*IF @Numero > 0\n" +
|
||||
" SET @Risultato = @Risultato + ' '*/\n" +
|
||||
" END\n" +
|
||||
"\n" +
|
||||
" -- Decine e unità\n" +
|
||||
" IF @Numero >= 20\n" +
|
||||
" BEGIN\n" +
|
||||
" SET @Decine = CASE\n" +
|
||||
" WHEN @Numero / 10 = 2 THEN 'venti'\n" +
|
||||
" WHEN @Numero / 10 = 3 THEN 'trenta'\n" +
|
||||
" WHEN @Numero / 10 = 4 THEN 'quaranta'\n" +
|
||||
" WHEN @Numero / 10 = 5 THEN 'cinquanta'\n" +
|
||||
" WHEN @Numero / 10 = 6 THEN 'sessanta'\n" +
|
||||
" WHEN @Numero / 10 = 7 THEN 'settanta'\n" +
|
||||
" WHEN @Numero / 10 = 8 THEN 'ottanta'\n" +
|
||||
" ELSE 'novanta'\n" +
|
||||
" END\n" +
|
||||
" SET @Risultato = @Risultato + @Decine\n" +
|
||||
" SET @Numero = @Numero % 10\n" +
|
||||
" /* IF @Numero > 0\n" +
|
||||
" SET @Risultato = @Risultato + ' '*/\n" +
|
||||
" END\n" +
|
||||
"\n" +
|
||||
" IF @Numero > 0\n" +
|
||||
" BEGIN\n" +
|
||||
" SET @Unita = CASE\n" +
|
||||
" WHEN @Numero = 1 THEN 'uno'\n" +
|
||||
" WHEN @Numero = 2 THEN 'due'\n" +
|
||||
" WHEN @Numero = 3 THEN 'tre'\n" +
|
||||
" WHEN @Numero = 4 THEN 'quattro'\n" +
|
||||
" WHEN @Numero = 5 THEN 'cinque'\n" +
|
||||
" WHEN @Numero = 6 THEN 'sei'\n" +
|
||||
" WHEN @Numero = 7 THEN 'sette'\n" +
|
||||
" WHEN @Numero = 8 THEN 'otto'\n" +
|
||||
" ELSE 'nove'\n" +
|
||||
" END\n" +
|
||||
" SET @Risultato = @Risultato + @Unita\n" +
|
||||
" END\n" +
|
||||
"\n" +
|
||||
" RETURN @Risultato\n" +
|
||||
"END");
|
||||
createOrUpdateFunction("f_dec2lettere", "CREATE FUNCTION dbo.f_dec2Lettere (@Numero numeric(20,5))\n" +
|
||||
"RETURNS NVARCHAR(4000)\n" +
|
||||
"AS\n" +
|
||||
"BEGIN\n" +
|
||||
" DECLARE @Risultato NVARCHAR(4000) = ''\n" +
|
||||
" DECLARE @Decimali NVARCHAR(11) = ''\n" +
|
||||
" \n" +
|
||||
" if @Numero <> cast(@Numero as int) \n" +
|
||||
" begin\n" +
|
||||
" set @Decimali = '/'+ cast(cast((@Numero - cast(@Numero as int))*100 as int)as varchar) \n" +
|
||||
" end\n" +
|
||||
" set @Numero = CAST(@Numero as int) \n" +
|
||||
"\n" +
|
||||
" select @Risultato = dbo.f_int2Lettere(@Numero) + @Decimali\n" +
|
||||
"\n" +
|
||||
" \n" +
|
||||
" \n" +
|
||||
" RETURN @Risultato\n" +
|
||||
"END");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,137 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241004101121 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
|
||||
createOrUpdateFunction("f_int2lettere", "CREATE FUNCTION [dbo].[f_int2lettere] (@Numero INT)\n" +
|
||||
"RETURNS NVARCHAR(4000)\n" +
|
||||
"AS\n" +
|
||||
"BEGIN\n" +
|
||||
" DECLARE @Risultato NVARCHAR(4000) = ''\n" +
|
||||
" DECLARE @Unita NVARCHAR(11)\n" +
|
||||
" DECLARE @Decine NVARCHAR(11)\n" +
|
||||
" DECLARE @Centinaia NVARCHAR(11)\n" +
|
||||
" DECLARE @Migliaia NVARCHAR(11)\n" +
|
||||
" DECLARE @Milioni NVARCHAR(11)\n" +
|
||||
"\n" +
|
||||
" IF @Numero = 0\n" +
|
||||
" RETURN 'zero'\n" +
|
||||
"\n" +
|
||||
" IF @Numero < 0\n" +
|
||||
" RETURN 'meno ' + dbo.f_int2lettere(-@Numero)\n" +
|
||||
"\n" +
|
||||
" -- Milioni\n" +
|
||||
" IF @Numero >= 1000000\n" +
|
||||
" BEGIN\n" +
|
||||
" SET @Milioni = dbo.f_int2lettere(@Numero / 1000000)\n" +
|
||||
" SET @Risultato = @Milioni + 'milione' + CASE WHEN @Numero / 1000000 > 1 THEN 'i' ELSE '' END\n" +
|
||||
" SET @Numero = @Numero % 1000000\n" +
|
||||
" /*IF @Numero > 0\n" +
|
||||
" SET @Risultato = @Risultato + ' '*/\n" +
|
||||
" END\n" +
|
||||
"\n" +
|
||||
" -- Migliaia\n" +
|
||||
" IF @Numero >= 1000\n" +
|
||||
" BEGIN\n" +
|
||||
" SET @Migliaia = dbo.f_int2lettere(@Numero / 1000)\n" +
|
||||
" IF @Numero / 1000 = 1\n" +
|
||||
" SET @Risultato = @Risultato + 'mille'\n" +
|
||||
" ELSE\n" +
|
||||
" SET @Risultato = @Risultato + @Migliaia + 'mila'\n" +
|
||||
" SET @Numero = @Numero % 1000\n" +
|
||||
" /* IF @Numero > 0\n" +
|
||||
" SET @Risultato = @Risultato + ' '*/\n" +
|
||||
" END\n" +
|
||||
"\n" +
|
||||
" -- Centinaia\n" +
|
||||
" IF @Numero >= 100\n" +
|
||||
" BEGIN\n" +
|
||||
" SET @Centinaia = CASE\n" +
|
||||
" WHEN @Numero / 100 = 1 THEN 'cento'\n" +
|
||||
" WHEN @Numero / 100 = 2 THEN 'duecento'\n" +
|
||||
" WHEN @Numero / 100 = 3 THEN 'trecento'\n" +
|
||||
" WHEN @Numero / 100 = 4 THEN 'quattrocento'\n" +
|
||||
" WHEN @Numero / 100 = 5 THEN 'cinquecento'\n" +
|
||||
" WHEN @Numero / 100 = 6 THEN 'seicento'\n" +
|
||||
" WHEN @Numero / 100 = 7 THEN 'settecento'\n" +
|
||||
" WHEN @Numero / 100 = 8 THEN 'ottocento'\n" +
|
||||
" ELSE 'novecento'\n" +
|
||||
" END\n" +
|
||||
" SET @Risultato = @Risultato + @Centinaia\n" +
|
||||
" SET @Numero = @Numero % 100\n" +
|
||||
" /*IF @Numero > 0\n" +
|
||||
" SET @Risultato = @Risultato + ' '*/\n" +
|
||||
" END\n" +
|
||||
"\n" +
|
||||
" -- Decine e unità\n" +
|
||||
" IF @Numero >= 20\n" +
|
||||
" BEGIN\n" +
|
||||
" SET @Decine = CASE\n" +
|
||||
" WHEN @Numero / 10 = 2 THEN 'venti'\n" +
|
||||
" WHEN @Numero / 10 = 3 THEN 'trenta'\n" +
|
||||
" WHEN @Numero / 10 = 4 THEN 'quaranta'\n" +
|
||||
" WHEN @Numero / 10 = 5 THEN 'cinquanta'\n" +
|
||||
" WHEN @Numero / 10 = 6 THEN 'sessanta'\n" +
|
||||
" WHEN @Numero / 10 = 7 THEN 'settanta'\n" +
|
||||
" WHEN @Numero / 10 = 8 THEN 'ottanta'\n" +
|
||||
" ELSE 'novanta'\n" +
|
||||
" END\n" +
|
||||
" SET @Risultato = @Risultato + @Decine\n" +
|
||||
" SET @Numero = @Numero % 10\n" +
|
||||
" /* IF @Numero > 0\n" +
|
||||
" SET @Risultato = @Risultato + ' '*/\n" +
|
||||
" END\n" +
|
||||
"\n" +
|
||||
" IF @Numero > 0\n" +
|
||||
" BEGIN\n" +
|
||||
" SET @Unita = CASE\n" +
|
||||
" WHEN @Numero = 1 THEN 'uno'\n" +
|
||||
" WHEN @Numero = 2 THEN 'due'\n" +
|
||||
" WHEN @Numero = 3 THEN 'tre'\n" +
|
||||
" WHEN @Numero = 4 THEN 'quattro'\n" +
|
||||
" WHEN @Numero = 5 THEN 'cinque'\n" +
|
||||
" WHEN @Numero = 6 THEN 'sei'\n" +
|
||||
" WHEN @Numero = 7 THEN 'sette'\n" +
|
||||
" WHEN @Numero = 8 THEN 'otto'\n" +
|
||||
" ELSE 'nove'\n" +
|
||||
" END\n" +
|
||||
" SET @Risultato = @Risultato + @Unita\n" +
|
||||
" END\n" +
|
||||
"\n" +
|
||||
" RETURN @Risultato\n" +
|
||||
"END");
|
||||
createOrUpdateFunction("f_dec2Lettere", "CREATE FUNCTION [dbo].[f_dec2Lettere] (@Numero numeric(20,5))\n" +
|
||||
"RETURNS NVARCHAR(4000)\n" +
|
||||
"AS\n" +
|
||||
"BEGIN\n" +
|
||||
" DECLARE @Risultato NVARCHAR(4000) = ''\n" +
|
||||
" DECLARE @Decimali NVARCHAR(11) = ''\n" +
|
||||
" \n" +
|
||||
" if @Numero <> cast(@Numero as int) \n" +
|
||||
" begin\n" +
|
||||
" set @Decimali = '/'+ cast(cast((@Numero - cast(@Numero as int))*100 as int)as varchar) \n" +
|
||||
" end\n" +
|
||||
" set @Numero = CAST(@Numero as int) \n" +
|
||||
"\n" +
|
||||
" select @Risultato = dbo.f_int2Lettere(@Numero) + @Decimali\n" +
|
||||
"\n" +
|
||||
" \n" +
|
||||
" \n" +
|
||||
" RETURN @Risultato\n" +
|
||||
"END");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241004102029 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetup("IMPORT_MOVIMENTI CONTABILI", "DOCFINANCE", "ATTIVO", "N",
|
||||
"Inserire S/N per attivare/disattivare il tipo di importazione", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_MOVIMENTI CONTABILI", "DOCFINANCE", "EMAIL_FOR_LOG", null,
|
||||
"Inserire il file l'indirizzo email per inviare il log dell'importazione", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_MOVIMENTI CONTABILI", "DOCFINANCE", "FILE_FILTER", null,
|
||||
"Inserire il criterio di filtro dei file o il nome del file specifio (seguire la sintassi di java)", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_MOVIMENTI CONTABILI", "DOCFINANCE", "GG_CANC_FILE", null,
|
||||
"Giorni per la cancellazione dei file dalla cartella di appoggio", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_MOVIMENTI CONTABILI", "DOCFINANCE", "IMPORT_REST", "S",
|
||||
"Inserire S/N per attivare/disattivare il salvataggio con i servizi REST", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_MOVIMENTI CONTABILI", "DOCFINANCE", "LISTENING", "N",
|
||||
"Se LISTENIG = 'N' la procedura di importazione non si potrà mai mettere in ascolto sulla directory perchè nella procedura vengono prese in considerazione più file.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_MOVIMENTI CONTABILI", "DOCFINANCE", "PATH_FILE", null,
|
||||
"Directory contente i file da importare.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_MOVIMENTI CONTABILI", "DOCFINANCE", "PATH_FILE_IMPORTED", null,
|
||||
"Directory dove vengono spostati i file dopo l'importazione.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241004105513 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (!isCustomer(IntegryCustomer.RossoGargano)) return;
|
||||
|
||||
executeStatement("insert into ctb_movr_intercode\n" +
|
||||
"select num_cmov,\n" +
|
||||
"id_riga,\n" +
|
||||
"chiave,\n" +
|
||||
"PN_NRO_DOCUMENTO\n" +
|
||||
"from (\n" +
|
||||
"select \n" +
|
||||
"PNOTA.PN_DATA_COMPETENZA,\n" +
|
||||
"PNOTA.PN_NRO_REG ,\n" +
|
||||
"PNOTA.PN_NRO_RIGA_REG,\n" +
|
||||
"PNOTA.PN_SEGNO_MOVIMENTO,\n" +
|
||||
"PNOTA.PN_IMPORTO_MOV,\n" +
|
||||
"gtb_anag.diacod,\n" +
|
||||
"ctb_movr.num_cmov,\n" +
|
||||
"ctb_movr.id_riga,\n" +
|
||||
"PNOTA.PN_PARTITA + Space(8 - len(PNOTA.PN_PARTITA)) + format(PNOTA.PN_NRO_RIGA_REG, '000') as chiave,\n" +
|
||||
"PNOTA.PN_NRO_DOCUMENTO,\n" +
|
||||
"ctb_movr.cod_anag,\n" +
|
||||
"sum(ctb_movr.imp_dare - ctb_movr.imp_avere) over (PARTITION by ctb_movr.cod_anag) as tot_scoperto \n" +
|
||||
"from ctb_movr \n" +
|
||||
"inner join ctb_movt on ctb_movr.num_cmov = ctb_movt.num_cmov\n" +
|
||||
"inner join gtb_anag on ctb_movr.cod_anag = gtb_anag.cod_anag\n" +
|
||||
"inner join ctb_caus on ctb_movt.cod_ccau = ctb_caus.cod_ccau and ctb_caus.flag_ap_ch = 'N'\n" +
|
||||
"inner join rg_crl_movt on ctb_movt.num_cmov = rg_crl_movt.num_cmov\n" +
|
||||
"inner join RossoGarganoExchange.dbo.PNOTA PNOTA on rg_crl_movt.PN_DATA_COMPETENZA = PNOTA.PN_DATA_COMPETENZA and rg_crl_movt.PN_NRO_REG = PNOTA.PN_NRO_REG \n" +
|
||||
"and gtb_anag.diacod = PN_COD_ANAG\n" +
|
||||
"and ( (PNOTA.PN_SEGNO_MOVIMENTO = 'D' and ctb_movr.imp_dare = PNOTA.PN_IMPORTO_MOV)\n" +
|
||||
"or (PNOTA.PN_SEGNO_MOVIMENTO = 'A' and ctb_movr.imp_avere = PNOTA.PN_IMPORTO_MOV)) \n" +
|
||||
"and PNOTA.PN_NRO_RIGA_REG = ctb_movr.riga\n" +
|
||||
"where anno_part is null \n" +
|
||||
"and not exists (select * from ctb_movr_intercode where ctb_movr.num_cmov = ctb_movr_intercode.num_cmov and ctb_movr.id_riga = ctb_movr_intercode.id_riga )\n" +
|
||||
")t\n" +
|
||||
"order by cod_anag, num_cmov");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241004172307 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
|
||||
createOrUpdateFunction("f_getChiaveCogeDocFinace", "CREATE FUNCTION [dbo].[f_getChiaveCogeDocFinace]\n" +
|
||||
"(\n" +
|
||||
" @annoPart int, @serDoc varchar(2), @numDoc int, @idRiga int, @tipoAnag varchar(1)\n" +
|
||||
")\n" +
|
||||
"RETURNS varchar(26)\n" +
|
||||
"AS\n" +
|
||||
"BEGIN\n" +
|
||||
" -- Declare the return variable here\n" +
|
||||
" DECLARE @chiaveCoge varchar(26)\n" +
|
||||
"\n" +
|
||||
" -- Add the T-SQL statements to compute the return value here\n" +
|
||||
" SELECT @chiaveCoge = @tipoAnag + cast(@annoPart as varchar) + FORMAT(@numDoc, REPLICATE('0', 9)) + @serDoc + space(2 - LEN(@serDoc)) + FORMAT(@idRiga, '000')\n" +
|
||||
"\n" +
|
||||
" -- Return the result of the function\n" +
|
||||
" RETURN @chiaveCoge\n" +
|
||||
"\n" +
|
||||
"END");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241007093433 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if(!isCustomer(IntegryCustomer.RossoGargano)) return;
|
||||
|
||||
executeStatement(
|
||||
"update ctb_part \n" +
|
||||
"set ctb_part.cod_abi = vs_banca.cod_abi,\n" +
|
||||
"ctb_part.cod_cab = vs_banca.cod_cab,\n" +
|
||||
"ctb_part.iban = vs_banca.iban,\n" +
|
||||
"ctb_part.cod_banc = gtb_banc_azi.cod_banc_azi\n" +
|
||||
"from rossogarganoExchange.dbo.pnota inner join rg_crl_movt on pnota.pn_data_competenza = rg_crl_movt.pn_data_competenza\n" +
|
||||
"and pnota.pn_nro_reg = rg_crl_movt.pn_nro_reg\n" +
|
||||
"inner join ctb_parr on rg_crl_movt.num_cmov = ctb_parr.num_cmov\n" +
|
||||
"inner join ctb_part on ctb_parr.tipo_anag = ctb_part.tipo_anag\n" +
|
||||
"and ctb_parr.cod_anag = ctb_part.cod_anag\n" +
|
||||
"and ctb_parr.anno_part = ctb_part.anno_part\n" +
|
||||
"and ctb_parr.ser_doc = ctb_part.ser_doc\n" +
|
||||
"and ctb_parr.num_doc = ctb_part.num_doc\n" +
|
||||
"left outer join (select cbanca_key1,\n" +
|
||||
"\tiif (CBANCA.CBANCA_PAESE = 'IT', IIF(LEN(CBANCA.CBANCA_CC) > 0, CBANCA.CBANCA_PAESE + CBANCA.CBANCA_CTRL + CBANCA.CBANCA_CIN + CBANCA.CBANCA_ABI + CBANCA.CBANCA_CAB + CBANCA.CBANCA_CC,NULL) , CBANCA.CBANCA_BBAN) AS IBAN,\n" +
|
||||
"\tCBANCA.CBANCA_ABI AS COD_ABI,\n" +
|
||||
"\tCBANCA.CBANCA_CAB AS COD_CAB,\n" +
|
||||
"\tCBANCA.CBANCA_CC AS NUM_CC,\n" +
|
||||
"\tiif(len(CBANCA.CBANCA_BIC)=0,null, trim(CBANCA.CBANCA_BIC) ) AS COD_BIc\n" +
|
||||
"\tfrom RossoGarganoExchange.dbo.cbanca) vs_banca on pnota.pn_vs_banca_cc = vs_banca.cbanca_key1\n" +
|
||||
"left outer join (select cbanca_key1,\n" +
|
||||
"\tcbanca_c_coge\n" +
|
||||
"\tfrom RossoGarganoExchange.dbo.cbanca) ns_banca on ns_banca.cbanca_key1 like '%' + pnota.pn_ns_banca_cc \n" +
|
||||
"left outer join ctb_cont on ns_banca.cbanca_c_coge = ctb_cont.diacod\n" +
|
||||
"left outer join gtb_banc_azi on ctb_cont.cod_ccon = gtb_banc_azi.cod_ccon_ordinario\n" +
|
||||
"where Len(pnota.pn_vs_banca_cc) <> 0 OR Len(pnota.pn_ns_banca_cc) <> 0");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241007094051 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
enableSaveToRest("ganag");
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241007121240 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetup("W_CBILANCIO_CONTRAP_DISP", "SETUP", "STAMPA_PROVVISIORIA", "S",
|
||||
"Se impostato a S vuol dire che se anno del bilancio è uguale ad anno attuale oppure maggiore di anno magazzino sulla stampa il titolo riporterà ''BILANCIO PROVVISORIO''", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241007142159 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetup("IMPORT_DOCUMENTI", "PAZIENZA_RIFORD", "ATTIVO", "N",
|
||||
"Inserire S/N per attivare/disattivare il tipo di importazione", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_DOCUMENTI", "PAZIENZA_RIFORD", "EMAIL_FOR_LOG", null,
|
||||
"Inserire il file l'indirizzo email per inviare il log dell'importazione", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_DOCUMENTI", "PAZIENZA_RIFORD", "FILE_FILTER", null,
|
||||
"Inserire il criterio di filtro dei file o il nome del file specifio (seguire la sintassi di java)", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_DOCUMENTI", "PAZIENZA_RIFORD", "GG_CANC_FILE", null,
|
||||
"Giorni per la cancellazione dei file dalla cartella di appoggio", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_DOCUMENTI", "PAZIENZA_RIFORD", "IMPORT_REST", "S",
|
||||
"Inserire S/N per attivare/disattivare il salvataggio con i servizi REST", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_DOCUMENTI", "PAZIENZA_RIFORD", "LISTENING", "N",
|
||||
"Se LISTENIG = 'N' la procedura di importazione non si potrà mai mettere in ascolto sulla directory perchè nella procedura vengono prese in considerazione più file.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_DOCUMENTI", "PAZIENZA_RIFORD", "PATH_FILE", null,
|
||||
"Directory contente i file da importare.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_DOCUMENTI", "PAZIENZA_RIFORD", "PATH_FILE_IMPORTED", null,
|
||||
"Directory dove vengono spostati i file dopo l'importazione.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
|
||||
createSetup("IMPORT_DOCUMENTI", "PAZIENZA_RIFORD", "TIPO_DOCUMENTO", null,
|
||||
"Tipi documento su cui assegnare i riferimenti.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
|
||||
createSetup("IMPORT_DOCUMENTI", "PAZIENZA_RIFORD", "PARTITA_IVA", null,
|
||||
"Partita Iva del fornitore.", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
|
||||
createSetup("IMPORT_DOCUMENTI", "PAZIENZA_RIFORD", "USE_PART_IVA_AZIENDA", "S",
|
||||
"Usa partita iva per riconoscere l'azienda.", false, "SI_NO", false, false,
|
||||
false, false, false, null, false, null);
|
||||
createSetup("IMPORT_DOCUMENTI", "APULIA_RIFORD", "USE_PART_IVA_AZIENDA", "N",
|
||||
"Usa partita iva per riconoscere l'azienda.", false, "SI_NO", false, false,
|
||||
false, false, false, null, false, null);
|
||||
|
||||
if (!isCustomerDb(IntegryCustomerDB.Carelli_Carelli)) return;
|
||||
|
||||
updateSetupValue("IMPORT_DOCUMENTI", "PAZIENZA_RIFORD", "TIPO_DOCUMENTO", "BA|BA1|FTIA|FRCDF|FAD" );
|
||||
updateSetupValue("IMPORT_DOCUMENTI", "PAZIENZA_RIFORD", "ATTIVO", "S" );
|
||||
updateSetupValue("IMPORT_DOCUMENTI", "PAZIENZA_RIFORD", "LISTENING", "S" );
|
||||
updateSetupValue("IMPORT_DOCUMENTI", "PAZIENZA_RIFORD", "PARTITA_IVA", "07716650721" );
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241007155146 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createOrUpdateView("mvw_colli_contatore_lavorazione","CREATE VIEW [dbo].[mvw_colli_contatore_lavorazione] AS\n" +
|
||||
"WITH colli AS (SELECT DISTINCT mtb_colt.gestione,\n" +
|
||||
" mtb_colt.data_collo,\n" +
|
||||
" mtb_colt.num_collo,\n" +
|
||||
" mtb_colt.ser_collo,\n" +
|
||||
" mtb_colr.data_ord,\n" +
|
||||
" mtb_colr.num_ord,\n" +
|
||||
" mtb_colr.partita_mag,\n" +
|
||||
" mtb_colt.flag_stampato\n" +
|
||||
" FROM mtb_colt\n" +
|
||||
" INNER JOIN mtb_colr ON mtb_colt.gestione = mtb_colr.gestione AND\n" +
|
||||
" mtb_colt.data_collo = mtb_colr.data_collo AND\n" +
|
||||
" mtb_colt.ser_collo = mtb_colr.ser_collo AND\n" +
|
||||
" mtb_colt.num_collo = mtb_colr.num_collo\n" +
|
||||
" WHERE mtb_colt.gestione = 'L'\n" +
|
||||
" AND mtb_colt.segno = 1\n" +
|
||||
" AND mtb_colr.data_ord IS NOT NULL)\n" +
|
||||
"SELECT *,\n" +
|
||||
" DENSE_RANK() OVER (PARTITION BY data_ord, num_ord,partita_mag ORDER BY data_collo, ser_collo, num_collo) AS prog_collo,\n" +
|
||||
" COUNT(*) OVER (PARTITION BY data_ord, num_ord,partita_mag ) AS tot_colli\n" +
|
||||
"FROM colli\n" +
|
||||
"GO\n" +
|
||||
"\n");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,153 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241008115753 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
|
||||
createOrUpdateView("gvw_situaz_ordini", "CREATE VIEW [dbo].[gvw_situaz_ordini] AS SELECT\n" +
|
||||
" '1' AS sezione,\n" +
|
||||
" dtb_ordt.gestione,\n" +
|
||||
" dtb_ordt.data_ord,\n" +
|
||||
" dtb_ordt.num_ord,\n" +
|
||||
" dtb_ordt.rif_ord,\n" +
|
||||
" dtb_ordt.persona_rif,\n" +
|
||||
" dtb_ordr.riga_ord,\n" +
|
||||
" 'ORDINE' AS cod_dtip,\n" +
|
||||
" dtb_ordt.data_ord AS data_doc,\n" +
|
||||
" CONVERT(varchar(1), NULL) AS ser_doc,\n" +
|
||||
" dtb_ordt.num_ord AS num_doc,\n" +
|
||||
" dtb_ordr.partita_mag,\n" +
|
||||
" dtb_ordt.cod_anag,\n" +
|
||||
" dtb_ordr.cod_mart,\n" +
|
||||
" dtb_ordr.cod_mart AS cod_mart_ord,\n" +
|
||||
" dtb_ordr.descrizione,\n" +
|
||||
" dtb_ordr.data_cons,\n" +
|
||||
" dtb_ordr.unt_ord,\n" +
|
||||
" dtb_ordr.cod_col,\n" +
|
||||
" dtb_ordr.cod_tagl,\n" +
|
||||
" dtb_ordr.qta_ord,\n" +
|
||||
" dtb_ordr.qta_evasa,\n" +
|
||||
" dtb_ordr.flag_evaso,\n" +
|
||||
" dtb_ordr.val_unt * (1 - sconto1 / 100) * (1 - sconto2 / 100) * (1 - sconto3 / 100) * (1 - sconto4 / 100) * (1 - sconto5 / 100) * (1 - sconto6 / 100) * (1 - sconto7 / 100) * (1 - sconto8 / 100) AS val_unt,\n" +
|
||||
" CAST(CASE\n" +
|
||||
" WHEN dtb_ordt.listino IS NOT NULL THEN\n" +
|
||||
" dbo.f_calcprznettoacq(\n" +
|
||||
" dtb_ordt.listino\n" +
|
||||
" , dbo.getGestSetup('w_aordi_rc','SETUP','FORMULA_PREZZO_NETTO')\n" +
|
||||
" , dtb_ordr.sconto5\n" +
|
||||
" , dtb_ordr.sconto6\n" +
|
||||
" , dtb_ordr.sconto7\n" +
|
||||
" , dtb_ordr.sconto8\n" +
|
||||
" , 0\n" +
|
||||
" , 0\n" +
|
||||
" , 0\n" +
|
||||
" , 0\n" +
|
||||
" , dtb_ordr.perc_promo\n" +
|
||||
" , dtb_ordr.val_promo\n" +
|
||||
" , dtb_ordr.perc_oneri\n" +
|
||||
" , dtb_ordr.val_oneri\n" +
|
||||
" , dtb_ordr.val_unt)\n" +
|
||||
" ELSE 0 END AS NUMERIC(20, 5)) AS prezzo_netto_premi,\n" +
|
||||
" dtb_ordt.cod_divi,\n" +
|
||||
" gtb_divi.formato,\n" +
|
||||
" mtb_aart.peso_kg,\n" +
|
||||
" CONVERT(DATETIME, NULL) AS data_reg,\n" +
|
||||
" CONVERT(varchar(40), NULL) AS desc_col,\n" +
|
||||
" dtb_ordt.compilato_da,\n" +
|
||||
" dtb_ordt.controllato_da,\n" +
|
||||
" dtb_ordt.cod_jfas,\n" +
|
||||
" dtb_ordt.flag_evaso_prod,\n" +
|
||||
" dtb_ordt.qta_prod,\n" +
|
||||
" dtb_ordt.cod_mdep,\n" +
|
||||
" dtb_ordt.gestione_rif,\n" +
|
||||
" dtb_ordt.cod_vdes\n" +
|
||||
"FROM\n" +
|
||||
" dtb_ordr\n" +
|
||||
" INNER JOIN dtb_ordt ON (dtb_ordt.gestione = dtb_ordr.gestione)\n" +
|
||||
" AND (dtb_ordt.data_ord = dtb_ordr.data_ord)\n" +
|
||||
" AND (dtb_ordt.num_ord = dtb_ordr.num_ord)\n" +
|
||||
" LEFT OUTER JOIN mtb_aart ON dtb_ordr.cod_mart = mtb_aart.cod_mart,\n" +
|
||||
" gtb_divi\n" +
|
||||
"WHERE\n" +
|
||||
" (dtb_ordt.cod_divi = gtb_divi.cod_divi)\n" +
|
||||
" AND (dtb_ordt.flag_annulla = 'N')\n" +
|
||||
" AND (dtb_ordr.flag_evaso <> 'A')\n" +
|
||||
"UNION ALL\n" +
|
||||
"SELECT\n" +
|
||||
" '2',\n" +
|
||||
" dtb_doct.gestione,\n" +
|
||||
" dtb_docr.data_ord,\n" +
|
||||
" dtb_docr.num_ord,\n" +
|
||||
" CONVERT(varchar(40), NULL),\n" +
|
||||
" CONVERT(varchar(40), NULL),\n" +
|
||||
" dtb_docr.riga_ord,\n" +
|
||||
" dtb_docr.cod_dtip,\n" +
|
||||
" dtb_docr.data_doc,\n" +
|
||||
" dtb_docr.ser_doc,\n" +
|
||||
" dtb_docr.num_doc,\n" +
|
||||
" dtb_docr.partita_mag,\n" +
|
||||
" dtb_doct.cod_anag,\n" +
|
||||
" dtb_docr.cod_mart,\n" +
|
||||
" dtb_ordr.cod_mart AS cod_mart_ord,\n" +
|
||||
" dtb_docr.descrizione,\n" +
|
||||
" dtb_ordr.data_cons,\n" +
|
||||
" dtb_docr.unt_doc,\n" +
|
||||
" dtb_docr.cod_col,\n" +
|
||||
" dtb_docr.cod_tagl,\n" +
|
||||
" 0 AS qta_ord,\n" +
|
||||
" dtb_docr.qta_doc,\n" +
|
||||
" CONVERT(varchar(1), NULL),\n" +
|
||||
" dtb_docr.val_unt * (1 - dtb_doct.sconto1 / 100) * (1 - dtb_doct.sconto2 / 100) * (1 - dtb_doct.sconto3 / 100) * (1 - dtb_doct.sconto4 / 100) * (1 - dtb_docr.sconto5 / 100) * (1 - dtb_docr.sconto6 / 100) * (1 - dtb_docr.sconto7 / 100) * (1 - dtb_docr.sconto8 / 100),\n" +
|
||||
" 0,\n" +
|
||||
" dtb_doct.cod_divi,\n" +
|
||||
" gtb_divi.formato,\n" +
|
||||
" mtb_aart.peso_kg,\n" +
|
||||
" dtb_doct.data_reg,\n" +
|
||||
" CONVERT(varchar(40), NULL) AS desc_col,\n" +
|
||||
" dtb_ordt.compilato_da,\n" +
|
||||
" dtb_ordt.controllato_da,\n" +
|
||||
" dtb_ordt.cod_jfas,\n" +
|
||||
" dtb_ordt.flag_evaso_prod,\n" +
|
||||
" dtb_ordt.qta_prod,\n" +
|
||||
" dtb_ordt.cod_mdep,\n" +
|
||||
" dtb_ordt.gestione_rif,\n" +
|
||||
" dtb_ordt.cod_vdes\n" +
|
||||
"FROM\n" +
|
||||
" dtb_docr\n" +
|
||||
" INNER JOIN dtb_doct ON (dtb_doct.cod_anag = dtb_docr.cod_anag)\n" +
|
||||
" AND (dtb_doct.cod_dtip = dtb_docr.cod_dtip)\n" +
|
||||
" AND (dtb_doct.data_doc = dtb_docr.data_doc)\n" +
|
||||
" AND (dtb_doct.ser_doc = dtb_docr.ser_doc)\n" +
|
||||
" AND (dtb_doct.num_doc = dtb_docr.num_doc)\n" +
|
||||
" LEFT OUTER JOIN dtb_ordr ON dtb_ordr.data_ord = dtb_docr.data_ord\n" +
|
||||
" AND dtb_ordr.num_ord = dtb_docr.num_ord\n" +
|
||||
" AND dtb_ordr.riga_ord = dtb_docr.riga_ord\n" +
|
||||
" LEFT OUTER JOIN mtb_aart ON dtb_docr.cod_mart = mtb_aart.cod_mart\n" +
|
||||
" LEFT OUTER JOIN dtb_ordt ON dtb_ordr.gestione = dtb_ordt.gestione\n" +
|
||||
" AND dtb_ordr.data_ord = dtb_ordt.data_ord\n" +
|
||||
" AND dtb_ordr.num_ord = dtb_ordt.num_ord,\n" +
|
||||
" gtb_divi,\n" +
|
||||
" dtb_tipi\n" +
|
||||
"WHERE\n" +
|
||||
" (dtb_doct.cod_divi = gtb_divi.cod_divi)\n" +
|
||||
" AND (dtb_doct.cod_dtip = dtb_tipi.cod_dtip)\n" +
|
||||
" AND (\n" +
|
||||
" dtb_tipi.segno_qta_car <> 0\n" +
|
||||
" OR dtb_tipi.segno_qta_scar <> 0\n" +
|
||||
" )\n" +
|
||||
" AND (dtb_tipi.tipo_emissione = 'DIRETTA')");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,140 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241008123321 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (!isCustomerDb(IntegryCustomerDB.Carelli_Winact)) return;
|
||||
|
||||
createOrUpdateFunction("steup_getInevasi", "CREATE FUNCTION [dbo].[steup_getInevasi]\n" +
|
||||
"( \n" +
|
||||
" @codMdep varchar(5), @codJfas varchar(5), @dataIspezione datetime\n" +
|
||||
")\n" +
|
||||
"RETURNS TABLE \n" +
|
||||
"AS\n" +
|
||||
"RETURN \n" +
|
||||
"with ordini as (\n" +
|
||||
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
|
||||
"from gestfood.dbo.dtb_ordt inner join gestfood.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
|
||||
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
|
||||
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
|
||||
"inner join gestfood.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
|
||||
"where dtb_ordt.gestione = 'A' \n" +
|
||||
"and dtb_ordt.flag_annulla = 'N'\n" +
|
||||
"and dtb_ordt.cod_mdep = @codMdep\n" +
|
||||
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
|
||||
"and dtb_ordr.flag_evaso = 'I'\n" +
|
||||
"union\n" +
|
||||
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
|
||||
"from carelli.dbo.dtb_ordt inner join carelli.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
|
||||
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
|
||||
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
|
||||
"inner join carelli.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
|
||||
"where dtb_ordt.gestione = 'A' \n" +
|
||||
"and dtb_ordt.flag_annulla = 'N'\n" +
|
||||
"and dtb_ordt.cod_mdep = @codMdep\n" +
|
||||
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
|
||||
"and dtb_ordr.flag_evaso = 'I'\n" +
|
||||
"union\n" +
|
||||
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
|
||||
"from panimal.dbo.dtb_ordt inner join panimal.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
|
||||
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
|
||||
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
|
||||
"inner join panimal.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
|
||||
"where dtb_ordt.gestione = 'A' \n" +
|
||||
"and dtb_ordt.flag_annulla = 'N'\n" +
|
||||
"and dtb_ordt.cod_mdep = @codMdep\n" +
|
||||
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
|
||||
"and dtb_ordr.flag_evaso = 'I' )\n" +
|
||||
"\n" +
|
||||
"select art.cod_mart_griglia as cod_mart\n" +
|
||||
"from ordini \n" +
|
||||
"inner join (SELECT mtb_comp.cod_mart, cod_comp as cod_mart_griglia from carelli.dbo.mtb_comp inner join carelli.dbo.mtb_aart on mtb_comp.cod_mart = mtb_aart.cod_mart and mtb_aart.articolo_composto = 's'\n" +
|
||||
"union all \n" +
|
||||
"SELECT cod_comp as cod_mart, mtb_comp.cod_mart as cod_mart_griglia from carelli.dbo.mtb_comp inner join carelli.dbo.mtb_aart on mtb_comp.cod_mart = mtb_aart.cod_mart and mtb_aart.articolo_composto = 's'\n" +
|
||||
"union all \n" +
|
||||
"SELECt cod_mart, cod_mart as cod_mart_griglia from carelli.dbo.mtb_aart where articolo_composto = 'N'\n" +
|
||||
" ) art on ordini.cod_mart = art.cod_mart\n" +
|
||||
"inner join mtb_aart on ordini.cod_mart = mtb_aart.cod_mart\n" +
|
||||
"inner join jrl_fasi_mtb_grup on jrl_fasi_mtb_grup.cod_mgrp = mtb_aart.cod_mgrp\n" +
|
||||
"where jrl_fasi_mtb_grup.cod_jfas = @codJfas AND\n" +
|
||||
"part_iva in (select value_string from dbo.ParseStringIntoArray((select dbo.getGestSetup('PVM', 'RILEVAZIONI_STEUP', 'ELENCO_FORN_INEVASI')), '|'))");
|
||||
createOrUpdateFunction("steup_getAssortimento", "CREATE FUNCTION [dbo].[steup_getAssortimento]\n" +
|
||||
" (\n" +
|
||||
" @codmdep VARCHAR(5), @codjfas VARCHAR(5), @dataIspezione datetime\n" +
|
||||
" )\n" +
|
||||
" RETURNS TABLE\n" +
|
||||
" AS\n" +
|
||||
" RETURN(\n" +
|
||||
" /*\n" +
|
||||
" declare @codMdep varchar(5), @codJfas varchar(5)\n" +
|
||||
"\n" +
|
||||
" set @codMdep = '01'\n" +
|
||||
" set @codJfas = '09';\n" +
|
||||
"\n" +
|
||||
" */\n" +
|
||||
"\n" +
|
||||
"\n" +
|
||||
" WITH tipiart AS (SELECT value_string AS cod_mtip\n" +
|
||||
" FROM dbo.parsestringintoarray((SELECT value\n" +
|
||||
" FROM stb_gest_setup\n" +
|
||||
" WHERE gest_name = 'PVM'\n" +
|
||||
" AND section = 'RILEVAZIONI_STEUP'\n" +
|
||||
" AND key_section = 'EXCLUDE_COD_MTIP'), '|') t)\n" +
|
||||
" , art AS (SELECT DISTINCT griglia.cod_mart\n" +
|
||||
" FROM carelli.dbo.getgrigliaacquisto(@dataIspezione, NULL, @codmdep, NULL, NULL) griglia\n" +
|
||||
" INNER JOIN carelli.dbo.mtb_depo ON griglia.cod_mdep = mtb_depo.cod_mdep\n" +
|
||||
" INNER JOIN carelli.dbo.getlistinovendita(NULL, NULL, NULL) AS lisv\n" +
|
||||
" ON mtb_depo.cod_vlis = lisv.cod_vlis AND griglia.cod_mart = lisv.cod_mart\n" +
|
||||
" WHERE griglia.tipo_variazione <> 'D'\n" +
|
||||
" UNION\n" +
|
||||
" SELECT DISTINCT cod_mart\n" +
|
||||
" FROM mtb_depo\n" +
|
||||
" INNER JOIN carelli.dbo.getpromozionevendita(@dataIspezione, @dataIspezione, NULL, NULL, NULL) promo\n" +
|
||||
" ON promo.cod_vlis = mtb_depo.cod_vlis\n" +
|
||||
" WHERE tipo_variazione <> 'D'\n" +
|
||||
" AND mtb_depo.cod_mdep = @codmdep)\n" +
|
||||
"\n" +
|
||||
"\n" +
|
||||
" SELECT DISTINCT mtb_aart.cod_mart,\n" +
|
||||
" mtb_aart.descrizione,\n" +
|
||||
" mtb_aart.bar_code,\n" +
|
||||
" mtb_aart.cod_msgr,\n" +
|
||||
" mtb_aart.plu,\n" +
|
||||
" art_det.cod_mart_griglia AS cod_madre\n" +
|
||||
" FROM mtb_aart\n" +
|
||||
" INNER JOIN jrl_fasi_mtb_grup ON\n" +
|
||||
" mtb_aart.cod_mgrp = jrl_fasi_mtb_grup.cod_mgrp\n" +
|
||||
" INNER JOIN (SELECT mtb_comp.cod_mart, cod_comp AS cod_mart_griglia\n" +
|
||||
" FROM carelli.dbo.mtb_comp\n" +
|
||||
" INNER JOIN carelli.dbo.mtb_aart ON mtb_comp.cod_mart = mtb_aart.cod_mart AND\n" +
|
||||
" mtb_aart.articolo_composto = 's'\n" +
|
||||
" UNION ALL\n" +
|
||||
" SELECT cod_comp AS cod_mart, mtb_comp.cod_mart AS cod_mart_griglia\n" +
|
||||
" FROM carelli.dbo.mtb_comp\n" +
|
||||
" INNER JOIN carelli.dbo.mtb_aart ON mtb_comp.cod_mart = mtb_aart.cod_mart AND\n" +
|
||||
" mtb_aart.articolo_composto = 's'\n" +
|
||||
" UNION ALL\n" +
|
||||
" SELECT cod_mart, cod_mart AS cod_mart_griglia\n" +
|
||||
" FROM carelli.dbo.mtb_aart\n" +
|
||||
" WHERE articolo_composto = 'N') AS art_det\n" +
|
||||
" ON mtb_aart.cod_mart = art_det.cod_mart\n" +
|
||||
" INNER JOIN art ON art_det.cod_mart_griglia = art.cod_mart\n" +
|
||||
" WHERE jrl_fasi_mtb_grup.cod_jfas = @codjfas\n" +
|
||||
" AND flag_stato = 'A'\n" +
|
||||
" AND (mtb_aart.cod_mtip IS NULL OR mtb_aart.cod_mtip NOT IN (SELECT cod_mtip FROM tipiart)))");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,75 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241008151703 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
if (!isCustomerDb(IntegryCustomerDB.Carelli_Winact)) return;
|
||||
|
||||
createOrUpdateFunction("steup_getInevasi", "CREATE FUNCTION [dbo].[steup_getInevasi]\n" +
|
||||
"( \n" +
|
||||
" @codMdep varchar(5), @codJfas varchar(5), @dataIspezione datetime\n" +
|
||||
")\n" +
|
||||
"RETURNS TABLE \n" +
|
||||
"AS\n" +
|
||||
"RETURN \n" +
|
||||
"with ordini as (\n" +
|
||||
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
|
||||
"from gestfood.dbo.dtb_ordt inner join gestfood.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
|
||||
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
|
||||
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
|
||||
"inner join gestfood.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
|
||||
"where dtb_ordt.gestione = 'A' \n" +
|
||||
"and dtb_ordt.flag_annulla = 'N'\n" +
|
||||
"and dtb_ordt.cod_mdep = @codMdep\n" +
|
||||
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
|
||||
"and dtb_ordr.flag_evaso = 'I'\n" +
|
||||
"union\n" +
|
||||
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
|
||||
"from carelli.dbo.dtb_ordt inner join carelli.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
|
||||
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
|
||||
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
|
||||
"inner join carelli.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
|
||||
"where dtb_ordt.gestione = 'A' \n" +
|
||||
"and dtb_ordt.flag_annulla = 'N'\n" +
|
||||
"and dtb_ordt.cod_mdep = @codMdep\n" +
|
||||
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
|
||||
"and dtb_ordr.flag_evaso = 'I'\n" +
|
||||
"union\n" +
|
||||
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
|
||||
"from panimal.dbo.dtb_ordt inner join panimal.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
|
||||
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
|
||||
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
|
||||
"inner join panimal.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
|
||||
"where dtb_ordt.gestione = 'A' \n" +
|
||||
"and dtb_ordt.flag_annulla = 'N'\n" +
|
||||
"and dtb_ordt.cod_mdep = @codMdep\n" +
|
||||
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
|
||||
"and dtb_ordr.flag_evaso = 'I' )\n" +
|
||||
"\n" +
|
||||
"select art.cod_mart_griglia as cod_mart\n" +
|
||||
"from ordini \n" +
|
||||
"inner join (SELECT mtb_comp.cod_mart, cod_comp as cod_mart_griglia from carelli.dbo.mtb_comp inner join carelli.dbo.mtb_aart on mtb_comp.cod_mart = mtb_aart.cod_mart and mtb_aart.articolo_composto = 's'\n" +
|
||||
"union all \n" +
|
||||
"SELECT cod_comp as cod_mart, mtb_comp.cod_mart as cod_mart_griglia from carelli.dbo.mtb_comp inner join carelli.dbo.mtb_aart on mtb_comp.cod_mart = mtb_aart.cod_mart and mtb_aart.articolo_composto = 's'\n" +
|
||||
"union all \n" +
|
||||
"SELECt cod_mart, cod_mart as cod_mart_griglia from carelli.dbo.mtb_aart where articolo_composto = 'N'\n" +
|
||||
" ) art on ordini.cod_mart = art.cod_mart\n" +
|
||||
"inner join mtb_aart on ordini.cod_mart = mtb_aart.cod_mart\n" +
|
||||
"inner join jrl_fasi_mtb_grup on jrl_fasi_mtb_grup.cod_mgrp = mtb_aart.cod_mgrp\n" +
|
||||
"where jrl_fasi_mtb_grup.cod_jfas = @codJfas AND\n" +
|
||||
"part_iva in (select value_string from dbo.ParseStringIntoArray((select dbo.getGestSetup('PVM', 'RILEVAZIONI_STEUP', 'ELENCO_FORN_INEVASI')), '|'))");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,86 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241008151727 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (!isCustomerDb(IntegryCustomerDB.Carelli_Winact)) return;
|
||||
createOrUpdateFunction("steup_getAssortimento", "CREATE FUNCTION [dbo].[steup_getAssortimento]\n" +
|
||||
" (\n" +
|
||||
" @codmdep VARCHAR(5), @codjfas VARCHAR(5), @dataIspezione datetime\n" +
|
||||
" )\n" +
|
||||
" RETURNS TABLE\n" +
|
||||
" AS\n" +
|
||||
" RETURN(\n" +
|
||||
" /*\n" +
|
||||
" declare @codMdep varchar(5), @codJfas varchar(5)\n" +
|
||||
"\n" +
|
||||
" set @codMdep = '01'\n" +
|
||||
" set @codJfas = '09';\n" +
|
||||
"\n" +
|
||||
" */\n" +
|
||||
"\n" +
|
||||
"\n" +
|
||||
" WITH tipiart AS (SELECT value_string AS cod_mtip\n" +
|
||||
" FROM dbo.parsestringintoarray((SELECT value\n" +
|
||||
" FROM stb_gest_setup\n" +
|
||||
" WHERE gest_name = 'PVM'\n" +
|
||||
" AND section = 'RILEVAZIONI_STEUP'\n" +
|
||||
" AND key_section = 'EXCLUDE_COD_MTIP'), '|') t)\n" +
|
||||
" , art AS (SELECT DISTINCT griglia.cod_mart\n" +
|
||||
" FROM carelli.dbo.getgrigliaacquisto(@dataIspezione, NULL, @codmdep, NULL, NULL) griglia\n" +
|
||||
" INNER JOIN carelli.dbo.mtb_depo ON griglia.cod_mdep = mtb_depo.cod_mdep\n" +
|
||||
" INNER JOIN carelli.dbo.getlistinovendita(NULL, NULL, NULL) AS lisv\n" +
|
||||
" ON mtb_depo.cod_vlis = lisv.cod_vlis AND griglia.cod_mart = lisv.cod_mart\n" +
|
||||
" WHERE griglia.tipo_variazione <> 'D'\n" +
|
||||
" UNION\n" +
|
||||
" SELECT DISTINCT cod_mart\n" +
|
||||
" FROM mtb_depo\n" +
|
||||
" INNER JOIN carelli.dbo.getpromozionevendita(@dataIspezione, @dataIspezione, NULL, NULL, NULL) promo\n" +
|
||||
" ON promo.cod_vlis = mtb_depo.cod_vlis\n" +
|
||||
" WHERE tipo_variazione <> 'D'\n" +
|
||||
" AND mtb_depo.cod_mdep = @codmdep)\n" +
|
||||
"\n" +
|
||||
"\n" +
|
||||
" SELECT DISTINCT mtb_aart.cod_mart,\n" +
|
||||
" mtb_aart.descrizione,\n" +
|
||||
" mtb_aart.bar_code,\n" +
|
||||
" mtb_aart.cod_msgr,\n" +
|
||||
" mtb_aart.plu,\n" +
|
||||
" art_det.cod_mart_griglia AS cod_madre\n" +
|
||||
" FROM mtb_aart\n" +
|
||||
" INNER JOIN jrl_fasi_mtb_grup ON\n" +
|
||||
" mtb_aart.cod_mgrp = jrl_fasi_mtb_grup.cod_mgrp\n" +
|
||||
" INNER JOIN (SELECT mtb_comp.cod_mart, cod_comp AS cod_mart_griglia\n" +
|
||||
" FROM carelli.dbo.mtb_comp\n" +
|
||||
" INNER JOIN carelli.dbo.mtb_aart ON mtb_comp.cod_mart = mtb_aart.cod_mart AND\n" +
|
||||
" mtb_aart.articolo_composto = 's'\n" +
|
||||
" UNION ALL\n" +
|
||||
" SELECT cod_comp AS cod_mart, mtb_comp.cod_mart AS cod_mart_griglia\n" +
|
||||
" FROM carelli.dbo.mtb_comp\n" +
|
||||
" INNER JOIN carelli.dbo.mtb_aart ON mtb_comp.cod_mart = mtb_aart.cod_mart AND\n" +
|
||||
" mtb_aart.articolo_composto = 's'\n" +
|
||||
" UNION ALL\n" +
|
||||
" SELECT cod_mart, cod_mart AS cod_mart_griglia\n" +
|
||||
" FROM carelli.dbo.mtb_aart\n" +
|
||||
" WHERE articolo_composto = 'N') AS art_det\n" +
|
||||
" ON mtb_aart.cod_mart = art_det.cod_mart\n" +
|
||||
" INNER JOIN art ON art_det.cod_mart_griglia = art.cod_mart \n" +
|
||||
" WHERE jrl_fasi_mtb_grup.cod_jfas = @codjfas\n" +
|
||||
" AND flag_stato = 'A'\n" +
|
||||
" AND (mtb_aart.cod_mtip IS NULL OR mtb_aart.cod_mtip NOT IN (SELECT cod_mtip FROM tipiart)))");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241008153106 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
|
||||
if (!isCustomerDb(IntegryCustomerDB.Carelli_Winact)) return;
|
||||
|
||||
|
||||
createOrUpdateFunction("[steup_getInevasi]", "CREATE FUNCTION [dbo].[steup_getInevasi]\n" +
|
||||
"( \n" +
|
||||
" @codMdep varchar(5), @codJfas varchar(5), @dataIspezione datetime\n" +
|
||||
")\n" +
|
||||
"RETURNS TABLE \n" +
|
||||
"AS\n" +
|
||||
"RETURN \n" +
|
||||
"with ordini as (\n" +
|
||||
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
|
||||
"from gestfood.dbo.dtb_ordt inner join gestfood.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
|
||||
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
|
||||
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
|
||||
"inner join gestfood.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
|
||||
"inner join gestfood.dbo.atb_list on dtb_ordt.listino = atb_list.cod_alis and atb_list.part_iva_forn is null\n" +
|
||||
"where dtb_ordt.gestione = 'A' \n" +
|
||||
"and dtb_ordt.flag_annulla = 'N'\n" +
|
||||
"and dtb_ordt.cod_mdep = @codMdep\n" +
|
||||
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
|
||||
"and dtb_ordr.flag_evaso = 'I'\n" +
|
||||
"union\n" +
|
||||
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
|
||||
"from carelli.dbo.dtb_ordt inner join carelli.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
|
||||
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
|
||||
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
|
||||
"inner join carelli.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
|
||||
"inner join carelli.dbo.atb_list on dtb_ordt.listino = atb_list.cod_alis and atb_list.part_iva_forn is null\n" +
|
||||
"where dtb_ordt.gestione = 'A' \n" +
|
||||
"and dtb_ordt.flag_annulla = 'N'\n" +
|
||||
"and dtb_ordt.cod_mdep = @codMdep\n" +
|
||||
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
|
||||
"and dtb_ordr.flag_evaso = 'I'\n" +
|
||||
"union\n" +
|
||||
"select dtb_ordr.cod_mart, gtb_anag.part_iva\n" +
|
||||
"from panimal.dbo.dtb_ordt inner join panimal.dbo.dtb_ordr on dtb_ordt.gestione = dtb_ordr.gestione \n" +
|
||||
"and dtb_ordt.data_ord = dtb_ordr.data_ord\n" +
|
||||
"and dtb_ordt.num_ord = dtb_ordr.num_ord\n" +
|
||||
"inner join panimal.dbo.gtb_anag on dtb_ordt.cod_anag = gtb_anag.cod_anag \n" +
|
||||
"inner join panimal.dbo.atb_list on dtb_ordt.listino = atb_list.cod_alis and atb_list.part_iva_forn is null\n" +
|
||||
"where dtb_ordt.gestione = 'A' \n" +
|
||||
"and dtb_ordt.flag_annulla = 'N'\n" +
|
||||
"and dtb_ordt.cod_mdep = @codMdep\n" +
|
||||
"and dtb_ordr.data_cons between DateAdd(day, -8, @dataIspezione) and DateAdd(day, -1, @dataIspezione)\n" +
|
||||
"and dtb_ordr.flag_evaso = 'I' )\n" +
|
||||
"\n" +
|
||||
"select art.cod_mart_griglia as cod_mart\n" +
|
||||
"from ordini \n" +
|
||||
"inner join (SELECT mtb_comp.cod_mart, cod_comp as cod_mart_griglia from carelli.dbo.mtb_comp inner join carelli.dbo.mtb_aart on mtb_comp.cod_mart = mtb_aart.cod_mart and mtb_aart.articolo_composto = 's'\n" +
|
||||
"union all \n" +
|
||||
"SELECT cod_comp as cod_mart, mtb_comp.cod_mart as cod_mart_griglia from carelli.dbo.mtb_comp inner join carelli.dbo.mtb_aart on mtb_comp.cod_mart = mtb_aart.cod_mart and mtb_aart.articolo_composto = 's'\n" +
|
||||
"union all \n" +
|
||||
"SELECt cod_mart, cod_mart as cod_mart_griglia from carelli.dbo.mtb_aart where articolo_composto = 'N'\n" +
|
||||
" ) art on ordini.cod_mart = art.cod_mart\n" +
|
||||
"inner join mtb_aart on ordini.cod_mart = mtb_aart.cod_mart\n" +
|
||||
"inner join jrl_fasi_mtb_grup on jrl_fasi_mtb_grup.cod_mgrp = mtb_aart.cod_mgrp\n" +
|
||||
"where jrl_fasi_mtb_grup.cod_jfas = @codJfas AND\n" +
|
||||
"part_iva in (select value_string from dbo.ParseStringIntoArray((select dbo.getGestSetup('PVM', 'RILEVAZIONI_STEUP', 'ELENCO_FORN_INEVASI')), '|'))");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,379 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241009122649 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
|
||||
createOrUpdateTrigger("t_UpdProgMagaInsT", "CREATE TRIGGER [dbo].[t_UpdProgMagaInsT]\n" +
|
||||
" ON [dbo].[dtb_ordt]\n" +
|
||||
" FOR INSERT\n" +
|
||||
" AS\n" +
|
||||
" DECLARE\n" +
|
||||
" @ls_codMart VARCHAR(15),\n" +
|
||||
" @ls_codComp VARCHAR(15),\n" +
|
||||
" @ls_buffer VARCHAR(15),\n" +
|
||||
" @ls_codTagl VARCHAR(15),\n" +
|
||||
" @ls_codMdep VARCHAR(5),\n" +
|
||||
" @ls_codCol VARCHAR(5),\n" +
|
||||
" @ls_partitaMag VARCHAR(20),\n" +
|
||||
" @ls_annotazioni VARCHAR(255),\n" +
|
||||
" @ls_concatena VARCHAR(50),\n" +
|
||||
" @ls_flagEvaso VARCHAR(1),\n" +
|
||||
" @ls_flagAnnulla VARCHAR(1),\n" +
|
||||
" @ls_gestione VARCHAR(1),\n" +
|
||||
" @ls_articoloComposto VARCHAR(1),\n" +
|
||||
" @ls_codProd VARCHAR(15),\n" +
|
||||
" @ls_flagEvasoProd VARCHAR(1),\n" +
|
||||
" @ls_codJcom VARCHAR(10),\n" +
|
||||
" @ls_gestioneRif VARCHAR(1),\n" +
|
||||
" @ls_descrizioneProd VARCHAR(40),\n" +
|
||||
" @ls_descrEstesaProd VARCHAR(255),\n" +
|
||||
" @ls_untMisProd VARCHAR(3),\n" +
|
||||
" @ls_flagEvasoForzato VARCHAR(1),\n" +
|
||||
" @ls_codAliq VARCHAR(5),\n" +
|
||||
" @lc_qtaConf DECIMAL(15, 5),\n" +
|
||||
" @lc_qtaAcc DECIMAL(15, 5),\n" +
|
||||
" @lc_qtaCol DECIMAL(15, 5),\n" +
|
||||
" @lc_qtaOrd DECIMAL(15, 5),\n" +
|
||||
" @lc_qtaEvasa DECIMAL(15, 5),\n" +
|
||||
" @lc_qtaAccComp DECIMAL(15, 5),\n" +
|
||||
" @lc_qtaColComp DECIMAL(15, 5),\n" +
|
||||
" @lc_qtaOrdComp DECIMAL(15, 5),\n" +
|
||||
" @lc_qtaEvasaComp DECIMAL(15, 5),\n" +
|
||||
" @lc_rapConv DECIMAL(15, 5),\n" +
|
||||
" @lc_qtaOrdFor DECIMAL(15, 5),\n" +
|
||||
" @lc_qtaImpLav DECIMAL(15, 5),\n" +
|
||||
" @lc_qtaImpCli DECIMAL(15, 5),\n" +
|
||||
" @lc_qtaStd DECIMAL(15, 5),\n" +
|
||||
" @lc_percPrezzo DECIMAL(15, 3),\n" +
|
||||
" @lc_sconto1 DECIMAL(15, 5),\n" +
|
||||
" @lc_sconto2 DECIMAL(15, 5),\n" +
|
||||
" @lc_sconto3 DECIMAL(15, 5),\n" +
|
||||
" @lc_sconto4 DECIMAL(15, 5),\n" +
|
||||
" @lc_totImponib DECIMAL(20, 5),\n" +
|
||||
" @lc_qtaProd DECIMAL(15, 5),\n" +
|
||||
" @lc_qtaEvasaProd DECIMAL(15, 5),\n" +
|
||||
" @lc_valUnt DECIMAL(20, 5),\n" +
|
||||
" @lc_cambioOrdAcq DECIMAL(20, 5),\n" +
|
||||
" @lc_cambio DECIMAL(20, 5),\n" +
|
||||
" @lc_rapConvProd DECIMAL(15, 5),\n" +
|
||||
" @ll_numOrd INTEGER,\n" +
|
||||
" @ll_rigaOrd INTEGER,\n" +
|
||||
" @ll_rigaOrdRif INTEGER,\n" +
|
||||
" @ll_numOrdRif INTEGER,\n" +
|
||||
" @ll_cifreDecAcq INTEGER,\n" +
|
||||
" @ldt_dataOrdRif DATETIME,\n" +
|
||||
" @ldt_dataConsProd DATETIME,\n" +
|
||||
" @ldt_dataOrd DATETIME,\n" +
|
||||
" @ll_numFase INTEGER,\n" +
|
||||
" @ll_totFasi INTEGER,\n" +
|
||||
" @ls_codTcolUl VARCHAR(5),\n" +
|
||||
" @lc_colliPedana DECIMAL(20, 5),\n" +
|
||||
" @ls_errorMsg VARCHAR(255),\n" +
|
||||
" @ls_codTcolUi VARCHAR(5),\n" +
|
||||
" @li_posRiga INTEGER,\n" +
|
||||
" @numCnf NUMERIC(20, 5),\n" +
|
||||
" @flagQtaCnfFissa VARCHAR(1),\n" +
|
||||
" @qtaOrd2 NUMERIC(20, 5),\n" +
|
||||
" @qtaOrd3 NUMERIC(20, 5),\n" +
|
||||
" @rapconv2 NUMERIC(20, 5),\n" +
|
||||
" @rapconv3 NUMERIC(20, 5),\n" +
|
||||
" @untOrd2 VARCHAR(3),\n" +
|
||||
" @untOrd3 VARCHAR(3),\n" +
|
||||
" @untOrd VARCHAR(3),\n" +
|
||||
" @insertOrdProd bit\n" +
|
||||
"\n" +
|
||||
" /* Necessaria per connessione OLEDB */\n" +
|
||||
" SET NOCOUNT ON\n" +
|
||||
"\n" +
|
||||
" select @insertOrdProd = CAST(IIF(dbo.getGestSetupWithDefault('DTB_ORDT','SETUP','DISABLE_TRIGGER_ORDL', 'N')='N',1,0) AS bit) \n" +
|
||||
"\n" +
|
||||
"/* Inserimento riga ordine di produzione */\n" +
|
||||
" DECLARE\n" +
|
||||
" csr_ordt_insert CURSOR FOR\n" +
|
||||
" SELECT inserted.gestione,\n" +
|
||||
" inserted.data_ord,\n" +
|
||||
" inserted.num_ord,\n" +
|
||||
" inserted.riga_ord_rif,\n" +
|
||||
" inserted.cod_prod,\n" +
|
||||
" dtb_ordt.flag_evaso_prod, /* legge il valore corretto di flag_evaso_prod*/\n" +
|
||||
" inserted.flag_annulla,\n" +
|
||||
" inserted.sconto1,\n" +
|
||||
" inserted.sconto2,\n" +
|
||||
" inserted.sconto3,\n" +
|
||||
" inserted.sconto4,\n" +
|
||||
" inserted.tot_imponib - inserted.tot_merce,\n" +
|
||||
" inserted.qta_prod,\n" +
|
||||
" inserted.cod_jcom,\n" +
|
||||
" inserted.gestione_rif,\n" +
|
||||
" inserted.data_ord_rif,\n" +
|
||||
" inserted.num_ord_rif,\n" +
|
||||
" inserted.qta_evasa_prod,\n" +
|
||||
" inserted.rap_conv_prod,\n" +
|
||||
" inserted.data_cons_prod,\n" +
|
||||
" inserted.descrizione_prod,\n" +
|
||||
" inserted.descr_estesa_prod,\n" +
|
||||
" inserted.unt_mis_prod,\n" +
|
||||
" inserted.flag_evaso_forzato,\n" +
|
||||
" gtb_divi.cambio,\n" +
|
||||
" inserted.note,\n" +
|
||||
" inserted.partita_mag,\n" +
|
||||
" inserted.cod_mdep,\n" +
|
||||
" inserted.num_fase,\n" +
|
||||
" inserted.tot_fasi,\n" +
|
||||
" inserted.colli_pedana,\n" +
|
||||
" inserted.cod_tcol_ul,\n" +
|
||||
" inserted.cod_tcol_ui,\n" +
|
||||
" inserted.num_cnf_prod\n" +
|
||||
" FROM inserted,\n" +
|
||||
" gtb_divi,\n" +
|
||||
" dtb_ordt\n" +
|
||||
" WHERE inserted.cod_divi = gtb_divi.cod_divi\n" +
|
||||
" AND (dtb_ordt.gestione = inserted.gestione)\n" +
|
||||
" AND (dtb_ordt.data_ord = inserted.data_ord)\n" +
|
||||
" AND (dtb_ordt.num_ord = inserted.num_ord)\n" +
|
||||
" OPEN csr_ordt_insert\n" +
|
||||
" FETCH NEXT FROM csr_ordt_insert INTO @ls_gestione, @ldt_dataOrd, @ll_numOrd, @ll_rigaOrdRif,@ls_codProd, @ls_flagEvasoProd,\n" +
|
||||
" @ls_flagAnnulla, @lc_sconto1, @lc_sconto2, @lc_sconto3, @lc_sconto4, @lc_totImponib,\n" +
|
||||
" @lc_qtaProd, @ls_codJcom, @ls_gestioneRif, @ldt_dataOrdRif, @ll_numOrdRif,\n" +
|
||||
" @lc_qtaEvasaProd, @lc_rapConvProd, @ldt_dataconsProd, @ls_descrizioneProd,\n" +
|
||||
" @ls_descrEstesaProd, @ls_untMisProd, @ls_flagEvasoForzato, @lc_cambio, @ls_annotazioni,\n" +
|
||||
" @ls_partitaMag,@ls_codMdep, @ll_numFase, @ll_totFasi,@lc_colliPedana ,@ls_codTcolUl, @ls_codTcolui, @numCnf;\n" +
|
||||
" WHILE @@FETCH_STATUS = 0 BEGIN\n" +
|
||||
" /*\n" +
|
||||
" */\n" +
|
||||
" IF @ls_gestione = 'L' AND @ls_gestioneRif = 'A' AND @ll_rigaOrdRif IS NOT NULL AND @ll_numFase = @ll_totFasi and @insertOrdProd = 1\n" +
|
||||
" BEGIN\n" +
|
||||
" /* SELECT @ls_errorMsg = \"cod_mart = \" + @ls_codProd + \" GESTIONE = \" + @ls_gestione + \" DATA = \" + CONVERT(varchar, @ldt_dataOrd, 111) + \" NUM. = \" + CONVERT(varchar, @ll_numOrd) + \" COLLI_PED = \" +CONVERT(varchar,@lc_colliPedana) + \" TIPO_PED \" + @ls_codTcolUL\n" +
|
||||
" RAISERROR (@ls_errorMsg, 16, 1)*/\n" +
|
||||
"\n" +
|
||||
" SELECT @ls_codAliq = cod_aliq,\n" +
|
||||
" @lc_qtaConf = qta_cnf / @lc_rapConvProd ,\n" +
|
||||
" @flagQtaCnfFissa = flag_qta_cnf_fissa,\n" +
|
||||
" @untOrd = mtb_aart.unt_mis,\n" +
|
||||
" @untOrd2 = mtb_aart.unt_mis2,\n" +
|
||||
" @untOrd3 = mtb_aart.unt_mis3,\n" +
|
||||
" @rapConv2 = mtb_aart.rap_conv2,\n" +
|
||||
" @rapConv3 = mtb_aart.rap_conv3\n" +
|
||||
" FROM mtb_aart\n" +
|
||||
" WHERE cod_mart = @ls_codProd\n" +
|
||||
"\n" +
|
||||
" IF @ls_untMisProd = @untOrd\n" +
|
||||
" BEGIN\n" +
|
||||
" SELECT @untOrd2 = @untOrd2\n" +
|
||||
" IF @untOrd2 IS NOT NULL AND @rapconv2 <> 0\n" +
|
||||
" SELECT @qtaOrd2 = ROUND(@lc_qtaProd / @rapconv2, 5)\n" +
|
||||
"\n" +
|
||||
" SELECT @untOrd3 = @untOrd3\n" +
|
||||
" IF @untOrd3 IS NOT NULL AND @rapconv3 <> 0\n" +
|
||||
" SELECT @qtaOrd3 = ROUND(@lc_qtaProd / @rapconv3, 5)\n" +
|
||||
" END\n" +
|
||||
" ELSE\n" +
|
||||
" IF @ls_untMisProd = @untOrd2\n" +
|
||||
" BEGIN\n" +
|
||||
" SELECT @untOrd2 = @untOrd\n" +
|
||||
" SELECT @qtaOrd2 = ROUND(@lc_qtaProd * @lc_rapConvProd, 5)\n" +
|
||||
"\n" +
|
||||
" SELECT @untOrd3 = @untOrd3\n" +
|
||||
" IF @untOrd3 IS NOT NULL AND @rapconv3 <> 0\n" +
|
||||
" SELECT @qtaOrd3 = ROUND(@lc_qtaProd * @lc_rapConvProd / @rapconv3, 5)\n" +
|
||||
" END\n" +
|
||||
" ELSE\n" +
|
||||
" IF @ls_untMisProd = @untOrd3\n" +
|
||||
" BEGIN\n" +
|
||||
" SELECT @untOrd3 = @untOrd\n" +
|
||||
" SELECT @qtaOrd3 = ROUND(@lc_qtaProd * @lc_rapConvProd, 5)\n" +
|
||||
"\n" +
|
||||
" IF @untOrd2 IS NOT NULL AND @rapconv2 <> 0\n" +
|
||||
" SELECT @qtaOrd2 = ROUND(@lc_qtaProd * @lc_rapConvProd / @rapconv2, 5)\n" +
|
||||
" END\n" +
|
||||
"\n" +
|
||||
"\n" +
|
||||
" SELECT @lc_cambioOrdAcq = gtb_divi.cambio,\n" +
|
||||
" @ll_cifreDecAcq = gtb_divi.cifre_dec\n" +
|
||||
" FROM dtb_ordt,\n" +
|
||||
" gtb_divi\n" +
|
||||
" WHERE dtb_ordt.cod_divi = gtb_divi.cod_divi\n" +
|
||||
" AND dtb_ordt.gestione = @ls_gestioneRif\n" +
|
||||
" AND dtb_ordt.data_ord = @ldt_dataOrdRif\n" +
|
||||
" AND dtb_ordt.num_ord = @ll_numOrdRif\n" +
|
||||
"\n" +
|
||||
" /*SELECT @lc_valUnt = round(@lc_totImponib / @lc_qtaProd / @lc_cambio * @lc_cambioOrdAcq, @ll_cifreDecAcq)*/\n" +
|
||||
" SELECT @lc_valUnt = @lc_totImponib / @lc_qtaProd / @lc_cambio * @lc_cambioOrdAcq\n" +
|
||||
" IF @lc_valUnt IS NULL SELECT @lc_valUnt = 0\n" +
|
||||
" IF @ls_flagAnnulla <> 'N' SELECT @ls_flagEvasoProd = 'A'\n" +
|
||||
"\n" +
|
||||
" SELECT @li_posRiga = ISNULL(MAX(pos_riga), 0) + 1\n" +
|
||||
" FROM dtb_ordr\n" +
|
||||
" WHERE dtb_ordr.gestione = @ls_gestioneRif\n" +
|
||||
" AND dtb_ordr.data_ord = @ldt_dataOrdRif\n" +
|
||||
" AND dtb_ordr.num_ord = @ll_numOrdRif\n" +
|
||||
"\n" +
|
||||
" IF @numCnf IS NULL\n" +
|
||||
" BEGIN\n" +
|
||||
" SELECT @numCnf = CASE\n" +
|
||||
" WHEN @lc_qtaConf <> 0 THEN CASE\n" +
|
||||
" WHEN @flagQtaCnfFissa = 'N'\n" +
|
||||
" THEN ROUND(@lc_qtaProd / @lc_qtaConf, 0)\n" +
|
||||
" ELSE ROUND(@lc_qtaProd / @lc_qtaConf, 5) END\n" +
|
||||
" ELSE 0 END\n" +
|
||||
" END\n" +
|
||||
" --SELECT @numCnf = case when @lc_qtaConf <> 0 then round(@lc_qtaProd / @lc_qtaConf, 0, 1) else 0 end \n" +
|
||||
"\n" +
|
||||
" \n" +
|
||||
"\n" +
|
||||
" declare @numCnfEvasa numeric(20,5)\n" +
|
||||
" \n" +
|
||||
" SELECT @numCnfEvasa = CASE\n" +
|
||||
" WHEN @lc_qtaConf <> 0 THEN CASE\n" +
|
||||
" WHEN @flagQtaCnfFissa = 'N'\n" +
|
||||
" THEN ROUND(@lc_qtaEvasaProd / @lc_qtaConf, 0)\n" +
|
||||
" ELSE ROUND(@lc_qtaEvasaProd / @lc_qtaConf, 5) END\n" +
|
||||
" ELSE 0 END\n" +
|
||||
" \n" +
|
||||
"\n" +
|
||||
" INSERT INTO dtb_ordr (gestione,\n" +
|
||||
" data_ord,\n" +
|
||||
" num_ord,\n" +
|
||||
" riga_ord,\n" +
|
||||
" flag_evaso,\n" +
|
||||
" data_cons,\n" +
|
||||
" cod_mart,\n" +
|
||||
" descrizione,\n" +
|
||||
" unt_ord,\n" +
|
||||
" rap_conv,\n" +
|
||||
" qta_ord,\n" +
|
||||
" unt_ord2,\n" +
|
||||
" qta_ord2,\n" +
|
||||
" unt_ord3,\n" +
|
||||
" qta_ord3,\n" +
|
||||
" qta_evasa,\n" +
|
||||
" val_unt,\n" +
|
||||
" sconto5,\n" +
|
||||
" sconto6,\n" +
|
||||
" sconto7,\n" +
|
||||
" sconto8,\n" +
|
||||
" cod_aliq,\n" +
|
||||
" importo_riga,\n" +
|
||||
" descrizione_estesa,\n" +
|
||||
" cod_jcom,\n" +
|
||||
" pos_riga,\n" +
|
||||
" flag_evaso_forzato,\n" +
|
||||
" perc_prov,\n" +
|
||||
" val_prov,\n" +
|
||||
" perc_ispe,\n" +
|
||||
" val_ispe,\n" +
|
||||
" perc_promo,\n" +
|
||||
" val_promo,\n" +
|
||||
" perc_oneri,\n" +
|
||||
" val_oneri,\n" +
|
||||
" qta_acc,\n" +
|
||||
" qta_col,\n" +
|
||||
" perc_gest,\n" +
|
||||
" val_gest,\n" +
|
||||
" qta_cnf,\n" +
|
||||
" note,\n" +
|
||||
" partita_mag,\n" +
|
||||
" cod_mdep,\n" +
|
||||
" colli_pedana,\n" +
|
||||
" cod_tcol_ul,\n" +
|
||||
" cod_tcol_ui,\n" +
|
||||
" num_cnf,\n" +
|
||||
" id_art,\n" +
|
||||
" num_cnf_evasa)\n" +
|
||||
" VALUES (@ls_gestioneRif,\n" +
|
||||
" @ldt_dataOrdRif,\n" +
|
||||
" @ll_numOrdRif,\n" +
|
||||
" @ll_rigaOrdRif,\n" +
|
||||
" @ls_flagEvasoProd,\n" +
|
||||
" @ldt_dataConsProd,\n" +
|
||||
" @ls_codProd,\n" +
|
||||
" @ls_descrizioneProd,\n" +
|
||||
" @ls_untMisProd,\n" +
|
||||
" @lc_rapConvProd,\n" +
|
||||
" @lc_qtaProd,\n" +
|
||||
" @untOrd2,\n" +
|
||||
" @qtaOrd2,\n" +
|
||||
" @untOrd3,\n" +
|
||||
" @qtaOrd3,\n" +
|
||||
" @lc_qtaEvasaProd,\n" +
|
||||
" @lc_valUnt,\n" +
|
||||
" @lc_sconto1,\n" +
|
||||
" @lc_sconto2,\n" +
|
||||
" @lc_sconto3,\n" +
|
||||
" @lc_sconto4,\n" +
|
||||
" @ls_codAliq,\n" +
|
||||
" @lc_totImponib,\n" +
|
||||
" @ls_descrEstesaProd,\n" +
|
||||
" @ls_codJcom,\n" +
|
||||
" @li_posRiga,\n" +
|
||||
" @ls_flagEvasoForzato,\n" +
|
||||
" 0,\n" +
|
||||
" 0,\n" +
|
||||
" 0,\n" +
|
||||
" 0,\n" +
|
||||
" 0,\n" +
|
||||
" 0,\n" +
|
||||
" 0,\n" +
|
||||
" 0,\n" +
|
||||
" 0,\n" +
|
||||
" 0,\n" +
|
||||
" 0,\n" +
|
||||
" 0,\n" +
|
||||
" @lc_qtaConf,\n" +
|
||||
" @ls_annotazioni,\n" +
|
||||
" @ls_partitaMag,\n" +
|
||||
" @ls_codMdep,\n" +
|
||||
" @lc_colliPedana,\n" +
|
||||
" @ls_codTcolUl,\n" +
|
||||
" @ls_codTcolUi,\n" +
|
||||
" @numCnf,\n" +
|
||||
" @li_posRiga,\n" +
|
||||
" @numCnfEvasa)\n" +
|
||||
"\n" +
|
||||
" IF @@ERROR <> 0 RETURN\n" +
|
||||
" END\n" +
|
||||
" FETCH NEXT FROM csr_ordt_insert INTO @ls_gestione, @ldt_dataOrd, @ll_numOrd, @ll_rigaOrdRif,@ls_codProd, @ls_flagEvasoProd,\n" +
|
||||
" @ls_flagAnnulla, @lc_sconto1, @lc_sconto2, @lc_sconto3, @lc_sconto4, @lc_totImponib,\n" +
|
||||
" @lc_qtaProd, @ls_codJcom, @ls_gestioneRif, @ldt_dataOrdRif, @ll_numOrdRif,\n" +
|
||||
" @lc_qtaEvasaProd, @lc_rapConvProd, @ldt_dataconsProd, @ls_descrizioneProd,\n" +
|
||||
" @ls_descrEstesaProd, @ls_untMisProd, @ls_flagEvasoForzato, @lc_cambio, @ls_annotazioni,\n" +
|
||||
" @ls_partitaMag,@ls_codMdep, @ll_numFase, @ll_totFasi,@lc_colliPedana ,@ls_codTcolUl, @ls_codTcolUi, @numCnf;\n" +
|
||||
" END\n" +
|
||||
" CLOSE csr_ordt_insert\n" +
|
||||
" DEALLOCATE csr_ordt_insert\n" +
|
||||
"\n" +
|
||||
"/* corregge il valore di flag_evaso_prod, in base alla regola:\n" +
|
||||
" le righe non annullate, in cui la quantità evasa è >= dell'ordinato > 0,\n" +
|
||||
" sono da considerare evase\n" +
|
||||
" Nota: le righe in cui ci sono valori nulli sui campi qta_evasa_prod, \n" +
|
||||
" qta_prod, flag_evaso_prod non sono prese in considerazione\n" +
|
||||
"*/\n" +
|
||||
" UPDATE dtb_ordt\n" +
|
||||
" SET flag_evaso_prod = 'E'\n" +
|
||||
" FROM dtb_ordt,\n" +
|
||||
" inserted\n" +
|
||||
" WHERE (dtb_ordt.gestione = inserted.gestione)\n" +
|
||||
" AND (dtb_ordt.data_ord = inserted.data_ord)\n" +
|
||||
" AND (dtb_ordt.num_ord = inserted.num_ord)\n" +
|
||||
" AND (dtb_ordt.flag_evaso_prod <> 'A')\n" +
|
||||
" AND (dtb_ordt.qta_evasa_prod >= dtb_ordt.qta_prod)\n" +
|
||||
" AND (dtb_ordt.qta_evasa_prod > 0) ;\n" +
|
||||
" IF @@ERROR <> 0 RETURN\n" +
|
||||
"/* Necessaria per connessione OLEDB */\n" +
|
||||
" SET NOCOUNT OFF");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,614 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241010103639 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
String value = null;
|
||||
|
||||
if (isCustomerDb(IntegryCustomerDB.Smetar_Smetar)) {
|
||||
value = "DDTContoLavorazione";
|
||||
}
|
||||
|
||||
createSetup("PVM", "MONITORAGGIO_ORDINI", "REPORT_DOCUMENTI", value,
|
||||
"Nome report per i documenti di scarico.", "REPORT_NAME");
|
||||
|
||||
if (isCustomer(IntegryCustomer.Gramm)) {
|
||||
return;
|
||||
}
|
||||
|
||||
createOrUpdateFunction("MES_GetWorkOrders",
|
||||
"CREATE FUNCTION [dbo].[MES_GetWorkOrders](@codJfas VARCHAR(50), @dateStart DATE, @dateEnd DATE, @flagEvaso VARCHAR(1),\n" +
|
||||
" @codAnag VARCHAR(5))\n" +
|
||||
" RETURNS @val TABLE\n" +
|
||||
" (\n" +
|
||||
" [sort] [int] NULL,\n" +
|
||||
" [cod_jcom] [varchar](10) NULL,\n" +
|
||||
" [data_ord_prod] [datetime] NULL,\n" +
|
||||
" [num_ord_prod] [int] NULL,\n" +
|
||||
" [riga_ord_prod] [int] NULL,\n" +
|
||||
" [flag_avviabile] [varchar](1) NULL,\n" +
|
||||
" [flag_tracciabilita] [varchar](1) NULL,\n" +
|
||||
" [unt_ord] [varchar](3) NULL,\n" +
|
||||
" [rap_conv] [numeric](20, 10) NULL,\n" +
|
||||
" [unt_ord2] [varchar](3) NULL,\n" +
|
||||
" [rap_conv2] [numeric](20, 5) NULL,\n" +
|
||||
" [unt_ord3] [varchar](3) NULL,\n" +
|
||||
" [rap_conv3] [numeric](20, 5) NULL,\n" +
|
||||
" [descrizione_prod] [varchar](255) NULL,\n" +
|
||||
" [num_pezzi] [numeric](38, 6) NULL,\n" +
|
||||
" [num_cnf] [numeric](20, 5) NULL,\n" +
|
||||
" [gg_scad_partita] [int] NULL,\n" +
|
||||
" [qta_cnf] [numeric](15, 5) NULL,\n" +
|
||||
" [colli_pedana] [numeric](20, 5) NULL,\n" +
|
||||
" [num_pedane] [numeric](38, 18) NULL,\n" +
|
||||
" [pos_riga] [int] NULL,\n" +
|
||||
" [flag_evaso_prod] [varchar](1) NULL,\n" +
|
||||
" [flag_evaso_forzato] [varchar](1) NOT NULL,\n" +
|
||||
" [flag_ordine_evaso] [varchar](1) NULL,\n" +
|
||||
" [gestione] [varchar](1) NOT NULL,\n" +
|
||||
" [data_ord] [datetime] NOT NULL,\n" +
|
||||
" [cod_tcol_UL] [varchar](5) NULL,\n" +
|
||||
" [descrizione_tcol] [varchar](40) NULL,\n" +
|
||||
" [cod_anag] [varchar](5) NOT NULL,\n" +
|
||||
" [rag_soc_anag] [varchar](40) NULL,\n" +
|
||||
" [part_iva] [varchar](20) NULL,\n" +
|
||||
" [rif_ord] [varchar](40) NULL,\n" +
|
||||
" [cod_vdes] [varchar](5) NULL,\n" +
|
||||
" [cod_mdep] [varchar](5) NOT NULL,\n" +
|
||||
" [cod_mdep_prod] [varchar](5) NOT NULL,\n" +
|
||||
" [num_ord] [int] NOT NULL,\n" +
|
||||
" [cod_jfas] [varchar](5) NOT NULL,\n" +
|
||||
" [cod_jfas_lav] [varchar](5) NOT NULL,\n" +
|
||||
" [partita_mag] [varchar](20) NULL,\n" +
|
||||
" [note_lav] [varchar](255) NULL,\n" +
|
||||
" [data_scad] [datetime] NULL,\n" +
|
||||
" [cod_prod] [varchar](15) NULL,\n" +
|
||||
" [descrizione_commessa] [varchar](40) NULL,\n" +
|
||||
" [data_iniz_prod] [datetime] NULL,\n" +
|
||||
" [max_step] [int] NULL,\n" +
|
||||
" [unt_mis_prod] [varchar](5) NULL,\n" +
|
||||
" [qta_batch_prod] [numeric](15, 5) NULL,\n" +
|
||||
" [rap_conv_prod] [numeric](20, 10) NULL,\n" +
|
||||
" [data_iniz] [datetime] NULL,\n" +
|
||||
" [data_fine] [datetime] NULL,\n" +
|
||||
" [qta_prod] [decimal](20, 5) NULL,\n" +
|
||||
" [qta_lav] [decimal](20, 5) NULL,\n" +
|
||||
" [max_fase] [int] NULL,\n" +
|
||||
" [num_fase] [int] NULL,\n" +
|
||||
" [hr_num] [int] NOT NULL,\n" +
|
||||
" [descrizione_attivita] [varchar](1024) NULL,\n" +
|
||||
" [prod_std] [numeric](38, 21) NULL,\n" +
|
||||
" [elapsed_time] [int] NULL,\n" +
|
||||
" [qta_trasferite] [numeric](38, 5) NULL,\n" +
|
||||
" [udc_trasferiti] [int] NULL,\n" +
|
||||
" [stato] [varchar](11) NOT NULL,\n" +
|
||||
" [pz_trasferiti] [int] NULL,\n" +
|
||||
" [run_time_sec] [numeric](38, 6) NULL,\n" +
|
||||
" [cumulative_run_time_sec] [numeric](38, 6) NULL,\n" +
|
||||
" [run_time_hour] [int] NULL,\n" +
|
||||
" [run_time_min] [numeric](38, 6) NULL,\n" +
|
||||
" [run_time_end] [datetime] NULL,\n" +
|
||||
" [id_lotto] [int] NULL,\n" +
|
||||
" [data_lotto] [datetime] NULL,\n" +
|
||||
" [peso_kg] [numeric](20, 5) NULL,\n" +
|
||||
" [data_cons_prod_max] [datetime] NULL\n" +
|
||||
" ) AS\n" +
|
||||
"BEGIN\n" +
|
||||
"\n" +
|
||||
" -- DECLARE @codJfas VARCHAR(5) = 'L1'\n" +
|
||||
"-- DECLARE @dateStart DATE = DATEADD(MONTH, -1, GETDATE())\n" +
|
||||
"-- DECLARE @dateEnd DATE = DATEADD(MONTH, 1, GETDATE())\n" +
|
||||
"-- DECLARE @flagEvaso VARCHAR(1) = 'I'\n" +
|
||||
"-- DECLARE @codAnag VARCHAR(5) = null;\n" +
|
||||
"\n" +
|
||||
" SET @dateStart = ISNULL(@dateStart, DATEADD(DAY, -14, GETDATE()));\n" +
|
||||
" SET @dateEND = ISNULL(@dateEnd, GETDATE());\n" +
|
||||
" SET @flagEvaso = ISNULL(@flagEvaso, 'I');\n" +
|
||||
"\n" +
|
||||
"--Funzione per calcolare la sequenza di ordini su una linea e il RunTimeEND\n" +
|
||||
" WITH setup AS (SELECT @dateStart AS date_start,\n" +
|
||||
" @dateEnd AS date_end,\n" +
|
||||
" @flagEvaso AS flag_evaso,\n" +
|
||||
" @codJfas AS cod_jfas,\n" +
|
||||
" @codAnag AS cod_anag),\n" +
|
||||
" setup_jfas AS (SELECT value_string AS cod_jfas\n" +
|
||||
" FROM dbo.ParseStringIntoArray(@codJfas, '|')),\n" +
|
||||
" setup_depo AS (SELECT cod_mdep, value AS flag_carico_scarico_immediato\n" +
|
||||
" FROM stb_gest_setup_depo\n" +
|
||||
" WHERE gest_name = 'CARICO_SCARICO_PF'\n" +
|
||||
" AND section = 'SETUP'\n" +
|
||||
" AND key_section = 'GENERA_CARICO_SCARICO_IMMEDIATO'),\n" +
|
||||
" mtb_colr_sum AS (SELECT mtb_colr.gestione,\n" +
|
||||
" mtb_colr.data_collo,\n" +
|
||||
" mtb_colr.num_collo,\n" +
|
||||
" mtb_colr.cod_mart,\n" +
|
||||
" mtb_colr.data_ord,\n" +
|
||||
" mtb_colr.num_ord,\n" +
|
||||
" SUM(mtb_colr.qta_col) AS qta_col,\n" +
|
||||
" SUM(mtb_colr.num_cnf) AS num_cnf\n" +
|
||||
" FROM mtb_colr\n" +
|
||||
" WHERE mtb_colr.gestione_rif IS NULL\n" +
|
||||
" AND mtb_colr.data_collo_rif IS NULL\n" +
|
||||
" AND mtb_colr.ser_collo_rif IS NULL\n" +
|
||||
" AND mtb_colr.num_collo_rif IS NULL\n" +
|
||||
" AND EXISTS(SELECT *\n" +
|
||||
" FROM mtb_colt\n" +
|
||||
" WHERE mtb_colr.gestione = mtb_colt.gestione\n" +
|
||||
" AND mtb_colr.data_collo = mtb_colt.data_collo\n" +
|
||||
" AND mtb_colr.ser_collo = mtb_colt.ser_collo\n" +
|
||||
" AND mtb_colr.num_collo = mtb_colt.num_collo\n" +
|
||||
" AND mtb_colt.segno = 1)\n" +
|
||||
" GROUP BY mtb_colr.gestione,\n" +
|
||||
" mtb_colr.data_collo,\n" +
|
||||
" mtb_colr.num_collo,\n" +
|
||||
" mtb_colr.cod_mart,\n" +
|
||||
" mtb_colr.data_ord,\n" +
|
||||
" mtb_colr.num_ord),\n" +
|
||||
" in_production_machines AS (SELECT DISTINCT dtb_ord_macc.gestione,\n" +
|
||||
" dtb_ord_macc.data_ord,\n" +
|
||||
" dtb_ord_macc.num_ord,\n" +
|
||||
" MAX(dtb_ord_macc.data_mov) AS max_data_mov\n" +
|
||||
" FROM dtb_ord_macc\n" +
|
||||
" INNER JOIN (SELECT gestione, data_ord, num_ord, cod_cmac, MAX(data_mov) AS data_mov\n" +
|
||||
" FROM dtb_ord_macc\n" +
|
||||
" GROUP BY gestione, data_ord, num_ord, cod_cmac) last_event\n" +
|
||||
" ON dtb_ord_macc.data_ord = last_event.data_ord AND\n" +
|
||||
" dtb_ord_macc.num_ord = last_event.num_ord AND\n" +
|
||||
" dtb_ord_macc.gestione = last_event.gestione AND\n" +
|
||||
" dtb_ord_macc.cod_cmac = last_event.cod_cmac AND\n" +
|
||||
" dtb_ord_macc.data_mov = last_event.data_mov\n" +
|
||||
" INNER JOIN (SELECT evento, IIF(tipologia = 'ENTRATA', 1, -1) AS value\n" +
|
||||
" FROM dtb_ord_macc_eventi) dtb_ord_macc_eventi\n" +
|
||||
" ON dtb_ord_macc.evento = dtb_ord_macc_eventi.evento\n" +
|
||||
" WHERE value = 1\n" +
|
||||
" GROUP BY dtb_ord_macc.num_ord, dtb_ord_macc.data_ord, dtb_ord_macc.gestione),\n" +
|
||||
" dtb_ord_max_step AS (SELECT gestione,\n" +
|
||||
" data_ord,\n" +
|
||||
" num_ord,\n" +
|
||||
" MAX(id_step) AS max_step,\n" +
|
||||
" num_fase,\n" +
|
||||
" MAX(num_fase) OVER (PARTITION BY gestione,\n" +
|
||||
" data_ord,\n" +
|
||||
" num_ord) AS max_fase,\n" +
|
||||
" dtb_ord_steps.cod_jfas,\n" +
|
||||
" SUM(DATEDIFF(S, data_iniz, ISNULL(data_fine, GETDATE()))) AS elapsed_time\n" +
|
||||
" FROM dtb_ord_steps\n" +
|
||||
" CROSS APPLY setup\n" +
|
||||
" WHERE data_ord BETWEEN setup.date_start AND setup.date_end\n" +
|
||||
" GROUP BY gestione,\n" +
|
||||
" data_ord,\n" +
|
||||
" num_ord,\n" +
|
||||
" num_fase,\n" +
|
||||
" dtb_ord_steps.cod_jfas),\n" +
|
||||
" dtb_ordr_prod_with_art AS (SELECT dtb_ordr.data_ord AS data_ord_prod,\n" +
|
||||
" dtb_ordr.num_ord AS num_ord_prod,\n" +
|
||||
" dtb_ordr.riga_ord AS riga_ord_prod,\n" +
|
||||
" dtb_ordr.gestione AS gestione_ord_prod,\n" +
|
||||
" IIF(CONVERT(DATE, dtb_ordr.data_ord) >= CONVERT(DATE, GETDATE()), 'S',\n" +
|
||||
" 'N') AS flag_avviabile,\n" +
|
||||
" mtb_aart_prod.flag_tracciabilita,\n" +
|
||||
" dtb_ordr.unt_ord,\n" +
|
||||
" dtb_ordr.rap_conv,\n" +
|
||||
" dtb_ordr.unt_ord2,\n" +
|
||||
" CAST(ROUND(dtb_ordr.qta_ord2 / ISNULL(NULLIF(dtb_ordr.qta_ord, 0), 1),\n" +
|
||||
" 5) AS NUMERIC(20, 5)) AS rap_conv2,\n" +
|
||||
" dtb_ordr.unt_ord3,\n" +
|
||||
" CAST(ROUND(dtb_ordr.qta_ord3 / ISNULL(NULLIF(dtb_ordr.qta_ord, 0), 1),\n" +
|
||||
" 5) AS NUMERIC(20, 5)) AS rap_conv3,\n" +
|
||||
" dtb_ordr.qta_ord,\n" +
|
||||
" dtb_ordr.qta_ord2,\n" +
|
||||
" dtb_ordr.qta_ord3,\n" +
|
||||
" dtb_ordr.num_cnf,\n" +
|
||||
" IIF(mtb_aart_prod.unt_mis IN ('PZ', 'NR'), mtb_aart_prod.qta_cnf,\n" +
|
||||
" IIF(mtb_aart_prod.unt_mis2 IN ('PZ', 'NR'), mtb_aart_prod.qta_cnf /\n" +
|
||||
" ISNULL(NULLIF(mtb_aart_prod.rap_conv2, 0), 1),\n" +
|
||||
" mtb_aart_prod.qta_cnf)) AS cal_qta_cnf,\n" +
|
||||
"\n" +
|
||||
" IIF(dtb_ordr.colli_pedana = 0 OR dtb_ordr.colli_pedana = 1,\n" +
|
||||
" IIF(mtb_aart_prod.colli_pedana = 0, 1, mtb_aart_prod.colli_pedana),\n" +
|
||||
" dtb_ordr.colli_pedana)\n" +
|
||||
" AS colli_pedana,\n" +
|
||||
" dtb_ordr.pos_riga,\n" +
|
||||
" dtb_ordt.cod_mdep,\n" +
|
||||
" IIF(mtb_aart_prod.unt_mis IN ('PZ', 'NR'), 1,\n" +
|
||||
" IIF(mtb_aart_prod.unt_mis2 IN ('PZ', 'NR') AND\n" +
|
||||
" NULLIF(mtb_aart_prod.rap_conv2, 0) IS NOT NULL,\n" +
|
||||
" mtb_aart_prod.rap_conv2,\n" +
|
||||
" 1)) AS calc_rap_conv,\n" +
|
||||
" mtb_aart_prod.gg_scad_partita,\n" +
|
||||
" mtb_aart_prod.qta_cnf\n" +
|
||||
" FROM dtb_ordr\n" +
|
||||
" INNER JOIN dtb_ordt ON dtb_ordr.gestione = dtb_ordt.gestione AND\n" +
|
||||
" dtb_ordr.data_ord = dtb_ordt.data_ord AND\n" +
|
||||
" dtb_ordr.num_ord = dtb_ordt.num_ord\n" +
|
||||
" INNER JOIN mtb_aart mtb_aart_prod ON mtb_aart_prod.cod_mart = dtb_ordr.cod_mart),\n" +
|
||||
" ord_lav AS (SELECT dtb_ordt.cod_jcom,\n" +
|
||||
" dtb_ordr_prod_with_art.data_ord_prod,\n" +
|
||||
" dtb_ordr_prod_with_art.num_ord_prod,\n" +
|
||||
" dtb_ordr_prod_with_art.riga_ord_prod,\n" +
|
||||
" dtb_ordr_prod_with_art.flag_avviabile,\n" +
|
||||
" dtb_ordr_prod_with_art.flag_tracciabilita,\n" +
|
||||
" dtb_ordr_prod_with_art.unt_ord,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN mtb_partita_mag.partita_mag IS NULL THEN\n" +
|
||||
" dtb_ordr_prod_with_art.rap_conv\n" +
|
||||
" ELSE CASE\n" +
|
||||
" WHEN dtb_ordr_prod_with_art.unt_ord = mtb_aart.unt_mis THEN\n" +
|
||||
" dtb_ordr_prod_with_art.rap_conv\n" +
|
||||
" WHEN dtb_ordr_prod_with_art.unt_ord = mtb_aart.unt_mis2 THEN\n" +
|
||||
" IIF(mtb_partita_mag.rap_conv2 IS NULL OR mtb_partita_mag.rap_conv2 = 0,\n" +
|
||||
" dtb_ordr_prod_with_art.rap_conv2, mtb_partita_mag.rap_conv2)\n" +
|
||||
" WHEN dtb_ordr_prod_with_art.unt_ord = mtb_aart.unt_mis3 THEN\n" +
|
||||
" IIF(mtb_partita_mag.rap_conv3 IS NULL OR mtb_partita_mag.rap_conv3 = 0,\n" +
|
||||
" dtb_ordr_prod_with_art.rap_conv3, mtb_partita_mag.rap_conv3)\n" +
|
||||
" END\n" +
|
||||
" END\n" +
|
||||
" AS rap_conv,\n" +
|
||||
" dtb_ordr_prod_with_art.unt_ord2,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN mtb_partita_mag.partita_mag IS NULL THEN\n" +
|
||||
" dtb_ordr_prod_with_art.rap_conv2\n" +
|
||||
" ELSE CASE\n" +
|
||||
" WHEN dtb_ordr_prod_with_art.unt_ord2 = mtb_aart.unt_mis THEN\n" +
|
||||
" dtb_ordr_prod_with_art.rap_conv2\n" +
|
||||
" WHEN dtb_ordr_prod_with_art.unt_ord2 = mtb_aart.unt_mis2 THEN\n" +
|
||||
" IIF(mtb_partita_mag.rap_conv2 IS NULL OR mtb_partita_mag.rap_conv2 = 0,\n" +
|
||||
" dtb_ordr_prod_with_art.rap_conv2, mtb_partita_mag.rap_conv2)\n" +
|
||||
" WHEN dtb_ordr_prod_with_art.unt_ord2 = mtb_aart.unt_mis3 THEN\n" +
|
||||
" IIF(mtb_partita_mag.rap_conv3 IS NULL OR mtb_partita_mag.rap_conv3 = 0,\n" +
|
||||
" dtb_ordr_prod_with_art.rap_conv3, mtb_partita_mag.rap_conv3)\n" +
|
||||
" END\n" +
|
||||
" END\n" +
|
||||
" AS rap_conv2,\n" +
|
||||
" dtb_ordr_prod_with_art.unt_ord3,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN mtb_partita_mag.partita_mag IS NULL THEN\n" +
|
||||
" dtb_ordr_prod_with_art.rap_conv3\n" +
|
||||
" ELSE CASE\n" +
|
||||
" WHEN dtb_ordr_prod_with_art.unt_ord3 = mtb_aart.unt_mis THEN\n" +
|
||||
" dtb_ordr_prod_with_art.rap_conv3\n" +
|
||||
" WHEN dtb_ordr_prod_with_art.unt_ord3 = mtb_aart.unt_mis2 THEN\n" +
|
||||
" IIF(mtb_partita_mag.rap_conv2 IS NULL OR mtb_partita_mag.rap_conv2 = 0,\n" +
|
||||
" dtb_ordr_prod_with_art.rap_conv2, mtb_partita_mag.rap_conv2)\n" +
|
||||
" WHEN dtb_ordr_prod_with_art.unt_ord3 = mtb_aart.unt_mis3 THEN\n" +
|
||||
" IIF(mtb_partita_mag.rap_conv3 IS NULL OR mtb_partita_mag.rap_conv3 = 0,\n" +
|
||||
" dtb_ordr_prod_with_art.rap_conv3, mtb_partita_mag.rap_conv3)\n" +
|
||||
" END\n" +
|
||||
" END\n" +
|
||||
" AS rap_conv3,\n" +
|
||||
" ISNULL(dtb_ordt.descr_estesa_prod, dtb_ordt.descrizione_prod) AS descrizione_prod,\n" +
|
||||
" dtb_ordr_prod_with_art.num_cnf * dtb_ordr_prod_with_art.cal_qta_cnf AS num_pezzi,\n" +
|
||||
" dtb_ordr_prod_with_art.num_cnf,\n" +
|
||||
" dtb_ordr_prod_with_art.gg_scad_partita,\n" +
|
||||
" dtb_ordr_prod_with_art.qta_cnf,\n" +
|
||||
" dtb_ordr_prod_with_art.colli_pedana,\n" +
|
||||
" dtb_ordr_prod_with_art.num_cnf / dtb_ordr_prod_with_art.colli_pedana AS num_pedane,\n" +
|
||||
" dtb_ordr_prod_with_art.pos_riga,\n" +
|
||||
" dtb_ordt.flag_evaso_prod,\n" +
|
||||
" dtb_ordt.flag_evaso_forzato,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN (dtb_ordt.flag_evaso_prod = 'I' OR\n" +
|
||||
" (setupCaricoImmediato.flag_carico_scarico_immediato = 'S' AND\n" +
|
||||
" flag_evaso_prod = 'E'))\n" +
|
||||
" AND dtb_ordt.flag_evaso_forzato = 'N'\n" +
|
||||
" THEN 'I'\n" +
|
||||
" WHEN flag_evaso_prod <> 'I' AND dtb_ordt.flag_evaso_forzato = 'S'\n" +
|
||||
" THEN flag_evaso_prod\n" +
|
||||
" END AS flag_ordine_evaso,\n" +
|
||||
" dtb_ordt.gestione,\n" +
|
||||
" dtb_ordt.data_ord,\n" +
|
||||
" dtb_ordt.cod_tcol_UL,\n" +
|
||||
" mtb_tcol.descrizione AS descrizione_tcol,\n" +
|
||||
" dtb_ordt.cod_anag,\n" +
|
||||
" gtb_anag.rag_soc AS rag_soc_anag,\n" +
|
||||
" gtb_anag.part_iva,\n" +
|
||||
" dtb_ordt.rif_ord,\n" +
|
||||
" dtb_ordt.cod_vdes,\n" +
|
||||
" dtb_ordt.cod_mdep,\n" +
|
||||
" dtb_ordr_prod_with_art.cod_mdep AS cod_mdep_prod,\n" +
|
||||
" dtb_ordt.num_ord,\n" +
|
||||
" dtb_ord_steps.cod_jfas,\n" +
|
||||
" dtb_ordt.cod_jfas AS cod_jfas_lav,\n" +
|
||||
" mtb_partita_mag.partita_mag,\n" +
|
||||
" dtb_ordt.note AS note_lav,\n" +
|
||||
" mtb_partita_mag.data_scad,\n" +
|
||||
" dtb_ordt.cod_prod,\n" +
|
||||
" jtb_comt.descrizione AS descrizione_commessa,\n" +
|
||||
" dtb_ordt.data_iniz_prod,\n" +
|
||||
" q.max_step,\n" +
|
||||
" q.max_fase,\n" +
|
||||
" q.num_fase,\n" +
|
||||
" IIF(mtb_aart.flag_qta_cnf_fissa = 'S' AND\n" +
|
||||
" (mtb_aart.qta_cnf > 1 OR dtb_ordr_prod_with_art.colli_pedana > 1), 'Colli',\n" +
|
||||
" jtb_cicl.unt_mis_prod)\n" +
|
||||
" AS unt_mis_prod,\n" +
|
||||
" IIF(mtb_aart.flag_qta_cnf_fissa = 'S' AND\n" +
|
||||
" (mtb_aart.qta_cnf > 1 OR dtb_ordr_prod_with_art.colli_pedana > 1),\n" +
|
||||
" dtb_ordr_prod_with_art.colli_pedana, jtb_cicl.qta_prod)\n" +
|
||||
" AS qta_batch_prod,\n" +
|
||||
" IIF(mtb_aart.qta_cnf > 1 OR dtb_ordr_prod_with_art.colli_pedana > 1, mtb_aart.qta_cnf,\n" +
|
||||
" jtb_cicl.rap_conv_prod) AS rap_conv_prod,\n" +
|
||||
" dtb_ord_steps.data_iniz,\n" +
|
||||
" dtb_ord_steps.data_fine,\n" +
|
||||
" dtb_ord_steps.qta_lav AS qta_lav,\n" +
|
||||
" IIF(dtb_ord_steps.qta_prod <> 0, dtb_ord_steps.qta_prod,\n" +
|
||||
" dtb_ordt.qta_prod) AS qta_prod,\n" +
|
||||
" dtb_ord_steps.hr_num,\n" +
|
||||
" dtb_ord_steps.descrizione_attivita,\n" +
|
||||
" 3600 / (ISNULL(NULLIF(jtb_dist_clav_dir.duration, 0), 1) /\n" +
|
||||
" ISNULL(NULLIF(jtb_cicl.rap_conv_prod, 0), 1)) AS prod_std,\n" +
|
||||
" q.elapsed_time,\n" +
|
||||
" SUM(ISNULL(mtb_colr.qta_col, 0)) AS qta_trasferite,\n" +
|
||||
" COUNT(mtb_colr.num_collo) AS udc_trasferiti,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN (in_production_machines.max_data_mov IS NOT NULL AND (q.max_step = 0 OR\n" +
|
||||
" (q.max_step > 0 AND\n" +
|
||||
" dtb_ord_steps.data_fine IS NOT NULL AND\n" +
|
||||
" DATEDIFF(MINUTE,\n" +
|
||||
" dtb_ord_steps.data_fine,\n" +
|
||||
" in_production_machines.max_data_mov) >\n" +
|
||||
" 5)))\n" +
|
||||
" THEN 'IN AVVIO'\n" +
|
||||
" WHEN q.max_step = 0\n" +
|
||||
" THEN 'PROGRAMMATO'\n" +
|
||||
" WHEN data_fine IS NULL\n" +
|
||||
" THEN 'IN CORSO'\n" +
|
||||
" ELSE 'IN PAUSA'\n" +
|
||||
" END\n" +
|
||||
" AS stato,\n" +
|
||||
" CONVERT(INT, SUM(ISNULL(mtb_colr.qta_col / dtb_ordr_prod_with_art.calc_rap_conv, 0))) AS pz_trasferiti,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN (jtb_dist_clav_dir.duration / ISNULL(NULLIF(jtb_cicl.rap_conv_prod, 0), 1)) *\n" +
|
||||
" (dtb_ordt.qta_prod * dtb_ordt.rap_conv_prod -\n" +
|
||||
" SUM(ISNULL(mtb_colr.qta_col, 0))) > 0\n" +
|
||||
" THEN\n" +
|
||||
" (jtb_dist_clav_dir.duration /\n" +
|
||||
" ISNULL(NULLIF(jtb_cicl.rap_conv_prod, 0), 1)) *\n" +
|
||||
" (dtb_ordt.qta_prod * dtb_ordt.rap_conv_prod -\n" +
|
||||
" SUM(ISNULL(mtb_colr.qta_col, 0)))\n" +
|
||||
" ELSE 0 END AS run_time_sec,\n" +
|
||||
" jl.id_lotto,\n" +
|
||||
" jlt.data_lotto,\n" +
|
||||
" mtb_aart.peso_kg,\n" +
|
||||
" dtb_ordt.data_cons_prod_max\n" +
|
||||
" FROM dtb_ord_steps\n" +
|
||||
" INNER JOIN dtb_ordt ON dtb_ord_steps.data_ord = dtb_ordt.data_ord\n" +
|
||||
" AND dtb_ord_steps.num_ord = dtb_ordt.num_ord\n" +
|
||||
" AND dtb_ord_steps.gestione = dtb_ordt.gestione\n" +
|
||||
" LEFT OUTER JOIN setup_depo setupCaricoImmediato\n" +
|
||||
" ON dtb_ordt.cod_mdep = setupCaricoImmediato.cod_mdep\n" +
|
||||
" LEFT OUTER JOIN jtb_dist_clav_dir\n" +
|
||||
" ON dtb_ordt.cod_prod = jtb_dist_clav_dir.cod_prod AND\n" +
|
||||
" dtb_ordt.cod_jfas = jtb_dist_clav_dir.cod_jfas\n" +
|
||||
" LEFT OUTER JOIN mtb_partita_mag\n" +
|
||||
" ON dtb_ordt.partita_mag = mtb_partita_mag.partita_mag AND\n" +
|
||||
" dtb_ordt.cod_prod = mtb_partita_mag.cod_mart AND\n" +
|
||||
" mtb_partita_mag.flag_stato = 'A'\n" +
|
||||
" LEFT OUTER JOIN mtb_colr_sum mtb_colr ON dtb_ordt.data_ord = mtb_colr.data_ord AND\n" +
|
||||
" dtb_ordt.gestione = mtb_colr.gestione AND\n" +
|
||||
" dtb_ordt.num_ord = mtb_colr.num_ord AND\n" +
|
||||
" dtb_ordt.cod_prod = mtb_colr.cod_mart\n" +
|
||||
" LEFT OUTER JOIN jtb_comt ON dtb_ordt.cod_jcom = jtb_comt.cod_jcom\n" +
|
||||
" INNER JOIN dtb_ord_max_step q ON dtb_ord_steps.gestione = q.gestione AND\n" +
|
||||
" dtb_ord_steps.data_ord = q.data_ord AND\n" +
|
||||
" dtb_ord_steps.num_ord = q.num_ord AND\n" +
|
||||
" dtb_ord_steps.id_step = q.max_step AND\n" +
|
||||
" dtb_ord_steps.cod_jfas = q.cod_jfas\n" +
|
||||
" LEFT OUTER JOIN dtb_ordr_prod_with_art\n" +
|
||||
" ON dtb_ordr_prod_with_art.gestione_ord_prod =\n" +
|
||||
" dtb_ordt.gestione_rif AND\n" +
|
||||
" dtb_ordr_prod_with_art.data_ord_prod = dtb_ordt.data_ord_rif AND\n" +
|
||||
" dtb_ordr_prod_with_art.num_ord_prod = dtb_ordt.num_ord_rif AND\n" +
|
||||
" dtb_ordr_prod_with_art.riga_ord_prod = dtb_ordt.riga_ord_rif\n" +
|
||||
" LEFT OUTER JOIN jtb_cicl ON jtb_cicl.cod_prod = dtb_ordt.cod_prod\n" +
|
||||
" LEFT OUTER JOIN mtb_aart ON mtb_aart.cod_mart = dtb_ordt.cod_prod\n" +
|
||||
" LEFT OUTER JOIN gtb_anag ON dtb_ordt.cod_anag = gtb_anag.cod_anag\n" +
|
||||
" LEFT OUTER JOIN mtb_tcol ON dtb_ordt.cod_tcol_UL = mtb_tcol.cod_tcol\n" +
|
||||
" LEFT OUTER JOIN in_production_machines\n" +
|
||||
" ON dtb_ord_steps.data_ord = in_production_machines.data_ord\n" +
|
||||
" AND dtb_ord_steps.num_ord = in_production_machines.num_ord\n" +
|
||||
" AND dtb_ord_steps.gestione = in_production_machines.gestione\n" +
|
||||
" LEFT OUTER JOIN jtb_lotr jl\n" +
|
||||
" ON dtb_ord_steps.cod_jfas = jl.cod_jfas AND\n" +
|
||||
" dtb_ordt.gestione = jl.gestione AND\n" +
|
||||
" dtb_ordt.data_ord = jl.data_ord AND\n" +
|
||||
" dtb_ordt.num_ord = jl.num_ord\n" +
|
||||
" LEFT OUTER JOIN jtb_lott jlt\n" +
|
||||
" ON jl.cod_jfas = jlt.cod_jfas AND jl.id_lotto = jlt.id_lotto\n" +
|
||||
"\n" +
|
||||
" CROSS APPLY setup\n" +
|
||||
" WHERE dtb_ordt.flag_annulla = 'N'\n" +
|
||||
" AND (setup.flag_evaso IS NULL\n" +
|
||||
" OR (\n" +
|
||||
" (setup.flag_evaso = 'I'\n" +
|
||||
" AND\n" +
|
||||
" dtb_ord_steps.flag_step_attivo = 'S'\n" +
|
||||
" AND (flag_evaso_prod = 'I'\n" +
|
||||
" OR\n" +
|
||||
" (setupCaricoImmediato.flag_carico_scarico_immediato = 'S'\n" +
|
||||
" AND\n" +
|
||||
" flag_evaso_prod = 'E'))\n" +
|
||||
" AND dtb_ordt.flag_evaso_forzato = 'N'\n" +
|
||||
" )\n" +
|
||||
" OR (setup.flag_evaso = 'E'\n" +
|
||||
" AND (flag_evaso_prod = 'E' OR jlt.data_chiusura IS NOT NULL))\n" +
|
||||
" )\n" +
|
||||
" )\n" +
|
||||
" AND (setup.cod_jfas IS NULL\n" +
|
||||
" OR dtb_ord_steps.cod_jfas IN (SELECT cod_jfas FROM setup_jfas))\n" +
|
||||
" AND (setup.cod_anag IS NULL\n" +
|
||||
" OR dtb_ordt.cod_anag = setup.cod_anag)\n" +
|
||||
" GROUP BY dtb_ordr_prod_with_art.data_ord_prod,\n" +
|
||||
" dtb_ordr_prod_with_art.num_ord_prod,\n" +
|
||||
" dtb_ordr_prod_with_art.riga_ord_prod,\n" +
|
||||
" dtb_ordr_prod_with_art.flag_avviabile,\n" +
|
||||
" dtb_ordr_prod_with_art.flag_tracciabilita,\n" +
|
||||
" dtb_ordr_prod_with_art.unt_ord,\n" +
|
||||
" mtb_partita_mag.rap_conv2,\n" +
|
||||
" mtb_partita_mag.rap_conv3,\n" +
|
||||
" dtb_ordt.note,\n" +
|
||||
" dtb_ordr_prod_with_art.rap_conv,\n" +
|
||||
" dtb_ordt.descrizione_prod,\n" +
|
||||
" dtb_ordt.descr_estesa_prod,\n" +
|
||||
" dtb_ordr_prod_with_art.num_cnf,\n" +
|
||||
" mtb_aart.qta_cnf,\n" +
|
||||
" mtb_aart.gg_scad_partita,\n" +
|
||||
" mtb_aart.flag_qta_cnf_fissa,\n" +
|
||||
" dtb_ordr_prod_with_art.pos_riga,\n" +
|
||||
" dtb_ordt.flag_evaso_prod,\n" +
|
||||
" dtb_ordt.flag_evaso_forzato,\n" +
|
||||
" dtb_ordt.gestione,\n" +
|
||||
" dtb_ordt.data_ord,\n" +
|
||||
" dtb_ordt.num_ord,\n" +
|
||||
" dtb_ord_steps.cod_jfas,\n" +
|
||||
" dtb_ordt.cod_jfas,\n" +
|
||||
" dtb_ordt.cod_jcom,\n" +
|
||||
" mtb_partita_mag.partita_mag,\n" +
|
||||
" mtb_partita_mag.data_scad,\n" +
|
||||
" dtb_ordt.cod_prod,\n" +
|
||||
" dtb_ordt.data_iniz_prod,\n" +
|
||||
" q.max_step,\n" +
|
||||
" dtb_ord_steps.data_iniz,\n" +
|
||||
" dtb_ord_steps.data_fine,\n" +
|
||||
" dtb_ordt.cod_tcol_UL,\n" +
|
||||
" dtb_ordt.cod_anag,\n" +
|
||||
" gtb_anag.rag_soc,\n" +
|
||||
" gtb_anag.part_iva,\n" +
|
||||
" dtb_ordt.rif_ord,\n" +
|
||||
" dtb_ordt.cod_vdes,\n" +
|
||||
" dtb_ordt.cod_mdep,\n" +
|
||||
" dtb_ordr_prod_with_art.cod_mdep,\n" +
|
||||
" mtb_aart.colli_pedana,\n" +
|
||||
" dtb_ord_steps.qta_prod,\n" +
|
||||
" dtb_ordt.qta_prod,\n" +
|
||||
" jtb_dist_clav_dir.duration,\n" +
|
||||
" jtb_comt.descrizione,\n" +
|
||||
" q.elapsed_time,\n" +
|
||||
" dtb_ordr_prod_with_art.colli_pedana,\n" +
|
||||
" dtb_ord_steps.hr_num,\n" +
|
||||
" mtb_aart.unt_mis,\n" +
|
||||
" mtb_aart.unt_mis2,\n" +
|
||||
" mtb_aart.rap_conv2,\n" +
|
||||
" mtb_aart.unt_mis3,\n" +
|
||||
" mtb_aart.rap_conv3,\n" +
|
||||
" dtb_ordr_prod_with_art.unt_ord2,\n" +
|
||||
" dtb_ordr_prod_with_art.unt_ord3,\n" +
|
||||
" dtb_ordr_prod_with_art.qta_ord,\n" +
|
||||
" dtb_ordr_prod_with_art.qta_ord2,\n" +
|
||||
" dtb_ordr_prod_with_art.qta_ord3,\n" +
|
||||
" dtb_ordr_prod_with_art.rap_conv2,\n" +
|
||||
" dtb_ordr_prod_with_art.rap_conv3,\n" +
|
||||
" dtb_ordr_prod_with_art.qta_cnf,\n" +
|
||||
" dtb_ordr_prod_with_art.cal_qta_cnf,\n" +
|
||||
" dtb_ordr_prod_with_art.gg_scad_partita,\n" +
|
||||
" jtb_cicl.qta_prod,\n" +
|
||||
" jtb_cicl.rap_conv_prod,\n" +
|
||||
" dtb_ord_steps.descrizione_attivita,\n" +
|
||||
" jtb_cicl.unt_mis_prod,\n" +
|
||||
" mtb_tcol.descrizione,\n" +
|
||||
" dtb_ordt.qta_prod,\n" +
|
||||
" dtb_ordt.rap_conv_prod,\n" +
|
||||
" setupCaricoImmediato.flag_carico_scarico_immediato,\n" +
|
||||
" in_production_machines.max_data_mov, q.num_fase, dtb_ord_steps.qta_lav, q.max_fase,\n" +
|
||||
" jl.id_lotto, jlt.data_lotto, mtb_aart.peso_kg, dtb_ordt.data_cons_prod_max)\n" +
|
||||
" INSERT\n" +
|
||||
" INTO @val\n" +
|
||||
" SELECT ROW_NUMBER() OVER (ORDER BY data_ord, num_ord_prod, pos_riga, num_ord) AS sort,\n" +
|
||||
" cod_jcom,\n" +
|
||||
" data_ord_prod,\n" +
|
||||
" num_ord_prod,\n" +
|
||||
" riga_ord_prod,\n" +
|
||||
" flag_avviabile,\n" +
|
||||
" flag_tracciabilita,\n" +
|
||||
" unt_ord,\n" +
|
||||
" rap_conv,\n" +
|
||||
" unt_ord2,\n" +
|
||||
" rap_conv2,\n" +
|
||||
" unt_ord3,\n" +
|
||||
" rap_conv3,\n" +
|
||||
" descrizione_prod,\n" +
|
||||
" num_pezzi,\n" +
|
||||
" num_cnf,\n" +
|
||||
" gg_scad_partita,\n" +
|
||||
" qta_cnf,\n" +
|
||||
" colli_pedana,\n" +
|
||||
" num_pedane,\n" +
|
||||
" pos_riga,\n" +
|
||||
" flag_evaso_prod,\n" +
|
||||
" flag_evaso_forzato,\n" +
|
||||
" flag_ordine_evaso,\n" +
|
||||
" gestione,\n" +
|
||||
" data_ord,\n" +
|
||||
" cod_tcol_UL,\n" +
|
||||
" descrizione_tcol,\n" +
|
||||
" cod_anag,\n" +
|
||||
" rag_soc_anag,\n" +
|
||||
" part_iva,\n" +
|
||||
" rif_ord,\n" +
|
||||
" cod_vdes,\n" +
|
||||
" cod_mdep,\n" +
|
||||
" cod_mdep_prod,\n" +
|
||||
" num_ord,\n" +
|
||||
" cod_jfas,\n" +
|
||||
" cod_jfas_lav,\n" +
|
||||
" partita_mag,\n" +
|
||||
" note_lav,\n" +
|
||||
" data_scad,\n" +
|
||||
" cod_prod,\n" +
|
||||
" descrizione_commessa,\n" +
|
||||
" data_iniz_prod,\n" +
|
||||
" max_step,\n" +
|
||||
" unt_mis_prod,\n" +
|
||||
" qta_batch_prod,\n" +
|
||||
" rap_conv_prod,\n" +
|
||||
" data_iniz,\n" +
|
||||
" data_fine,\n" +
|
||||
" qta_prod,\n" +
|
||||
" qta_lav,\n" +
|
||||
" max_fase,\n" +
|
||||
" num_fase,\n" +
|
||||
" hr_num,\n" +
|
||||
" descrizione_attivita,\n" +
|
||||
" prod_std,\n" +
|
||||
" elapsed_time,\n" +
|
||||
" qta_trasferite,\n" +
|
||||
" udc_trasferiti,\n" +
|
||||
" stato,\n" +
|
||||
" pz_trasferiti,\n" +
|
||||
" run_time_sec,\n" +
|
||||
" SUM(run_time_sec) OVER (PARTITION BY cod_jfas, data_ord_prod) AS cumulative_run_time_sec,\n" +
|
||||
" CONVERT(INT, run_time_sec / 3600) AS run_time_hour,\n" +
|
||||
" ROUND((run_time_sec / 3600 - CONVERT(INT, run_time_sec / 3600)) * 60, 0) AS run_time_min,\n" +
|
||||
" DATEADD(SECOND, SUM(run_time_sec)\n" +
|
||||
" OVER (PARTITION BY cod_jfas, data_ord_prod ORDER BY stato, cod_jfas, data_ord_prod, pos_riga ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW),\n" +
|
||||
" CASE\n" +
|
||||
" WHEN data_ord_prod > GETDATE() THEN DATEADD(HH, 7, data_ord_prod)\n" +
|
||||
" ELSE GETDATE() END) AS run_time_end,\n" +
|
||||
" id_lotto,\n" +
|
||||
" data_lotto,\n" +
|
||||
" peso_kg,\n" +
|
||||
" data_cons_prod_max\n" +
|
||||
" FROM ord_lav\n" +
|
||||
" ORDER BY ord_lav.data_ord,\n" +
|
||||
" ord_lav.num_ord_prod,\n" +
|
||||
" ord_lav.pos_riga,\n" +
|
||||
" ord_lav.num_ord\n" +
|
||||
" RETURN\n" +
|
||||
"END");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241010130131 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
executeStatement("UPDATE stb_gest_setup SET key_section = 'TIPI_DOCUMENTO' WHERE gest_name = 'IMPORT_DOCUMENTI' AND section = 'PAZIENZA_RIFORD' AND key_section = 'TIPO_DOCUMENTO' ");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241010153706 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetupQuery(null, null, "SELECT cod_jfas FROM jtb_fasi");
|
||||
createSetup("W_PORDI_RC", "SETUP", "FASE_TERZISTA", null,
|
||||
null, false, null, false, false,
|
||||
false, false, false, null, false, "SELECT cod_jfas FROM jtb_fasi");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241010153756 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetupQuery(null, null, "SELECT cod_spes FROM gtb_spes");
|
||||
createSetup("W_PORDI_RC", "SETUP", "COD_SPESA_TERZISTA", null,
|
||||
null, false, null, false, false,
|
||||
false, false, false, null, false, "SELECT cod_spes FROM gtb_spes");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241010154443 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
|
||||
if (isCustomer(IntegryCustomer.Tosca))
|
||||
executeStatement("INSERT INTO atb_forn (cod_anag, cod_atip, cod_banc, cod_paga, porto, mezzo, cod_aliq, cod_alis, cod_ccon_costi,\n" +
|
||||
" cod_ccon_ricavi, cod_abi, cod_cab, agenzia_banca, rif_banca_forn, flag_stato, causale,\n" +
|
||||
" cod_caus_rit, cod_divi, mm_decor, cod_clie, iban, cod_banc_azi, note_ordine, gg_chiudi_stralci,\n" +
|
||||
" cod_bic, mesi_esclusi, cod_vvet, flag_forfettario, flag_autofattura)\n" +
|
||||
"SELECT gtb_anag.cod_anag,\n" +
|
||||
" N'01',\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" N'A',\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" 0,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" NULL,\n" +
|
||||
" N'N',\n" +
|
||||
" N'N'\n" +
|
||||
"FROM gtb_anag\n" +
|
||||
" LEFT OUTER JOIN vtb_clie ON gtb_anag.cod_anag = vtb_clie.cod_anag\n" +
|
||||
" LEFT OUTER JOIN atb_forn ON gtb_anag.cod_anag = atb_forn.cod_anag\n" +
|
||||
"WHERE vtb_clie.cod_anag IS NULL\n" +
|
||||
" AND atb_forn.cod_anag IS NULL");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241010160719 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
executeStatement("CREATE TABLE ctb_coan (\tid bigint identity not null,\n" +
|
||||
"\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata_mov datetime not null,\n" +
|
||||
"\t\t\t\t\t\t\t\t\t\t\t\t\t\tcod_prod varchar(15) not null,\n" +
|
||||
"\t\t\t\t\t\t\t\t\t\t\t\t\t\tpartita_mag_prod varchar(20),\n" +
|
||||
"\t\t\t\t\t\t\t\t\t\t\t\t\t\tcod_jcom varchar(10),\n" +
|
||||
"\t\t\t\t\t\t\t\t\t\t\t\t\t\tcod_jfas varchar(5),\n" +
|
||||
"\t\t\t\t\t\t\t\t\t\t\t\t\t\tcod_ccon varchar(6) not null,\n" +
|
||||
"\t\t\t\t\t\t\t\t\t\t\t\t\t\timp_dare numeric(20,5) not null default 0 ,\n" +
|
||||
"\t\t\t\t\t\t\t\t\t\t\t\t\t\timp_avere numeric (20,5) not null default 0,\n" +
|
||||
"\t\t\t\t\t\t\t\t\t\t\t\t\t\tcod_jflav varchar(5),\n" +
|
||||
"\t\t\t\t\t\t\t\t\t\t\t\t\t\tcod_mart varchar(15),\n" +
|
||||
"\t\t\t\t\t\t\t\t\t\t\t\t\t\tpartita_mag varchar(20),\n" +
|
||||
"\t\t\t\t\t\t\t\t\t\t\t\t\t\tcod_spes varchar(5),\n" +
|
||||
"\t\t\t\t\t\t\t\t\t\t\t\t\t\tqta numeric (20,5) not null default 0,\n" +
|
||||
"\t\t\t\t\t\t\t\t\t\t\t\t\t\tunt_mis varchar(3),\n" +
|
||||
"\t\t\t\t\t\t\t\t\t\t\t\t\t\tchiave_fonte varchar(8000),\n" +
|
||||
" CONSTRAINT PK_ctb_coan_ PRIMARY KEY (id),\n" +
|
||||
"\tCONSTRAINT FK_ctb_coan_cod_prod FOREIGN KEY (cod_prod) REFERENCES mtb_aart(cod_mart),\n" +
|
||||
"\tCONSTRAINT FK_ctb_coan_partita_mag_prod FOREIGN KEY (cod_mart, partita_mag_prod) REFERENCES mtb_partita_mag(cod_mart, partita_mag),\n" +
|
||||
"\tCONSTRAINT FK_ctb_coan_cod_jcom FOREIGN KEY (cod_jcom) REFERENCES jtb_comt(cod_jcom),\n" +
|
||||
"\tCONSTRAINT FK_ctb_coan_cod_jfas FOREIGN KEY (cod_jfas) REFERENCES jtb_fasi(cod_jfas),\n" +
|
||||
"\tCONSTRAINT FK_ctb_coan_cod_ccon FOREIGN KEY (cod_ccon) REFERENCES ctb_cont(cod_ccon),\n" +
|
||||
"\tCONSTRAINT FK_ctb_coan_cod_jflav FOREIGN KEY (cod_jflav) REFERENCES jtb_flav(cod_jflav),\n" +
|
||||
"\tCONSTRAINT FK_ctb_coan_cod_mart FOREIGN KEY (cod_mart) REFERENCES mtb_aart(cod_mart),\n" +
|
||||
"\tCONSTRAINT FK_ctb_coan_partita_mag FOREIGN KEY (cod_mart, partita_mag) REFERENCES mtb_partita_mag(cod_mart, partita_mag),\n" +
|
||||
"\tCONSTRAINT FK_ctb_coan_cod_spes FOREIGN KEY (cod_spes) REFERENCES gtb_spes(cod_spes),);");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241011090629 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
executeStatement("ALTER TABLE mtb_sgrp add cod_ccon_wip varchar(6),\n" +
|
||||
"\tFOREIGN KEY (cod_ccon_wip) REFERENCES ctb_cont(cod_ccon);");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241011092306 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
executeStatement("ALTER TABLE dtb_tipi add cod_ccau_coan varchar(5),\n" +
|
||||
"\tFOREIGN KEY (cod_ccau_coan) REFERENCES ctb_caus(cod_ccau);");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241011103222 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if ( !isCustomer(IntegryCustomer.RossoGargano)) return;
|
||||
|
||||
executeStatement("update stb_gest_setup set value = 'S' where section = 'DOCFINANCE' AND key_section = 'ATTIVO'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.IntegryCustomerDB;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241014121316 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
String value = "S";
|
||||
|
||||
if (isCustomer(IntegryCustomer.Gramm)){
|
||||
value = "N";
|
||||
}
|
||||
|
||||
createSetup("PICKING", "SPEDIZIONE", "ADD_DATACONS_IN_FILTRO", value,
|
||||
"Permettere l'inserimento di data_cons in filtro ordine della MtbColt", false, "SI_NO", false, false,
|
||||
false, false, false, null, false, "SELECT 'S' UNION ALL SELECT 'N'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241014121636 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (!isTextiles()) return;
|
||||
createOrUpdateView("tvvw_ordv_linee", "CREATE view [dbo].[tvvw_ordv_linee] as \n" +
|
||||
"select dtb_ordt.gestione, \n" +
|
||||
"dtb_ordt.data_ord,\n" +
|
||||
"dtb_ordt.num_ord,\n" +
|
||||
"STUFF((\n" +
|
||||
" SELECT distinct ', ' + dtb_grup_art.descrizione\n" +
|
||||
" FROM dtb_ordr inner join ttb_style on dtb_ordr.cod_mart = ttb_style.cod_style\n" +
|
||||
" inner join ttb_line on ttb_style.cod_line = ttb_line.cod_line\n" +
|
||||
" left outer join dtb_grup_art on ttb_line.cod_dgrp_art = dtb_grup_art.cod_dgrp_art\n" +
|
||||
" WHERE dtb_ordt.gestione = dtb_ordr.gestione \n" +
|
||||
" and dtb_ordt.data_ord = dtb_ordr.data_ord \n" +
|
||||
" and dtb_ordt.num_ord = dtb_ordr.num_ord \n" +
|
||||
" FOR XML PATH('')), 1, 2, '' ) AS linea\n" +
|
||||
"\n" +
|
||||
"from dtb_ordt\n" +
|
||||
"where dtb_ordt.gestione = 'v'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,23 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241015101704 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetup("PVM", "MONITORAGGIO_LINEE_V2", "RESTART_RUN_TIME_END", "S",
|
||||
"Se impostato a S nella funzione MES_GetWorkOrders il tempo di fine viene calcolato per ogni ordine di produzione, partendo dalle 7.00 del mattino, se impostato a N il tempo di fine viene calcolato in modo progressivo per linea senza alcune restart", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user