Compare commits

...

66 Commits

Author SHA1 Message Date
Samuele Locatelli 9f4f96e15d Merge branch 'release/UpdaterFix' 2021-09-17 16:46:48 +02:00
Samuele Locatelli b83b29f798 Fix conf https x NEXUS 2021-09-17 16:46:34 +02:00
Samuele Locatelli 62cc21f43d Eliminazioni warnings vari codice 2021-09-17 14:51:27 +02:00
Samuele Locatelli 8ec6ce6390 Update typescript a latest 2021-09-17 14:51:19 +02:00
Samuele Locatelli 72398af0d5 fix port 61257 2021-09-17 14:39:20 +02:00
Samuele Locatelli d143857cf8 Update nuget vari 2021-09-17 14:31:54 +02:00
Samuele Locatelli d2daf33f14 UPdate nuget steamwarelibs 2021-09-17 14:26:21 +02:00
Samuele Locatelli 0a36cf3de8 Merge tag 'FixNexus' into develop
Fix nexus path https
2021-09-16 16:21:13 +02:00
Samuele Locatelli b178add115 Merge branch 'release/FixNexus' 2021-09-16 16:21:05 +02:00
Samuele Locatelli a7fcfe0eca Update nexus yaml conf 2021-09-16 16:17:06 +02:00
Samuele Locatelli 5aac6657e8 Merge tag 'CheckFIleNameCNC' into develop
Fix controllo filename/takt in fase import se già approvato
2021-09-16 16:05:16 +02:00
Samuele Locatelli f9281ece74 Merge branch 'release/CheckFIleNameCNC' 2021-09-16 16:05:04 +02:00
Samuele Locatelli 4cc1bfbd8f Fix comportamento file upload x kit e test dxf 2021-09-16 16:03:05 +02:00
Samuele Locatelli 8bb4580ba2 Aggiunto verifica batch già approvati in import 2021-09-16 16:01:48 +02:00
Samuele Locatelli a474c243f6 Merge tag 'FixManifestVErs' into develop
Fix manifest version (era 0.0.0.0)
2021-09-02 16:39:43 +02:00
Samuele Locatelli 91b36dbf5f Merge branch 'release/FixManifestVErs' 2021-09-02 16:38:40 +02:00
Samuele Locatelli 8ed38c3976 fix vers number in manifest.xml 2021-09-02 16:38:07 +02:00
Samuele Locatelli 2697a3ae09 Merge tag 'FixManifestDeploy' into develop
Fix modalità update e url manifest.xml
2021-09-02 16:32:36 +02:00
Samuele Locatelli 83f44c6d36 Merge branch 'release/FixManifestDeploy' 2021-09-02 16:30:28 +02:00
Samuele Locatelli 07e4fbe5e8 Update pagina download NKC 2021-09-02 16:30:03 +02:00
Samuele Locatelli 252387f6ca Modifica ciclo update in deploy CI/CD 2021-09-02 16:24:54 +02:00
Samuele Locatelli 8ccddec3bd Merge tag 'Gitlab_CICD' into develop
Fix gitlab CI CD deploy
2021-09-02 15:57:44 +02:00
Samuele Locatelli 06a2dc0200 Merge branch 'release/Gitlab_CICD' 2021-09-02 15:57:32 +02:00
Samuele Locatelli 0d6244365d Merge branch 'feature/Jenkins2Gitlab' into develop 2021-09-02 15:56:17 +02:00
Samuele Locatelli 4e25b172c8 Merge branch 'develop' into feature/Jenkins2Gitlab 2021-09-02 15:56:02 +02:00
Samuele Locatelli 07ff67b1c8 Fix timing esecuzioen batch stat import 2021-09-02 15:55:01 +02:00
Samuele Emilio Locatelli 7205e0a5ab Merge branch 'feature/Jenkins2Gitlab' into 'develop'
Feature/jenkins2 gitlab

See merge request steamware/NKC!1
2021-09-02 13:52:42 +00:00
Samuele Emilio Locatelli d618963565 Feature/jenkins2 gitlab 2021-09-02 13:52:42 +00:00
Samuele Locatelli 8379252c12 riduzione verbosita e path manifest/changelog x upload 2021-09-02 15:45:13 +02:00
Samuele Locatelli 17f32f80d7 fix nexus upload (hope) 2021-09-02 15:29:30 +02:00
Samuele Locatelli c7fd3961af fix typo: releases --> release 2021-09-02 15:22:37 +02:00
Samuele Locatelli fc0dfd9d2e modifica yaml CiCd 2021-09-02 15:20:05 +02:00
Samuele Locatelli 9c536f41e1 fix path x recupero filkx e nexus 2021-09-02 15:07:35 +02:00
Samuele Locatelli a5ba2a0eaf fix develop install x IIS01 2021-09-02 15:02:35 +02:00
Samuele Locatelli 836c3515da ancora modifica yaml 2021-09-02 15:02:12 +02:00
Samuele Locatelli 66f4ddc340 ancora test yaml CiCd 2021-09-02 14:55:12 +02:00
Samuele Locatelli f5dec22e60 Ancora test yaml CiCd 2021-09-02 14:35:40 +02:00
Samuele Locatelli 57aa6c9af9 cambio modalità build 2021-09-02 14:23:33 +02:00
Samuele Locatelli 763caff2e4 update tag verbosity 2021-09-02 14:16:27 +02:00
Samuele Locatelli 0d74d84fd6 fix yaml syntax 2021-09-02 14:13:06 +02:00
Samuele Locatelli 221c9d9a3e Update yaml x build/install 2021-09-02 14:10:06 +02:00
Samuele Emilio Locatelli ca6f82f118 Update .gitlab-ci.yml file 2021-09-02 10:22:02 +00:00
Samuele Locatelli 2e7b8f11aa Add tag x win 2021-09-02 12:20:42 +02:00
Samuele Locatelli f1bb875ecc Versione iniziale gitlab conf 2021-09-02 12:09:39 +02:00
Samuele Locatelli 7825f8e9aa Merge branch 'feature/StatistichePre' into develop 2021-09-02 11:47:31 +02:00
Samuele Locatelli 9a8272f021 Aggiunto calcolo statistiche a fine batch 2021-09-02 11:47:22 +02:00
Samuele Locatelli 385936a167 Refresh grafico pagina dev tools 2021-09-02 11:42:13 +02:00
Samuele Locatelli 8e6a086e18 Display tempo calcolo a fine esecuzione 2021-09-02 11:18:09 +02:00
Samuele Locatelli f5fefb8070 Aggiunta button in devUtils x ricalcolo 2021-09-02 11:14:44 +02:00
Samuele Locatelli 807a6d5e45 Aggiunta metodi chiamate stored ricalcolo 2021-09-02 11:14:19 +02:00
Samuele Locatelli 97984ce39c Merge tag 'GestionePngConVersioni' into develop
Gestione stsampa BIN con immagini PNG generate con indice revisione
disegno
2021-08-20 16:15:39 +02:00
Samuele Locatelli babd52629a Merge branch 'release/GestionePngConVersioni' 2021-08-20 16:15:20 +02:00
Samuele Locatelli 1b71f76d14 update schemacompare DB 2021-08-20 16:13:13 +02:00
Samuele Locatelli e1d84b29f4 Aggiunta metodo update dati da BIN 2021-08-20 15:06:29 +02:00
Samuele Locatelli 99b2983962 refresh parziale classi x update ExtCode + Rev 2021-08-20 14:46:04 +02:00
Samuele Locatelli 8a7b4dd8a0 Merge tag 'fixEmptyRedix_NugetNLog' into develop
Fix regressione gestioen redis x valori vuoti
2021-08-19 12:12:41 +02:00
Samuele Locatelli 553f488fdf Merge branch 'release/fixEmptyRedix_NugetNLog' 2021-08-19 12:12:19 +02:00
Samuele Locatelli fed4789534 FIx-update SteamwareLibs x redis vuoto 2021-08-19 12:12:08 +02:00
Samuele Locatelli 5bbeb6817b Update NLog 2021-08-19 12:09:49 +02:00
Samuele Locatelli 15df69f9fd Merge branch 'develop' 2021-08-19 11:42:42 +02:00
Samuele Locatelli ae70999f78 Clean dll inutili 2021-08-19 11:42:30 +02:00
Samuele Locatelli 1b484df0b9 Merge tag 'updateNugetSteamWareLibs' into develop
Update librerie
2021-08-19 11:39:55 +02:00
Samuele Locatelli cc00dc0804 Merge branch 'release/updateNugetSteamWareLibs' 2021-08-19 11:39:49 +02:00
Samuele Locatelli 719968ee2b Nuget update x SteamwareLibs e setRSV 2021-08-19 11:39:01 +02:00
Samuele Locatelli 78482b4833 aggiunto cacheDataTTL in web.config 2021-08-11 16:53:21 +02:00
Samuele Locatelli da292cae17 Merge tag 'ReloadConfFix' into develop
Fix corretto lettura CRS --> ConfReadString
2021-08-11 16:01:28 +02:00
48 changed files with 3933 additions and 1167 deletions
+3
View File
@@ -41,3 +41,6 @@ dotnet_diagnostic.CA1716.severity = none
# CA2227: Le proprietà delle raccolte devono essere di sola lettura # CA2227: Le proprietà delle raccolte devono essere di sola lettura
dotnet_diagnostic.CA2227.severity = none dotnet_diagnostic.CA2227.severity = none
# CA1805: Do not initialize unnecessarily
dotnet_diagnostic.CA1805.severity = none
+157
View File
@@ -0,0 +1,157 @@
variables:
NUGET_PATH: 'C:\Tools\nuget.exe'
MSBUILD_PATH: 'C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\MSBuild\Current\Bin\MSBuild.exe'
ASPNET_MERGE_PATH: 'C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools'
EXE_RELEASE_FOLDER: 'c:\Projetcs\Compiled\NKC\Release'
DEPLOY_FOLDER: 'c:\Projects\Deploy\NKC\Builds'
VERS_MAIN: '2.0'
NEW_REL: ''
NEXUS_PATH: 'NKC'
PROJ_NAME: 'NKC_WF'
APP_NAME: 'NKC'
# VARIABILI
# Tema numero versione: si potrebbe usare la variabile CI_COMMIT_TAG con $env:CI_COMMIT_TAG, in questo caso SOLO SE c'è un tag sistema versione...
# Tema compilazione x branch: $CI_COMMIT_BRANCH == "my-branch" potrebbe essere condizione if x fare alcuni sscript...
# rif: https://docs.gitlab.com/ee/ci/variables/predefined_variables.html
# Da approfondire:
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/dotNET.gitlab-ci.yml
# https://www.google.com/search?q=gitlab+variable+year+month&rlz=1C1GCEA_enIT945IT945&oq=gitlab+variable+year+month&aqs=chrome..69i57j69i64.5262j0j7&sourceid=chrome&ie=UTF-8
# https://docs.gitlab.com/ee/ci/examples/README.html
# https://docs.gitlab.com/ee/ci/quick_start/index.html
# https://docs.gitlab.com/ee/ci/yaml/
# helper x fix pacchetti nuget da repo locale nexus.steamware.net
.nuget-fix: &nuget-fix
- |
$hasSource = C:\Tools\nuget.exe sources list | find "`"Steamware Nexus`"" /C
if ($hasSource -eq 0) {
C:\Tools\nuget.exe sources Add -Name "`"Steamware Nexus`"" -Source https://nexus.steamware.net/repository/nuget-group -username "`"nugetUser`"" -password "`"viaDante16`""
} else {
C:\Tools\nuget.exe sources Update -Name "`"Steamware Nexus`"" -Source https://nexus.steamware.net/repository/nuget-group -username "`"nugetUser`"" -password "`"viaDante16`""
}
echo $hasSource
# helper x fix version number
.version-fix: &version-fix
- |
$env:NEW_REL = $env:VERS_MAIN+"."+(get-date format yyMM)+"."+(get-date format ddHH)
echo "Set vers: $env:NEW_REL"
$contenuto = Get-Content -path 'VersGen\VersGen.cs' -Raw
$newContenuto = $contenuto -replace '0.0.0.0', $env:NEW_REL
$newContenuto | Set-Content -Path 'VersGen\VersGen.cs'
# helper x fix manifest xml
.manifest-fix: &manifest-fix
- |
echo "Set manifest.xml for branch: $CI_COMMIT_BRANCH"
$contenuto = Get-Content -path 'NKC_WF\Resources\manifest.xml' -Raw
$newContenuto = $contenuto -replace '{{BRANCHNAME}}', $CI_COMMIT_BRANCH
$newContenuto = $newContenuto -replace '0.0.0.0', $env:NEW_REL
$newContenuto | Set-Content -Path 'NKC_WF\Resources\manifest.xml'
# helper creazione hash files
.hashBuild: &hashBuild
- |
$Target = $env:PROJ_NAME + "\Release\" + $env:APP_NAME + ".zip"
$MD5 = Get-FileHash $Target -Algorithm MD5
$SHA1 = Get-FileHash $Target -Algorithm SHA1
New-Item $Target".md5"
New-Item $Target".sha1"
$MD5.Hash | Set-Content -Path $Target".md5"
$SHA1.Hash | Set-Content -Path $Target".sha1"
echo "Created HASH files for $Target"
# helper x send su NEXUS
# $VersNumb = $Get-Content "Resources\VersNum.txt"
.nexusUpload: &nexusUpload
- |
Set-Alias mCurl C:\Windows\system32\curl.exe
$currentDate = get-date -format yyMM;
$currentTime = get-date -format ddHH;
$VersNumb = $env:NEW_REL
echo "Curr Version: $VersNumb"
if($CI_COMMIT_BRANCH -eq "master")
{
$version = "stable"
}
else
{
$version = "unstable"
}
$File2Send = Get-ChildItem($env:PROJ_NAME + "\Release\*")
ForEach ($File in $File2Send) {
$FileName = Split-Path $File -leaf
mCurl -v -u GitLab:$NEXUS_PASSWD --upload-file $File https://nexus.steamware.net/repository/SWS/$env:NEXUS_PATH/$CI_COMMIT_BRANCH/LAST/$FileName
mCurl -v -u GitLab:$NEXUS_PASSWD --upload-file $File https://nexus.steamware.net/repository/SWS/$env:NEXUS_PATH/$CI_COMMIT_BRANCH/ARCHIVE/$VersNumb/$FileName
}
mCurl -v -u GitLab:$NEXUS_PASSWD --upload-file "$env:PROJ_NAME\Resources\manifest.xml" https://nexus.steamware.net/repository/SWS/$env:NEXUS_PATH/$CI_COMMIT_BRANCH/LAST/manifest.xml
mCurl -v -u GitLab:$NEXUS_PASSWD --upload-file "$env:PROJ_NAME\Resources\ChangeLog.html" https://nexus.steamware.net/repository/SWS/$env:NEXUS_PATH/$CI_COMMIT_BRANCH/LAST/ChangeLog.html
stages:
- build
- deploy
- installer
build:
stage: build
tags:
- win
before_script:
- *nuget-fix
- '& "$env:NUGET_PATH" restore NKC_WF.sln -Verbosity quiet'
- *version-fix
script:
- '& "$env:MSBUILD_PATH" NKC_WF/NKC_WF.csproj -target:Build /p:Configuration=Release /p:Platform="Any CPU" /p:OutputPath=bin/ /verbosity:minimal /m'
IIS01:deploy:
stage: deploy
tags:
- win
rules:
- if: '$CI_COMMIT_BRANCH == "develop"'
before_script:
- *nuget-fix
- '& "$env:NUGET_PATH" restore NKC_WF.sln -Verbosity quiet'
- *version-fix
script:
- '& "$env:MSBUILD_PATH" /p:m=8 /p:AspnetMergePath=$env:ASPNET_MERGE_PATH /p:DeployOnBuild=true /p:Targets=Publish /p:PublishProfile=IIS01.pubxml /p:RunCodeAnalysis=false /p:Configuration=IIS01 /p:username=jenkins /p:Password=viadante16 /p:AllowUntrustedCertificate=true /p:OutputPath=bin/ /verbosity:minimal NKC_WF/NKC_WF.csproj'
needs: ["build"]
IIS02:deploy:
stage: deploy
tags:
- win
rules:
- if: '$CI_COMMIT_BRANCH == "master"'
before_script:
- *nuget-fix
- '& "$env:NUGET_PATH" restore NKC_WF.sln -Verbosity quiet'
- *version-fix
script:
- '& "$env:MSBUILD_PATH" /p:m=8 /p:AspnetMergePath=$env:ASPNET_MERGE_PATH /p:DeployOnBuild=true /p:Targets=Publish /p:PublishProfile=IIS02.pubxml /p:RunCodeAnalysis=false /p:Configuration=IIS02 /p:username=jenkins /p:Password=viadante16 /p:AllowUntrustedCertificate=true /p:OutputPath=bin/ /verbosity:minimal NKC_WF/NKC_WF.csproj'
needs: ["build"]
install:
stage: installer
tags:
- win
# rules:
# - if: '$CI_COMMIT_BRANCH == "master"'
# when: manual
before_script:
- *nuget-fix
- '& "$env:NUGET_PATH" restore NKC_WF.sln -Verbosity quiet'
- *version-fix
- *manifest-fix
script:
- '& "$env:MSBUILD_PATH" /p:m=8 /p:AspnetMergePath=$env:ASPNET_MERGE_PATH /T:Package /P:Configuration=Release /p:PublishProfile=master.pubxml /p:RunCodeAnalysis=false /p:PackageLocation=Release/$env:APP_NAME.zip /p:DeployIisAppPath="Default Web Site/NKC" /p:PackageAsSingleFile=True /verbosity:minimal /p:OutputPath=bin/ NKC_WF/NKC_WF.csproj'
# qui il deploy su nexus...
- *hashBuild
- *nexusUpload
needs: ["build"]
+4 -6
View File
@@ -108,13 +108,11 @@
<Reference Include="StackExchange.Redis, Version=2.0.0.0, Culture=neutral, PublicKeyToken=c219ff1ca8c2ce46, processorArchitecture=MSIL"> <Reference Include="StackExchange.Redis, Version=2.0.0.0, Culture=neutral, PublicKeyToken=c219ff1ca8c2ce46, processorArchitecture=MSIL">
<HintPath>..\packages\StackExchange.Redis.2.2.62\lib\net461\StackExchange.Redis.dll</HintPath> <HintPath>..\packages\StackExchange.Redis.2.2.62\lib\net461\StackExchange.Redis.dll</HintPath>
</Reference> </Reference>
<Reference Include="SteamWare, Version=5.1.2108.1115, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="SteamWare, Version=5.1.2108.1911, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\SteamWare.5.1.2108.1115\lib\net462\SteamWare.dll</HintPath> <HintPath>..\packages\SteamWare.5.1.2108.1911\lib\net462\SteamWare.dll</HintPath>
<Private>True</Private>
</Reference> </Reference>
<Reference Include="SteamWare.Logger, Version=5.1.2108.1115, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="SteamWare.Logger, Version=5.1.2108.1911, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\SteamWare.Logger.5.1.2108.1115\lib\net462\SteamWare.Logger.dll</HintPath> <HintPath>..\packages\SteamWare.Logger.5.1.2108.1911\lib\net462\SteamWare.Logger.dll</HintPath>
<Private>True</Private>
</Reference> </Reference>
<Reference Include="System" /> <Reference Include="System" />
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"> <Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
+248 -147
View File
@@ -249,6 +249,22 @@ namespace AppData
#region Private Methods #region Private Methods
/// <summary>
/// Verifica ed eventualmente aggiunge part da aggiornare all'elenco
/// </summary>
/// <param name="part2update"></param>
/// <param name="partList"></param>
private static void addPart2Upd(ref Dictionary<string, int> part2update, List<Part> partList)
{
foreach (var item in partList)
{
if (!part2update.ContainsKey(item.PartRev))
{
part2update.Add(item.PartRev, item.PartId);
}
}
}
/// <summary> /// <summary>
/// verifica che la macchina dichiarata esiste o la crea... /// verifica che la macchina dichiarata esiste o la crea...
/// </summary> /// </summary>
@@ -494,29 +510,6 @@ namespace AppData
return currData; return currData;
} }
public static bool setMachLiveStatus(string machine, bool isLive)
{
string redKey = $"{redProdMachStateLive}:{machine}";
string redVal = $"{isLive}";
// salvo x 90 sec
bool done = memLayer.ML.setRSV(redKey, redVal, 90);
return done;
}
public static bool getMachLiveStatus(string machine)
{
bool isLive = false;
/// cerco in redis...
string redKey = $"{redProdMachStateLive}:{machine}";
string redVal = memLayer.ML.getRSV(redKey);
if (!string.IsNullOrEmpty(redVal))
{
bool.TryParse(redVal, out isLive);
}
return isLive;
}
/// <summary> /// <summary>
/// Salvo in Redis il SUCCESSIVO bunk da lavorare /// Salvo in Redis il SUCCESSIVO bunk da lavorare
/// </summary> /// </summary>
@@ -1059,6 +1052,109 @@ namespace AppData
return answ; return answ;
} }
/// <summary>
/// Invia una richiesta di esecuzione di Nesting x un Batch ANCESTOR
/// </summary>
/// <param name="BatchID">Batch di cui si chiede processing</param>
/// <returns></returns>
public static bool checkSendBatchSplit(int BatchID)
{
int nextIndex = 10;
bool batchSent = false;
bool batchProcessed = false;
DataLayer DLMan = new DataLayer();
var currType = ComLib.BType(BatchID);
// NKC2: controllo SE sia un batch tipo ancestor (1° invio)
if (currType == BatchType.Ancestor)
{
// recupero batch descendant
var tabDesc = ComLib.BatchDescendant(BatchID);
if (tabDesc != null && tabDesc.Count > 0)
{
batchSent = false;
// ciclo fino a trovare un batch VALIDO (= contiene ordini)
foreach (var item in tabDesc)
{
batchProcessed = false;
// 2021.07.19 FIX x caso batch vuoto: se non ho pezzi --> approvo direttamente e passo al successivo...
var tabItems = DLMan.taIL.getByBatch(item.BatchID);
if (tabItems != null)
{
// --> invio batch
if (tabItems.Count > 0)
{
// primo parto da indice 10...
ComLib.sendBatchReq(item.BatchID, "Nesting", 2, false, nextIndex);
// registro su DB nesting iniziato...
DLMan.taBL.updateStatus(item.BatchID, (int)BatchStatus.NestRequested, "", -1);
batchProcessed = true;
batchSent = true;
}
}
//--> approvo direttamente e passo al successivo... (annullo batch)
if (!batchProcessed)
{
// registro su DB batch DISCARDED (NON HA PEZZI...)
DLMan.taBL.updateStatus(item.BatchID, (int)BatchStatus.Discarded, "", -1);
}
// se ho fatto --> esco
if (batchSent)
break;
}
}
}
// NKC2: se è un batch ti dipo descendant (invii successivi)
if (currType == BatchType.Descendant)
{
// verifico se ce ne siano altri NON validati (ma splitted)
var tabDesc = ComLib.BatchOtherDescendant(BatchID);
if (tabDesc != null && tabDesc.Count > 0)
{
batchSent = false;
// ciclo x tutte le righe che NON fossero con nesting effettuato
foreach (var item in tabDesc)
{
batchProcessed = false;
// se c'è qualcosa da processare lo richiede
if (item.STATUS == 2)
{
nextIndex += 50;
// 2021.07.19 FIX x caso batch vuoto: se non ho pezzi --> approvo direttamente e passo al successivo...
var tabItems = DLMan.taIL.getByBatch(item.BatchID);
if (tabItems != null)
{
// --> invio batch
if (tabItems.Count > 0)
{
ComLib.sendBatchReq(item.BatchID, "Nesting", 2, false, nextIndex);
// registro su DB nesting iniziato...
DLMan.taBL.updateStatus(item.BatchID, (int)BatchStatus.NestRequested, "", -1);
batchProcessed = true;
batchSent = true;
}
}
//--> approvo direttamente e passo al successivo... (annullo batch)
if (!batchProcessed)
{
// registro su DB batch DISCARDED (NON HA PEZZI...)
DLMan.taBL.updateStatus(item.BatchID, (int)BatchStatus.Discarded, "", -1);
}
// se ho fatto --> esco
if (batchSent)
break;
}
// se non ha trovato nulla --> prova update Batch Ancestor...
}
}
}
return batchSent;
}
/// <summary> /// <summary>
/// verifica che lo status e la decodifica ci siano... /// verifica che lo status e la decodifica ci siano...
/// </summary> /// </summary>
@@ -1372,6 +1468,19 @@ namespace AppData
return context.Request.ServerVariables["REMOTE_ADDR"]; return context.Request.ServerVariables["REMOTE_ADDR"];
} }
public static bool getMachLiveStatus(string machine)
{
bool isLive = false;
/// cerco in redis...
string redKey = $"{redProdMachStateLive}:{machine}";
string redVal = memLayer.ML.getRSV(redKey);
if (!string.IsNullOrEmpty(redVal))
{
bool.TryParse(redVal, out isLive);
}
return isLive;
}
/// <summary> /// <summary>
/// Restituisce il prossimo codice di envelope per comunicare con sistemi esterni /// Restituisce il prossimo codice di envelope per comunicare con sistemi esterni
/// </summary> /// </summary>
@@ -2032,6 +2141,18 @@ namespace AppData
return answ; return answ;
} }
/// <summary>
/// Effettua divisione evitando zeri a den...
/// </summary>
/// <param name="num"></param>
/// <param name="den"></param>
/// <returns></returns>
public static double ratioProt(double num, double den)
{
den = den == 0 ? 1 : den;
return num / den;
}
/// <summary> /// <summary>
/// Leggo il Takt inviato /// Leggo il Takt inviato
/// </summary> /// </summary>
@@ -2246,111 +2367,6 @@ namespace AppData
return answ; return answ;
} }
/// <summary>
/// Invia una richiesta di esecuzione di Nesting x un Batch ANCESTOR
/// </summary>
/// <param name="BatchID">Batch di cui si chiede processing</param>
/// <returns></returns>
public static bool checkSendBatchSplit(int BatchID)
{
int nextIndex = 10;
bool batchSent = false;
bool batchProcessed = false;
DataLayer DLMan = new DataLayer();
var currType = ComLib.BType(BatchID);
// NKC2: controllo SE sia un batch tipo ancestor (1° invio)
if (currType == BatchType.Ancestor)
{
// recupero batch descendant
var tabDesc = ComLib.BatchDescendant(BatchID);
if (tabDesc != null && tabDesc.Count > 0)
{
batchSent = false;
// ciclo fino a trovare un batch VALIDO (= contiene ordini)
foreach (var item in tabDesc)
{
batchProcessed = false;
// 2021.07.19 FIX x caso batch vuoto: se non ho pezzi --> approvo direttamente e passo al successivo...
var tabItems = DLMan.taIL.getByBatch(item.BatchID);
if (tabItems != null)
{
// --> invio batch
if (tabItems.Count > 0)
{
// primo parto da indice 10...
ComLib.sendBatchReq(item.BatchID, "Nesting", 2, false, nextIndex);
// registro su DB nesting iniziato...
DLMan.taBL.updateStatus(item.BatchID, (int)BatchStatus.NestRequested, "", -1);
batchProcessed = true;
batchSent = true;
}
}
//--> approvo direttamente e passo al successivo... (annullo batch)
if (!batchProcessed)
{
// registro su DB batch DISCARDED (NON HA PEZZI...)
DLMan.taBL.updateStatus(item.BatchID, (int)BatchStatus.Discarded, "", -1);
}
// se ho fatto --> esco
if (batchSent)
break;
}
}
}
// NKC2: se è un batch ti dipo descendant (invii successivi)
if (currType == BatchType.Descendant)
{
// verifico se ce ne siano altri NON validati (ma splitted)
var tabDesc = ComLib.BatchOtherDescendant(BatchID);
if (tabDesc != null && tabDesc.Count > 0)
{
batchSent = false;
// ciclo x tutte le righe che NON fossero con nesting effettuato
foreach (var item in tabDesc)
{
batchProcessed = false;
// se c'è qualcosa da processare lo richiede
if (item.STATUS == 2)
{
nextIndex += 50;
// 2021.07.19 FIX x caso batch vuoto: se non ho pezzi --> approvo direttamente e passo al successivo...
var tabItems = DLMan.taIL.getByBatch(item.BatchID);
if (tabItems != null)
{
// --> invio batch
if (tabItems.Count > 0)
{
ComLib.sendBatchReq(item.BatchID, "Nesting", 2, false, nextIndex);
// registro su DB nesting iniziato...
DLMan.taBL.updateStatus(item.BatchID, (int)BatchStatus.NestRequested, "", -1);
batchProcessed = true;
batchSent = true;
}
}
//--> approvo direttamente e passo al successivo... (annullo batch)
if (!batchProcessed)
{
// registro su DB batch DISCARDED (NON HA PEZZI...)
DLMan.taBL.updateStatus(item.BatchID, (int)BatchStatus.Discarded, "", -1);
}
// se ho fatto --> esco
if (batchSent)
break;
}
// se non ha trovato nulla --> prova update Batch Ancestor...
}
}
}
return batchSent;
}
/// <summary> /// <summary>
/// Invia una richiesta di esecuzione di Nesting x un Batch /// Invia una richiesta di esecuzione di Nesting x un Batch
/// </summary> /// </summary>
@@ -2671,6 +2687,15 @@ namespace AppData
memLayer.ML.setRSV(redCurrSheetId(macchina), SheetID.ToString()); memLayer.ML.setRSV(redCurrSheetId(macchina), SheetID.ToString());
} }
public static bool setMachLiveStatus(string machine, bool isLive)
{
string redKey = $"{redProdMachStateLive}:{machine}";
string redVal = $"{isLive}";
// salvo x 90 sec
bool done = memLayer.ML.setRSV(redKey, redVal, 90);
return done;
}
/// <summary> /// <summary>
/// Salva per 5 sec la richiesta di reload delle pagine MachineUnload /// Salva per 5 sec la richiesta di reload delle pagine MachineUnload
/// </summary> /// </summary>
@@ -2749,6 +2774,7 @@ namespace AppData
/// <param name="BinList"></param> /// <param name="BinList"></param>
public static void updateBinsFromNesting(int BatchID, List<NestBin> BinList) public static void updateBinsFromNesting(int BatchID, List<NestBin> BinList)
{ {
Dictionary<string, string> part2update = new Dictionary<string, string>();
DataLayer DLMan = new DataLayer(); DataLayer DLMan = new DataLayer();
// inizio a processare... bunks! // inizio a processare... bunks!
if (BinList != null) if (BinList != null)
@@ -2772,6 +2798,30 @@ namespace AppData
} }
} }
} }
// verifico se aggiornare part
if (!part2update.ContainsKey(item.PartRev))
{
part2update.Add(item.PartRev, item.PartExtCode);
}
}
// verifico se ho part da aggiornare
if (part2update.Count > 0)
{
// recupero tabella parts in blocco da batch
var item4batch = DLMan.taIL.getByBatch(BatchID);
// chiamo stored x ogni esempio di part
foreach (var item in part2update)
{
var currItemList = item4batch.Where(x => x.ItemExtCode == item.Value).ToList();
if (currItemList != null && currItemList.Count > 0)
{
// processo!
foreach (var currPart in currItemList)
{
DLMan.taIL.updateExtCodeFromBinNesting(BatchID, item.Value, item.Key);
}
}
}
} }
} }
} }
@@ -2880,25 +2930,6 @@ namespace AppData
} }
} }
/// <summary>
/// Verifica ed eventualmente aggiunge part da aggiornare all'elenco
/// </summary>
/// <param name="part2update"></param>
/// <param name="partList"></param>
private static void addPart2Upd(ref Dictionary<string, int> part2update, List<Part> partList)
{
foreach (var item in partList)
{
if (!part2update.ContainsKey(item.PartRev))
{
part2update.Add(item.PartRev, item.PartId);
}
}
}
/// <summary> /// <summary>
/// Processa elenco items e salva in redis valori x css, elenchi, ... /// Processa elenco items e salva in redis valori x css, elenchi, ...
/// </summary> /// </summary>
@@ -3343,6 +3374,76 @@ namespace AppData
return answ; return answ;
} }
/// <summary>
/// Effettua il ricalcolo delle statistiche x SheetStat --> BatchStat dato un BatchID recuperando i dati da MongoDB
/// </summary>
/// <param name="BatchID"></param>
/// <returns></returns>
public bool updateSheetStatsByBatch(int BatchID)
{
bool answ = false;
DataLayer DLMan = new DataLayer();
List<int> PaintPartList = new List<int>();
// cerco da lista salvataggi Estim/Nest...
var nestAnsw = getNestAnsw(BatchID);
if (nestAnsw != null)
{
// inizio eliminando le vecchie statistiche x foglio
DLMan.taShStats.resetBatch(BatchID);
// recupero i pitturati
try
{
if (nestAnsw.BinList != null)
{
foreach (var bin in nestAnsw.BinList)
{
// se ho parti le aggiungo
if (bin.PartList != null)
{
foreach (var Part in bin.PartList)
{
PaintPartList.Add(Part.PartId);
}
}
}
}
}
catch
{ }
// il tot delle part è in bunk > Sheet > part
try
{
if (nestAnsw.BunkList != null)
{
foreach (var bunk in nestAnsw.BunkList)
{
foreach (var sheet in bunk.SheetList)
{
// dati resa superfici
double num = sheet.SurfaceWork > 0 ? sheet.SurfaceWork : 0;
double den = sheet.SurfaceTotal > 0 ? sheet.SurfaceTotal : 1;
// parts del foglio
List<int> PartList = sheet.PartList.Select(x => x.PartId).ToList();
int numPaint = PartList.Intersect(PaintPartList).Count();
// qui salvo le statistiche
DLMan.taShStats.upsertQuery(BatchID, sheet.SheetIndex, sheet.MatId, (decimal)num, (decimal)den, sheet.PartList.Count, numPaint);
}
}
}
}
catch
{ }
// finisco calcolando le statistiche x Batch...
DLMan.taBStats.refresh(BatchID);
}
return answ;
}
#endregion Public Methods #endregion Public Methods
#region Public Classes #region Public Classes
+2127 -206
View File
File diff suppressed because it is too large Load Diff
+248 -5
View File
@@ -134,6 +134,17 @@ FROM v_BatchList</CommandText>
</DbCommand> </DbCommand>
</SelectCommand> </SelectCommand>
</DbSource> </DbSource>
<DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_Batch_getApprovedByTakt" DbObjectType="StoredProcedure" GenerateMethods="Get" GenerateShortCommands="true" GeneratorGetMethodName="getApprovedByTakt" GetMethodModifier="Public" GetMethodName="getApprovedByTakt" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="getApprovedByTakt" UserSourceName="getApprovedByTakt">
<SelectCommand>
<DbCommand CommandType="StoredProcedure" ModifiedByUser="false">
<CommandText>dbo.stp_Batch_getApprovedByTakt</CommandText>
<Parameters>
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="ReturnValue" ParameterName="@RETURN_VALUE" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="nvarchar" DbType="String" Direction="Input" ParameterName="@Takt" Precision="0" ProviderType="NVarChar" Scale="0" Size="50" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</SelectCommand>
</DbSource>
<DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_Batch_getByKey" DbObjectType="StoredProcedure" GenerateMethods="Get" GenerateShortCommands="true" GeneratorGetMethodName="getByKey" GetMethodModifier="Public" GetMethodName="getByKey" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="getByKey" UserSourceName="getByKey"> <DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_Batch_getByKey" DbObjectType="StoredProcedure" GenerateMethods="Get" GenerateShortCommands="true" GeneratorGetMethodName="getByKey" GetMethodModifier="Public" GetMethodName="getByKey" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="getByKey" UserSourceName="getByKey">
<SelectCommand> <SelectCommand>
<DbCommand CommandType="StoredProcedure" ModifiedByUser="false"> <DbCommand CommandType="StoredProcedure" ModifiedByUser="false">
@@ -1040,7 +1051,20 @@ SELECT ItemID, StatusID, KitID, ItemDtmx, ItemExtCode, ItemDesc, ItemNote, ItemQ
</DbCommand> </DbCommand>
</SelectCommand> </SelectCommand>
</DbSource> </DbSource>
<DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_IL_updateExtCodeFromNesting" DbObjectType="StoredProcedure" GenerateShortCommands="true" GeneratorSourceName="updateExtCodeFromNesting" Modifier="Public" Name="updateExtCodeFromNesting" QueryType="NoData" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy7" UserSourceName="updateExtCodeFromNesting"> <DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_IL_updateExtCodeFromBinNesting" DbObjectType="StoredProcedure" GenerateShortCommands="true" GeneratorSourceName="updateExtCodeFromBinNesting" Modifier="Public" Name="updateExtCodeFromBinNesting" QueryType="NoData" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy3" UserSourceName="updateExtCodeFromBinNesting">
<SelectCommand>
<DbCommand CommandType="StoredProcedure" ModifiedByUser="false">
<CommandText>dbo.stp_IL_updateExtCodeFromBinNesting</CommandText>
<Parameters>
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="ReturnValue" ParameterName="@RETURN_VALUE" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@BatchID" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="nvarchar" DbType="String" Direction="Input" ParameterName="@PartExtCode" Precision="0" ProviderType="NVarChar" Scale="0" Size="50" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="nvarchar" DbType="String" Direction="Input" ParameterName="@PartRev" Precision="0" ProviderType="NVarChar" Scale="0" Size="50" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</SelectCommand>
</DbSource>
<DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_IL_updateExtCodeFromNesting" DbObjectType="StoredProcedure" GenerateShortCommands="true" GeneratorSourceName="updateExtCodeFromNesting" Modifier="Public" Name="updateExtCodeFromNesting" QueryType="NoData" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy4" UserSourceName="updateExtCodeFromNesting">
<SelectCommand> <SelectCommand>
<DbCommand CommandType="StoredProcedure" ModifiedByUser="false"> <DbCommand CommandType="StoredProcedure" ModifiedByUser="false">
<CommandText>dbo.stp_IL_updateExtCodeFromNesting</CommandText> <CommandText>dbo.stp_IL_updateExtCodeFromNesting</CommandText>
@@ -1053,7 +1077,7 @@ SELECT ItemID, StatusID, KitID, ItemDtmx, ItemExtCode, ItemDesc, ItemNote, ItemQ
</DbCommand> </DbCommand>
</SelectCommand> </SelectCommand>
</DbSource> </DbSource>
<DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_IL_updateFromNesting" DbObjectType="StoredProcedure" GenerateShortCommands="true" GeneratorSourceName="updateFromNesting" Modifier="Public" Name="updateFromNesting" QueryType="NoData" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy3" UserSourceName="updateFromNesting"> <DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_IL_updateFromNesting" DbObjectType="StoredProcedure" GenerateShortCommands="true" GeneratorSourceName="updateFromNesting" Modifier="Public" Name="updateFromNesting" QueryType="NoData" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy5" UserSourceName="updateFromNesting">
<SelectCommand> <SelectCommand>
<DbCommand CommandType="StoredProcedure" ModifiedByUser="false"> <DbCommand CommandType="StoredProcedure" ModifiedByUser="false">
<CommandText>dbo.stp_IL_updateFromNesting</CommandText> <CommandText>dbo.stp_IL_updateFromNesting</CommandText>
@@ -1068,7 +1092,7 @@ SELECT ItemID, StatusID, KitID, ItemDtmx, ItemExtCode, ItemDesc, ItemNote, ItemQ
</DbCommand> </DbCommand>
</SelectCommand> </SelectCommand>
</DbSource> </DbSource>
<DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_IL_updateSheetStatus" DbObjectType="StoredProcedure" GenerateShortCommands="true" GeneratorSourceName="updateSheetStatus" Modifier="Public" Name="updateSheetStatus" QueryType="NoData" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy4" UserSourceName="updateSheetStatus"> <DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_IL_updateSheetStatus" DbObjectType="StoredProcedure" GenerateShortCommands="true" GeneratorSourceName="updateSheetStatus" Modifier="Public" Name="updateSheetStatus" QueryType="NoData" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy6" UserSourceName="updateSheetStatus">
<SelectCommand> <SelectCommand>
<DbCommand CommandType="StoredProcedure" ModifiedByUser="false"> <DbCommand CommandType="StoredProcedure" ModifiedByUser="false">
<CommandText>dbo.stp_IL_updateSheetStatus</CommandText> <CommandText>dbo.stp_IL_updateSheetStatus</CommandText>
@@ -1081,7 +1105,7 @@ SELECT ItemID, StatusID, KitID, ItemDtmx, ItemExtCode, ItemDesc, ItemNote, ItemQ
</DbCommand> </DbCommand>
</SelectCommand> </SelectCommand>
</DbSource> </DbSource>
<DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_IL_updateSheetStatusPU" DbObjectType="StoredProcedure" GenerateShortCommands="true" GeneratorSourceName="updateSheetStatusPU" Modifier="Public" Name="updateSheetStatusPU" QueryType="NoData" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy5" UserSourceName="updateSheetStatusPU"> <DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_IL_updateSheetStatusPU" DbObjectType="StoredProcedure" GenerateShortCommands="true" GeneratorSourceName="updateSheetStatusPU" Modifier="Public" Name="updateSheetStatusPU" QueryType="NoData" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy7" UserSourceName="updateSheetStatusPU">
<SelectCommand> <SelectCommand>
<DbCommand CommandType="StoredProcedure" ModifiedByUser="false"> <DbCommand CommandType="StoredProcedure" ModifiedByUser="false">
<CommandText>dbo.stp_IL_updateSheetStatusPU</CommandText> <CommandText>dbo.stp_IL_updateSheetStatusPU</CommandText>
@@ -1093,7 +1117,7 @@ SELECT ItemID, StatusID, KitID, ItemDtmx, ItemExtCode, ItemDesc, ItemNote, ItemQ
</DbCommand> </DbCommand>
</SelectCommand> </SelectCommand>
</DbSource> </DbSource>
<DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_IL_updateStatus" DbObjectType="StoredProcedure" GenerateShortCommands="true" GeneratorSourceName="updateStatus" Modifier="Public" Name="updateStatus" QueryType="NoData" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy6" UserSourceName="updateStatus"> <DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_IL_updateStatus" DbObjectType="StoredProcedure" GenerateShortCommands="true" GeneratorSourceName="updateStatus" Modifier="Public" Name="updateStatus" QueryType="NoData" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy8" UserSourceName="updateStatus">
<SelectCommand> <SelectCommand>
<DbCommand CommandType="StoredProcedure" ModifiedByUser="false"> <DbCommand CommandType="StoredProcedure" ModifiedByUser="false">
<CommandText>dbo.stp_IL_updateStatus</CommandText> <CommandText>dbo.stp_IL_updateStatus</CommandText>
@@ -3644,6 +3668,181 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</Mappings> </Mappings>
<Sources /> <Sources />
</TableAdapter> </TableAdapter>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="SheetStatsTableAdapter" GeneratorDataComponentClassName="SheetStatsTableAdapter" Name="SheetStats" UserDataComponentName="SheetStatsTableAdapter">
<MainSource>
<DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.SheetStats" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="false" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="false" UserGetMethodName="GetData" UserSourceName="Fill">
<DeleteCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>DELETE FROM [SheetStats] WHERE (([BatchID] = @Original_BatchID) AND ([SheetIndex] = @Original_SheetIndex))</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_BatchID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="BatchID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_SheetIndex" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="SheetIndex" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</DeleteCommand>
<InsertCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>INSERT INTO [SheetStats] ([BatchID], [SheetIndex], [MatID], [WorkArea], [TotalArea], [NumParts], [NumPainted]) VALUES (@BatchID, @SheetIndex, @MatID, @WorkArea, @TotalArea, @NumParts, @NumPainted);
SELECT BatchID, SheetIndex, MatID, WorkArea, TotalArea, NumParts, NumPainted FROM SheetStats WHERE (BatchID = @BatchID) AND (SheetIndex = @SheetIndex)</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@BatchID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="BatchID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@SheetIndex" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="SheetIndex" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@MatID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="MatID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Decimal" Direction="Input" ParameterName="@WorkArea" Precision="18" ProviderType="Decimal" Scale="3" Size="0" SourceColumn="WorkArea" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Decimal" Direction="Input" ParameterName="@TotalArea" Precision="18" ProviderType="Decimal" Scale="3" Size="0" SourceColumn="TotalArea" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@NumParts" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="NumParts" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@NumPainted" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="NumPainted" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</InsertCommand>
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>SELECT *
FROM SheetStats</CommandText>
<Parameters />
</DbCommand>
</SelectCommand>
<UpdateCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>UPDATE [SheetStats] SET [BatchID] = @BatchID, [SheetIndex] = @SheetIndex, [MatID] = @MatID, [WorkArea] = @WorkArea, [TotalArea] = @TotalArea, [NumParts] = @NumParts, [NumPainted] = @NumPainted WHERE (([BatchID] = @Original_BatchID) AND ([SheetIndex] = @Original_SheetIndex));
SELECT BatchID, SheetIndex, MatID, WorkArea, TotalArea, NumParts, NumPainted FROM SheetStats WHERE (BatchID = @BatchID) AND (SheetIndex = @SheetIndex)</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@BatchID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="BatchID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@SheetIndex" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="SheetIndex" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@MatID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="MatID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Decimal" Direction="Input" ParameterName="@WorkArea" Precision="18" ProviderType="Decimal" Scale="3" Size="0" SourceColumn="WorkArea" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Decimal" Direction="Input" ParameterName="@TotalArea" Precision="18" ProviderType="Decimal" Scale="3" Size="0" SourceColumn="TotalArea" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@NumParts" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="NumParts" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@NumPainted" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="NumPainted" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_BatchID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="BatchID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_SheetIndex" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="SheetIndex" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</UpdateCommand>
</DbSource>
</MainSource>
<Mappings>
<Mapping SourceColumn="BatchID" DataSetColumn="BatchID" />
<Mapping SourceColumn="SheetIndex" DataSetColumn="SheetIndex" />
<Mapping SourceColumn="MatID" DataSetColumn="MatID" />
<Mapping SourceColumn="WorkArea" DataSetColumn="WorkArea" />
<Mapping SourceColumn="TotalArea" DataSetColumn="TotalArea" />
<Mapping SourceColumn="NumParts" DataSetColumn="NumParts" />
<Mapping SourceColumn="NumPainted" DataSetColumn="NumPainted" />
</Mappings>
<Sources>
<DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_SheetStat_resetQuery" DbObjectType="StoredProcedure" GenerateShortCommands="true" GeneratorSourceName="resetBatch" Modifier="Public" Name="resetBatch" QueryType="NoData" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy" UserSourceName="resetBatch">
<SelectCommand>
<DbCommand CommandType="StoredProcedure" ModifiedByUser="false">
<CommandText>dbo.stp_SheetStat_resetQuery</CommandText>
<Parameters>
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="ReturnValue" ParameterName="@RETURN_VALUE" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@BatchID" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</SelectCommand>
</DbSource>
<DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_SheetStat_upsertQuery" DbObjectType="StoredProcedure" GenerateShortCommands="true" GeneratorSourceName="upsertQuery" Modifier="Public" Name="upsertQuery" QueryType="NoData" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy1" UserSourceName="upsertQuery">
<SelectCommand>
<DbCommand CommandType="StoredProcedure" ModifiedByUser="false">
<CommandText>dbo.stp_SheetStat_upsertQuery</CommandText>
<Parameters>
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="ReturnValue" ParameterName="@RETURN_VALUE" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@BatchID" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@SheetIndex" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@MatID" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="numeric" DbType="Decimal" Direction="Input" ParameterName="@WorkArea" Precision="18" ProviderType="Decimal" Scale="3" Size="9" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="numeric" DbType="Decimal" Direction="Input" ParameterName="@TotalArea" Precision="18" ProviderType="Decimal" Scale="3" Size="9" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@NumParts" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@NumPainted" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</SelectCommand>
</DbSource>
</Sources>
</TableAdapter>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="BatchStatsTableAdapter" GeneratorDataComponentClassName="BatchStatsTableAdapter" Name="BatchStats" UserDataComponentName="BatchStatsTableAdapter">
<MainSource>
<DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.BatchStats" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="false" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="false" UserGetMethodName="GetData" UserSourceName="Fill">
<DeleteCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>DELETE FROM [BatchStats] WHERE (([BatchID] = @Original_BatchID))</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_BatchID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="BatchID" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</DeleteCommand>
<InsertCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>INSERT INTO [BatchStats] ([BatchID], [Takt], [AvgYeld], [TotalArea], [NumMat], [NumSheets], [NumModel], [NumKit], [NumParts], [NumPainted]) VALUES (@BatchID, @Takt, @AvgYeld, @TotalArea, @NumMat, @NumSheets, @NumModel, @NumKit, @NumParts, @NumPainted);
SELECT BatchID, Takt, AvgYeld, TotalArea, NumMat, NumSheets, NumModel, NumKit, NumParts, NumPainted FROM BatchStats WHERE (BatchID = @BatchID)</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@BatchID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="BatchID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="@Takt" Precision="0" ProviderType="NVarChar" Scale="0" Size="0" SourceColumn="Takt" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Decimal" Direction="Input" ParameterName="@AvgYeld" Precision="18" ProviderType="Decimal" Scale="9" Size="0" SourceColumn="AvgYeld" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Decimal" Direction="Input" ParameterName="@TotalArea" Precision="18" ProviderType="Decimal" Scale="3" Size="0" SourceColumn="TotalArea" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@NumMat" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="NumMat" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@NumSheets" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="NumSheets" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@NumModel" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="NumModel" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@NumKit" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="NumKit" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@NumParts" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="NumParts" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@NumPainted" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="NumPainted" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</InsertCommand>
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>SELECT * FROM BatchStats</CommandText>
<Parameters />
</DbCommand>
</SelectCommand>
<UpdateCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>UPDATE [BatchStats] SET [BatchID] = @BatchID, [Takt] = @Takt, [AvgYeld] = @AvgYeld, [TotalArea] = @TotalArea, [NumMat] = @NumMat, [NumSheets] = @NumSheets, [NumModel] = @NumModel, [NumKit] = @NumKit, [NumParts] = @NumParts, [NumPainted] = @NumPainted WHERE (([BatchID] = @Original_BatchID));
SELECT BatchID, Takt, AvgYeld, TotalArea, NumMat, NumSheets, NumModel, NumKit, NumParts, NumPainted FROM BatchStats WHERE (BatchID = @BatchID)</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@BatchID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="BatchID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="@Takt" Precision="0" ProviderType="NVarChar" Scale="0" Size="0" SourceColumn="Takt" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Decimal" Direction="Input" ParameterName="@AvgYeld" Precision="18" ProviderType="Decimal" Scale="9" Size="0" SourceColumn="AvgYeld" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Decimal" Direction="Input" ParameterName="@TotalArea" Precision="18" ProviderType="Decimal" Scale="3" Size="0" SourceColumn="TotalArea" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@NumMat" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="NumMat" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@NumSheets" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="NumSheets" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@NumModel" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="NumModel" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@NumKit" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="NumKit" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@NumParts" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="NumParts" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@NumPainted" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="NumPainted" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_BatchID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="BatchID" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</UpdateCommand>
</DbSource>
</MainSource>
<Mappings>
<Mapping SourceColumn="BatchID" DataSetColumn="BatchID" />
<Mapping SourceColumn="Takt" DataSetColumn="Takt" />
<Mapping SourceColumn="AvgYeld" DataSetColumn="AvgYeld" />
<Mapping SourceColumn="TotalArea" DataSetColumn="TotalArea" />
<Mapping SourceColumn="NumMat" DataSetColumn="NumMat" />
<Mapping SourceColumn="NumSheets" DataSetColumn="NumSheets" />
<Mapping SourceColumn="NumModel" DataSetColumn="NumModel" />
<Mapping SourceColumn="NumKit" DataSetColumn="NumKit" />
<Mapping SourceColumn="NumParts" DataSetColumn="NumParts" />
<Mapping SourceColumn="NumPainted" DataSetColumn="NumPainted" />
</Mappings>
<Sources>
<DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_BatchStat_refresh" DbObjectType="StoredProcedure" GenerateShortCommands="true" GeneratorSourceName="refresh" Modifier="Public" Name="refresh" QueryType="NoData" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy" UserSourceName="refresh">
<SelectCommand>
<DbCommand CommandType="StoredProcedure" ModifiedByUser="false">
<CommandText>dbo.stp_BatchStat_refresh</CommandText>
<Parameters>
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="ReturnValue" ParameterName="@RETURN_VALUE" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@BatchID" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</SelectCommand>
</DbSource>
</Sources>
</TableAdapter>
</Tables> </Tables>
<Sources /> <Sources />
</DataSource> </DataSource>
@@ -5218,6 +5417,41 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="SheetStats" msprop:Generator_TableClassName="SheetStatsDataTable" msprop:Generator_TableVarName="tableSheetStats" msprop:Generator_RowChangedName="SheetStatsRowChanged" msprop:Generator_TablePropName="SheetStats" msprop:Generator_RowDeletingName="SheetStatsRowDeleting" msprop:Generator_RowChangingName="SheetStatsRowChanging" msprop:Generator_RowEvHandlerName="SheetStatsRowChangeEventHandler" msprop:Generator_RowDeletedName="SheetStatsRowDeleted" msprop:Generator_RowClassName="SheetStatsRow" msprop:Generator_UserTableName="SheetStats" msprop:Generator_RowEvArgName="SheetStatsRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="BatchID" msprop:Generator_ColumnVarNameInTable="columnBatchID" msprop:Generator_ColumnPropNameInRow="BatchID" msprop:Generator_ColumnPropNameInTable="BatchIDColumn" msprop:Generator_UserColumnName="BatchID" type="xs:int" />
<xs:element name="SheetIndex" msprop:Generator_ColumnVarNameInTable="columnSheetIndex" msprop:Generator_ColumnPropNameInRow="SheetIndex" msprop:Generator_ColumnPropNameInTable="SheetIndexColumn" msprop:Generator_UserColumnName="SheetIndex" type="xs:int" />
<xs:element name="MatID" msprop:Generator_ColumnVarNameInTable="columnMatID" msprop:Generator_ColumnPropNameInRow="MatID" msprop:Generator_ColumnPropNameInTable="MatIDColumn" msprop:Generator_UserColumnName="MatID" type="xs:int" />
<xs:element name="WorkArea" msprop:Generator_ColumnVarNameInTable="columnWorkArea" msprop:Generator_ColumnPropNameInRow="WorkArea" msprop:Generator_ColumnPropNameInTable="WorkAreaColumn" msprop:Generator_UserColumnName="WorkArea" type="xs:decimal" />
<xs:element name="TotalArea" msprop:Generator_ColumnVarNameInTable="columnTotalArea" msprop:Generator_ColumnPropNameInRow="TotalArea" msprop:Generator_ColumnPropNameInTable="TotalAreaColumn" msprop:Generator_UserColumnName="TotalArea" type="xs:decimal" />
<xs:element name="NumParts" msprop:Generator_ColumnVarNameInTable="columnNumParts" msprop:Generator_ColumnPropNameInRow="NumParts" msprop:Generator_ColumnPropNameInTable="NumPartsColumn" msprop:Generator_UserColumnName="NumParts" type="xs:int" />
<xs:element name="NumPainted" msprop:Generator_ColumnVarNameInTable="columnNumPainted" msprop:Generator_ColumnPropNameInRow="NumPainted" msprop:Generator_ColumnPropNameInTable="NumPaintedColumn" msprop:Generator_UserColumnName="NumPainted" type="xs:int" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="BatchStats" msprop:Generator_TableClassName="BatchStatsDataTable" msprop:Generator_TableVarName="tableBatchStats" msprop:Generator_RowChangedName="BatchStatsRowChanged" msprop:Generator_TablePropName="BatchStats" msprop:Generator_RowDeletingName="BatchStatsRowDeleting" msprop:Generator_RowChangingName="BatchStatsRowChanging" msprop:Generator_RowEvHandlerName="BatchStatsRowChangeEventHandler" msprop:Generator_RowDeletedName="BatchStatsRowDeleted" msprop:Generator_RowClassName="BatchStatsRow" msprop:Generator_UserTableName="BatchStats" msprop:Generator_RowEvArgName="BatchStatsRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="BatchID" msprop:Generator_ColumnVarNameInTable="columnBatchID" msprop:Generator_ColumnPropNameInRow="BatchID" msprop:Generator_ColumnPropNameInTable="BatchIDColumn" msprop:Generator_UserColumnName="BatchID" type="xs:int" />
<xs:element name="Takt" msprop:Generator_ColumnVarNameInTable="columnTakt" msprop:Generator_ColumnPropNameInRow="Takt" msprop:Generator_ColumnPropNameInTable="TaktColumn" msprop:Generator_UserColumnName="Takt">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="AvgYeld" msprop:Generator_ColumnVarNameInTable="columnAvgYeld" msprop:Generator_ColumnPropNameInRow="AvgYeld" msprop:Generator_ColumnPropNameInTable="AvgYeldColumn" msprop:Generator_UserColumnName="AvgYeld" type="xs:decimal" />
<xs:element name="TotalArea" msprop:Generator_ColumnVarNameInTable="columnTotalArea" msprop:Generator_ColumnPropNameInRow="TotalArea" msprop:Generator_ColumnPropNameInTable="TotalAreaColumn" msprop:Generator_UserColumnName="TotalArea" type="xs:decimal" />
<xs:element name="NumMat" msprop:Generator_ColumnVarNameInTable="columnNumMat" msprop:Generator_ColumnPropNameInRow="NumMat" msprop:Generator_ColumnPropNameInTable="NumMatColumn" msprop:Generator_UserColumnName="NumMat" type="xs:int" />
<xs:element name="NumSheets" msprop:Generator_ColumnVarNameInTable="columnNumSheets" msprop:Generator_ColumnPropNameInRow="NumSheets" msprop:Generator_ColumnPropNameInTable="NumSheetsColumn" msprop:Generator_UserColumnName="NumSheets" type="xs:int" />
<xs:element name="NumModel" msprop:Generator_ColumnVarNameInTable="columnNumModel" msprop:Generator_ColumnPropNameInRow="NumModel" msprop:Generator_ColumnPropNameInTable="NumModelColumn" msprop:Generator_UserColumnName="NumModel" type="xs:int" />
<xs:element name="NumKit" msprop:Generator_ColumnVarNameInTable="columnNumKit" msprop:Generator_ColumnPropNameInRow="NumKit" msprop:Generator_ColumnPropNameInTable="NumKitColumn" msprop:Generator_UserColumnName="NumKit" type="xs:int" />
<xs:element name="NumParts" msprop:Generator_ColumnVarNameInTable="columnNumParts" msprop:Generator_ColumnPropNameInRow="NumParts" msprop:Generator_ColumnPropNameInTable="NumPartsColumn" msprop:Generator_UserColumnName="NumParts" type="xs:int" />
<xs:element name="NumPainted" msprop:Generator_ColumnVarNameInTable="columnNumPainted" msprop:Generator_ColumnPropNameInRow="NumPainted" msprop:Generator_ColumnPropNameInTable="NumPaintedColumn" msprop:Generator_UserColumnName="NumPainted" type="xs:int" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice> </xs:choice>
</xs:complexType> </xs:complexType>
<xs:unique name="Constraint1" msdata:PrimaryKey="true"> <xs:unique name="Constraint1" msdata:PrimaryKey="true">
@@ -5385,6 +5619,15 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
<xs:selector xpath=".//mstns:UpdMan" /> <xs:selector xpath=".//mstns:UpdMan" />
<xs:field xpath="mstns:AppName" /> <xs:field xpath="mstns:AppName" />
</xs:unique> </xs:unique>
<xs:unique name="SheetStats_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
<xs:selector xpath=".//mstns:SheetStats" />
<xs:field xpath="mstns:BatchID" />
<xs:field xpath="mstns:SheetIndex" />
</xs:unique>
<xs:unique name="BatchStats_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
<xs:selector xpath=".//mstns:BatchStats" />
<xs:field xpath="mstns:BatchID" />
</xs:unique>
</xs:element> </xs:element>
<xs:annotation> <xs:annotation>
<xs:appinfo> <xs:appinfo>
+57 -55
View File
@@ -4,53 +4,55 @@
Changes to this file may cause incorrect behavior and will be lost if Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated. the code is regenerated.
</autogenerated>--> </autogenerated>-->
<DiagramLayout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ex:showrelationlabel="False" ViewPortX="-24" ViewPortY="-53" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout"> <DiagramLayout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ex:showrelationlabel="False" ViewPortX="-24" ViewPortY="1372" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<Shapes> <Shapes>
<Shape ID="DesignTable:BatchList" ZOrder="3" X="325" Y="437" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" /> <Shape ID="DesignTable:BatchList" ZOrder="5" X="325" Y="437" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:StackList" ZOrder="4" X="618" Y="961" Height="381" Width="268" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" /> <Shape ID="DesignTable:StackList" ZOrder="6" X="618" Y="961" Height="381" Width="268" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:SheetList" ZOrder="1" X="300" Y="824" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" /> <Shape ID="DesignTable:SheetList" ZOrder="3" X="300" Y="824" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:OrderList" ZOrder="14" X="284" Y="61" Height="343" Width="198" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" /> <Shape ID="DesignTable:OrderList" ZOrder="16" X="284" Y="61" Height="343" Width="198" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:ItemList" ZOrder="43" X="853" Y="87" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" /> <Shape ID="DesignTable:ItemList" ZOrder="45" X="853" Y="87" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:Materials" ZOrder="42" X="1189" Y="105" Height="248" Width="198" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="197" /> <Shape ID="DesignTable:Materials" ZOrder="44" X="1189" Y="105" Height="248" Width="198" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="197" />
<Shape ID="DesignTable:Bins" ZOrder="12" X="1257" Y="597" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" /> <Shape ID="DesignTable:Bins" ZOrder="14" X="1257" Y="597" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:Carts" ZOrder="41" X="592" Y="408" Height="286" Width="204" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" /> <Shape ID="DesignTable:Carts" ZOrder="43" X="592" Y="408" Height="286" Width="204" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
<Shape ID="DesignTable:OfflineOrderList" ZOrder="40" X="921" Y="934" Height="286" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" /> <Shape ID="DesignTable:OfflineOrderList" ZOrder="42" X="921" Y="934" Height="286" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
<Shape ID="DesignTable:OffOrd2Item" ZOrder="39" X="1023" Y="728" Height="134" Width="219" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="64" /> <Shape ID="DesignTable:OffOrd2Item" ZOrder="41" X="1023" Y="728" Height="134" Width="219" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="64" />
<Shape ID="DesignTable:KitList" ZOrder="13" X="634" Y="129" Height="248" Width="194" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="121" /> <Shape ID="DesignTable:KitList" ZOrder="15" X="634" Y="129" Height="248" Width="194" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="121" />
<Shape ID="DesignTable:Nesting" ZOrder="38" X="863" Y="526" Height="153" Width="228" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="83" /> <Shape ID="DesignTable:Nesting" ZOrder="40" X="863" Y="526" Height="153" Width="228" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="83" />
<Shape ID="DesignTable:ImportLog" ZOrder="37" X="593" Y="701" Height="248" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" /> <Shape ID="DesignTable:ImportLog" ZOrder="39" X="593" Y="701" Height="248" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
<Shape ID="DesignTable:BinList" ZOrder="36" X="1256" Y="391" Height="134" Width="216" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="64" /> <Shape ID="DesignTable:BinList" ZOrder="38" X="1256" Y="391" Height="134" Width="216" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="64" />
<Shape ID="DesignTable:FinalKit" ZOrder="35" X="15" Y="525" Height="172" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" /> <Shape ID="DesignTable:FinalKit" ZOrder="37" X="15" Y="525" Height="172" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:Order2FinalKit" ZOrder="34" X="5" Y="308" Height="134" Width="234" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="64" /> <Shape ID="DesignTable:Order2FinalKit" ZOrder="36" X="5" Y="308" Height="134" Width="234" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="64" />
<Shape ID="DesignTable:Counters" ZOrder="33" X="-12" Y="716" Height="172" Width="196" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" /> <Shape ID="DesignTable:Counters" ZOrder="35" X="-12" Y="716" Height="172" Width="196" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:ErrorsLog" ZOrder="32" X="-14" Y="996" Height="248" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="140" /> <Shape ID="DesignTable:ErrorsLog" ZOrder="34" X="-14" Y="996" Height="248" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="140" />
<Shape ID="DesignTable:ItemValidation" ZOrder="31" X="-10" Y="1301" Height="172" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" /> <Shape ID="DesignTable:ItemValidation" ZOrder="33" X="-10" Y="1301" Height="172" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:PartValidPareto" ZOrder="30" X="316" Y="1303" Height="153" Width="236" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" /> <Shape ID="DesignTable:PartValidPareto" ZOrder="32" X="316" Y="1303" Height="153" Width="236" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:UnloadStats" ZOrder="29" X="629" Y="1362" Height="172" Width="215" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="121" /> <Shape ID="DesignTable:UnloadStats" ZOrder="31" X="629" Y="1362" Height="172" Width="215" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="121" />
<Shape ID="DesignTable:Remnants" ZOrder="28" X="904" Y="1256" Height="248" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" /> <Shape ID="DesignTable:Remnants" ZOrder="30" X="904" Y="1256" Height="248" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
<Shape ID="DesignTable:CartOnKit" ZOrder="27" X="1251" Y="993" Height="324" Width="202" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" /> <Shape ID="DesignTable:CartOnKit" ZOrder="29" X="1251" Y="993" Height="324" Width="202" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:PackList" ZOrder="26" X="1248" Y="1319" Height="362" Width="297" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" /> <Shape ID="DesignTable:PackList" ZOrder="28" X="1248" Y="1319" Height="362" Width="297" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
<Shape ID="DesignTable:OtherItem" ZOrder="25" X="636" Y="1822" Height="210" Width="204" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="140" /> <Shape ID="DesignTable:OtherItem" ZOrder="27" X="636" Y="1822" Height="210" Width="204" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="140" />
<Shape ID="DesignTable:ItemSearchDetail" ZOrder="24" X="1468" Y="105" Height="381" Width="244" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" /> <Shape ID="DesignTable:ItemSearchDetail" ZOrder="26" X="1468" Y="105" Height="381" Width="244" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:PackListDet" ZOrder="23" X="931" Y="1520" Height="343" Width="229" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" /> <Shape ID="DesignTable:PackListDet" ZOrder="25" X="931" Y="1520" Height="343" Width="229" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:PackLog" ZOrder="22" X="1224" Y="1751" Height="324" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="197" /> <Shape ID="DesignTable:PackLog" ZOrder="24" X="1224" Y="1751" Height="324" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="197" />
<Shape ID="DesignTable:PackCheck" ZOrder="21" X="636" Y="1560" Height="229" Width="206" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" /> <Shape ID="DesignTable:PackCheck" ZOrder="23" X="636" Y="1560" Height="229" Width="206" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
<Shape ID="DesignTable:OKIB" ZOrder="20" X="33" Y="1493" Height="324" Width="220" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" /> <Shape ID="DesignTable:OKIB" ZOrder="22" X="33" Y="1493" Height="324" Width="220" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:OKIB_Sum" ZOrder="19" X="42" Y="1891" Height="362" Width="220" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" /> <Shape ID="DesignTable:OKIB_Sum" ZOrder="21" X="42" Y="1891" Height="362" Width="220" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:OKOI" ZOrder="18" X="334" Y="1485" Height="324" Width="246" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" /> <Shape ID="DesignTable:OKOI" ZOrder="20" X="334" Y="1485" Height="324" Width="246" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:OKOI_sum" ZOrder="17" X="330" Y="1890" Height="362" Width="246" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" /> <Shape ID="DesignTable:OKOI_sum" ZOrder="19" X="330" Y="1890" Height="362" Width="246" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:Pack2Cart" ZOrder="7" X="911" Y="1873" Height="286" Width="203" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="197" /> <Shape ID="DesignTable:Pack2Cart" ZOrder="9" X="911" Y="1873" Height="286" Width="203" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="197" />
<Shape ID="DesignTable:CartIRK" ZOrder="16" X="640" Y="2064" Height="305" Width="188" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" /> <Shape ID="DesignTable:CartIRK" ZOrder="18" X="640" Y="2064" Height="305" Width="188" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
<Shape ID="DesignTable:FileValidation" ZOrder="11" X="499" Y="-21" Height="191" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="121" /> <Shape ID="DesignTable:FileValidation" ZOrder="13" X="499" Y="-21" Height="191" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="121" />
<Shape ID="DesignTable:SheetsPreview" ZOrder="15" X="65" Y="839" Height="210" Width="228" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" /> <Shape ID="DesignTable:SheetsPreview" ZOrder="17" X="65" Y="839" Height="210" Width="228" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
<Shape ID="DesignTable:OrderListTree" ZOrder="10" X="3" Y="-43" Height="343" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="216" /> <Shape ID="DesignTable:OrderListTree" ZOrder="12" X="3" Y="-43" Height="343" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="216" />
<Shape ID="DesignTable:Places" ZOrder="5" X="862" Y="2175" Height="172" Width="180" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" /> <Shape ID="DesignTable:Places" ZOrder="7" X="862" Y="2175" Height="172" Width="180" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:StatusLog" ZOrder="8" X="1116" Y="2180" Height="248" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" /> <Shape ID="DesignTable:StatusLog" ZOrder="10" X="1116" Y="2180" Height="248" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
<Shape ID="DesignTable:StatusDecode" ZOrder="6" X="849" Y="2353" Height="172" Width="224" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" /> <Shape ID="DesignTable:StatusDecode" ZOrder="8" X="849" Y="2353" Height="172" Width="224" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:UpdMan" ZOrder="2" X="345" Y="2309" Height="191" Width="195" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="140" /> <Shape ID="DesignTable:UpdMan" ZOrder="4" X="636" Y="2374" Height="191" Width="195" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="140" />
<Shape ID="DesignTable:SheetStats" ZOrder="1" X="20" Y="2307" Height="248" Width="239" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
<Shape ID="DesignTable:BatchStats" ZOrder="2" X="301" Y="2284" Height="286" Width="206" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="216" />
</Shapes> </Shapes>
<Connectors> <Connectors>
<Connector ID="DesignRelation:FK_ItemList_Materials1" ZOrder="54" LineWidth="11"> <Connector ID="DesignRelation:FK_ItemList_Materials1" ZOrder="56" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>1189</X> <X>1189</X>
@@ -62,7 +64,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_OffOrd2Item_OfflineOrderList" ZOrder="53" LineWidth="11"> <Connector ID="DesignRelation:FK_OffOrd2Item_OfflineOrderList" ZOrder="55" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>1028</X> <X>1028</X>
@@ -74,7 +76,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_ItemList_KitList" ZOrder="52" LineWidth="11"> <Connector ID="DesignRelation:FK_ItemList_KitList" ZOrder="54" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>828</X> <X>828</X>
@@ -86,7 +88,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_Nesting_ItemList" ZOrder="51" LineWidth="11"> <Connector ID="DesignRelation:FK_Nesting_ItemList" ZOrder="53" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>1116</X> <X>1116</X>
@@ -102,7 +104,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_KitList_Carts" ZOrder="49" LineWidth="11"> <Connector ID="DesignRelation:FK_KitList_Carts" ZOrder="51" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>721</X> <X>721</X>
@@ -114,7 +116,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_KitList_OrderList" ZOrder="50" LineWidth="11"> <Connector ID="DesignRelation:FK_KitList_OrderList" ZOrder="52" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>482</X> <X>482</X>
@@ -126,7 +128,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_OffOrd2Item_ItemList" ZOrder="46" LineWidth="11"> <Connector ID="DesignRelation:FK_OffOrd2Item_ItemList" ZOrder="48" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>1113</X> <X>1113</X>
@@ -138,7 +140,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_BinList_Bins" ZOrder="48" LineWidth="11"> <Connector ID="DesignRelation:FK_BinList_Bins" ZOrder="50" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>1364</X> <X>1364</X>
@@ -150,7 +152,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_BinList_ItemList" ZOrder="47" LineWidth="11"> <Connector ID="DesignRelation:FK_BinList_ItemList" ZOrder="49" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>1153</X> <X>1153</X>
@@ -162,7 +164,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_Order2FinalKit_FinalKit" ZOrder="45" LineWidth="11"> <Connector ID="DesignRelation:FK_Order2FinalKit_FinalKit" ZOrder="47" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>115</X> <X>115</X>
@@ -174,7 +176,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_Order2FinalKit_OrderList" ZOrder="44" LineWidth="11"> <Connector ID="DesignRelation:FK_Order2FinalKit_OrderList" ZOrder="46" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>284</X> <X>284</X>
@@ -186,7 +188,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_StatusLog_Places" ZOrder="9" LineWidth="11"> <Connector ID="DesignRelation:FK_StatusLog_Places" ZOrder="11" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>1042</X> <X>1042</X>
+10 -4
View File
@@ -12,6 +12,7 @@ namespace AppData
public DS_AppTableAdapters.BatchListTableAdapter taBL; public DS_AppTableAdapters.BatchListTableAdapter taBL;
public DS_AppTableAdapters.BinsTableAdapter taBN; public DS_AppTableAdapters.BinsTableAdapter taBN;
public DS_AppTableAdapters.BinListTableAdapter taBNLS; public DS_AppTableAdapters.BinListTableAdapter taBNLS;
public DS_AppTableAdapters.BatchStatsTableAdapter taBStats;
public DS_AppTableAdapters.CartsTableAdapter taCL; public DS_AppTableAdapters.CartsTableAdapter taCL;
public DS_AppTableAdapters.CartOnKitTableAdapter taCOK; public DS_AppTableAdapters.CartOnKitTableAdapter taCOK;
public DS_AppTableAdapters.CountersTableAdapter taCount; public DS_AppTableAdapters.CountersTableAdapter taCount;
@@ -52,12 +53,13 @@ namespace AppData
public DS_ReportTableAdapters.stp_prt_OtherPartTableAdapter taRepOtherPart; public DS_ReportTableAdapters.stp_prt_OtherPartTableAdapter taRepOtherPart;
public DS_ReportTableAdapters.stp_prt_PartTableAdapter taRepPart; public DS_ReportTableAdapters.stp_prt_PartTableAdapter taRepPart;
public DS_AppTableAdapters.SheetListTableAdapter taSHL; public DS_AppTableAdapters.SheetListTableAdapter taSHL;
public DS_AppTableAdapters.SheetStatsTableAdapter taShStats;
public DS_AppTableAdapters.SheetsPreviewTableAdapter taSP; public DS_AppTableAdapters.SheetsPreviewTableAdapter taSP;
public DS_AppTableAdapters.StatusDecodeTableAdapter taStatDec; public DS_AppTableAdapters.StatusDecodeTableAdapter taStatDec;
public DS_AppTableAdapters.StatusLogTableAdapter taStatLog; public DS_AppTableAdapters.StatusLogTableAdapter taStatLog;
public DS_AppTableAdapters.StackListTableAdapter taSTL; public DS_AppTableAdapters.StackListTableAdapter taSTL;
public DS_AppTableAdapters.UpdManTableAdapter taUpdMan; public DS_AppTableAdapters.UpdManTableAdapter taUpdMan;
public DS_AppTableAdapters.UnloadStatsTableAdapter taUS; public DS_AppTableAdapters.UnloadStatsTableAdapter taUStat;
#endregion Public Fields #endregion Public Fields
@@ -160,6 +162,7 @@ namespace AppData
taBL = new DS_AppTableAdapters.BatchListTableAdapter(); taBL = new DS_AppTableAdapters.BatchListTableAdapter();
taBN = new DS_AppTableAdapters.BinsTableAdapter(); taBN = new DS_AppTableAdapters.BinsTableAdapter();
taBNLS = new DS_AppTableAdapters.BinListTableAdapter(); taBNLS = new DS_AppTableAdapters.BinListTableAdapter();
taBStats = new DS_AppTableAdapters.BatchStatsTableAdapter();
taCL = new DS_AppTableAdapters.CartsTableAdapter(); taCL = new DS_AppTableAdapters.CartsTableAdapter();
taCOK = new DS_AppTableAdapters.CartOnKitTableAdapter(); taCOK = new DS_AppTableAdapters.CartOnKitTableAdapter();
taCount = new DS_AppTableAdapters.CountersTableAdapter(); taCount = new DS_AppTableAdapters.CountersTableAdapter();
@@ -204,8 +207,9 @@ namespace AppData
taRepOtherPart = new DS_ReportTableAdapters.stp_prt_OtherPartTableAdapter(); taRepOtherPart = new DS_ReportTableAdapters.stp_prt_OtherPartTableAdapter();
taRepIRK = new DS_ReportTableAdapters.stp_prt_IRKTableAdapter(); taRepIRK = new DS_ReportTableAdapters.stp_prt_IRKTableAdapter();
taRepIRKSum = new DS_ReportTableAdapters.stp_prt_IRK_SumTableAdapter(); taRepIRKSum = new DS_ReportTableAdapters.stp_prt_IRK_SumTableAdapter();
taUS = new DS_AppTableAdapters.UnloadStatsTableAdapter(); taShStats = new DS_AppTableAdapters.SheetStatsTableAdapter();
taUpdMan = new DS_AppTableAdapters.UpdManTableAdapter(); taUpdMan = new DS_AppTableAdapters.UpdManTableAdapter();
taUStat = new DS_AppTableAdapters.UnloadStatsTableAdapter();
} }
private void setupConnString() private void setupConnString()
@@ -214,6 +218,7 @@ namespace AppData
taBL.Connection.ConnectionString = connString; taBL.Connection.ConnectionString = connString;
taBN.Connection.ConnectionString = connString; taBN.Connection.ConnectionString = connString;
taBNLS.Connection.ConnectionString = connString; taBNLS.Connection.ConnectionString = connString;
taBStats.Connection.ConnectionString = connString;
taCL.Connection.ConnectionString = connString; taCL.Connection.ConnectionString = connString;
taCOK.Connection.ConnectionString = connString; taCOK.Connection.ConnectionString = connString;
taCount.Connection.ConnectionString = connString; taCount.Connection.ConnectionString = connString;
@@ -258,7 +263,8 @@ namespace AppData
taRepOtherPart.Connection.ConnectionString = connString; taRepOtherPart.Connection.ConnectionString = connString;
taRepIRK.Connection.ConnectionString = connString; taRepIRK.Connection.ConnectionString = connString;
taRepIRKSum.Connection.ConnectionString = connString; taRepIRKSum.Connection.ConnectionString = connString;
taUS.Connection.ConnectionString = connString; taShStats.Connection.ConnectionString = connString;
taUStat.Connection.ConnectionString = connString;
taUpdMan.Connection.ConnectionString = connString; taUpdMan.Connection.ConnectionString = connString;
} }
@@ -476,7 +482,7 @@ namespace AppData
if (!trovato) if (!trovato)
{ {
// se non trovo leggo // se non trovo leggo
answ = taUS.GetData(BatchID, StatLevel); answ = taUStat.GetData(BatchID, StatLevel);
rawData = JsonConvert.SerializeObject(answ); rawData = JsonConvert.SerializeObject(answ);
// salvo in redis // salvo in redis
memLayer.ML.setRSV(redKey, rawData, cacheDataTTL); memLayer.ML.setRSV(redKey, rawData, cacheDataTTL);
+7 -7
View File
@@ -1,10 +1,10 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// Il codice è stato generato da uno strumento. // This code was generated by a tool.
// Versione runtime:4.0.30319.42000 // Runtime Version:4.0.30319.42000
// //
// Le modifiche apportate a questo file possono provocare un comportamento non corretto e andranno perse se // Changes to this file may cause incorrect behavior and will be lost if
// il codice viene rigenerato. // the code is regenerated.
// </auto-generated> // </auto-generated>
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
@@ -12,7 +12,7 @@ namespace AppData.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.2.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.10.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
@@ -26,8 +26,8 @@ namespace AppData.Properties {
[global::System.Configuration.ApplicationScopedSettingAttribute()] [global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.ConnectionString)] [global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.ConnectionString)]
[global::System.Configuration.DefaultSettingValueAttribute("Data Source=10.74.82.14;Initial Catalog=Sauder_NKC;Persist Security Info=True;Use" + [global::System.Configuration.DefaultSettingValueAttribute("Data Source=SQL2016DEV;Initial Catalog=Sauder_NKC;Persist Security Info=True;User" +
"r ID=conn_NKC;Password=pwd_NKC")] " ID=sa;Password=keyhammer16")]
public string Sauder_NKCConnectionString { public string Sauder_NKCConnectionString {
get { get {
return ((string)(this["Sauder_NKCConnectionString"])); return ((string)(this["Sauder_NKCConnectionString"]));
+2 -2
View File
@@ -5,10 +5,10 @@
<Setting Name="Sauder_NKCConnectionString" Type="(Connection string)" Scope="Application"> <Setting Name="Sauder_NKCConnectionString" Type="(Connection string)" Scope="Application">
<DesignTimeValue Profile="(Default)">&lt;?xml version="1.0" encoding="utf-16"?&gt; <DesignTimeValue Profile="(Default)">&lt;?xml version="1.0" encoding="utf-16"?&gt;
&lt;SerializableConnectionString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt; &lt;SerializableConnectionString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;
&lt;ConnectionString&gt;Data Source=10.74.82.14;Initial Catalog=Sauder_NKC;Persist Security Info=True;User ID=conn_NKC;Password=pwd_NKC&lt;/ConnectionString&gt; &lt;ConnectionString&gt;Data Source=SQL2016DEV;Initial Catalog=Sauder_NKC;Persist Security Info=True;User ID=sa;Password=keyhammer16&lt;/ConnectionString&gt;
&lt;ProviderName&gt;System.Data.SqlClient&lt;/ProviderName&gt; &lt;ProviderName&gt;System.Data.SqlClient&lt;/ProviderName&gt;
&lt;/SerializableConnectionString&gt;</DesignTimeValue> &lt;/SerializableConnectionString&gt;</DesignTimeValue>
<Value Profile="(Default)">Data Source=10.74.82.14;Initial Catalog=Sauder_NKC;Persist Security Info=True;User ID=conn_NKC;Password=pwd_NKC</Value> <Value Profile="(Default)">Data Source=SQL2016DEV;Initial Catalog=Sauder_NKC;Persist Security Info=True;User ID=sa;Password=keyhammer16</Value>
</Setting> </Setting>
</Settings> </Settings>
</SettingsFile> </SettingsFile>
+71 -69
View File
@@ -1,72 +1,74 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<configuration> <configuration>
<configSections> <configSections>
</configSections> </configSections>
<connectionStrings> <connectionStrings>
<add name="AppData.Properties.Settings.Sauder_NKCConnectionString" connectionString="Data Source=SQL2016DEV;Initial Catalog=Sauder_NKC;Persist Security Info=True;User ID=conn_NKC;Password=pwd_NKC" providerName="System.Data.SqlClient" /> <add name="AppData.Properties.Settings.Sauder_NKCConnectionString"
</connectionStrings> connectionString="Data Source=SQL2016DEV;Initial Catalog=Sauder_NKC;Persist Security Info=True;User ID=sa;Password=keyhammer16"
<runtime> providerName="System.Data.SqlClient" />
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> </connectionStrings>
<dependentAssembly> <runtime>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" /> <dependentAssembly>
</dependentAssembly> <assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<dependentAssembly> <bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
<assemblyIdentity name="System.IO.Pipelines" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" /> </dependentAssembly>
<bindingRedirect oldVersion="0.0.0.0-5.0.0.1" newVersion="5.0.0.1" /> <dependentAssembly>
</dependentAssembly> <assemblyIdentity name="System.IO.Pipelines" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<dependentAssembly> <bindingRedirect oldVersion="0.0.0.0-5.0.0.1" newVersion="5.0.0.1" />
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" /> </dependentAssembly>
<bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" /> <dependentAssembly>
</dependentAssembly> <assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<dependentAssembly> <bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" /> </dependentAssembly>
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" /> <dependentAssembly>
</dependentAssembly> <assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<dependentAssembly> <bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" /> </dependentAssembly>
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" /> <dependentAssembly>
</dependentAssembly> <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<dependentAssembly> <bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> </dependentAssembly>
<bindingRedirect oldVersion="0.0.0.0-4.1.4.0" newVersion="4.1.4.0" /> <dependentAssembly>
</dependentAssembly> <assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<dependentAssembly> <bindingRedirect oldVersion="0.0.0.0-4.1.4.0" newVersion="4.1.4.0" />
<assemblyIdentity name="System.Threading.Channels" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" /> </dependentAssembly>
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" /> <dependentAssembly>
</dependentAssembly> <assemblyIdentity name="System.Threading.Channels" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<dependentAssembly> <bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
<assemblyIdentity name="System.Runtime.InteropServices.RuntimeInformation" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> </dependentAssembly>
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" /> <dependentAssembly>
</dependentAssembly> <assemblyIdentity name="System.Runtime.InteropServices.RuntimeInformation" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<dependentAssembly> <bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
<assemblyIdentity name="SharpCompress" publicKeyToken="afb0a02973931d96" culture="neutral" /> </dependentAssembly>
<bindingRedirect oldVersion="0.0.0.0-0.28.3.0" newVersion="0.28.3.0" /> <dependentAssembly>
</dependentAssembly> <assemblyIdentity name="SharpCompress" publicKeyToken="afb0a02973931d96" culture="neutral" />
<dependentAssembly> <bindingRedirect oldVersion="0.0.0.0-0.28.3.0" newVersion="0.28.3.0" />
<assemblyIdentity name="DnsClient" publicKeyToken="4574bb5573c51424" culture="neutral" /> </dependentAssembly>
<bindingRedirect oldVersion="0.0.0.0-1.5.0.0" newVersion="1.5.0.0" /> <dependentAssembly>
</dependentAssembly> <assemblyIdentity name="DnsClient" publicKeyToken="4574bb5573c51424" culture="neutral" />
<dependentAssembly> <bindingRedirect oldVersion="0.0.0.0-1.5.0.0" newVersion="1.5.0.0" />
<assemblyIdentity name="System.IO.Compression" publicKeyToken="b77a5c561934e089" culture="neutral" /> </dependentAssembly>
<bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" /> <dependentAssembly>
</dependentAssembly> <assemblyIdentity name="System.IO.Compression" publicKeyToken="b77a5c561934e089" culture="neutral" />
<dependentAssembly> <bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> </dependentAssembly>
<bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" /> <dependentAssembly>
</dependentAssembly> <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<dependentAssembly> <bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
<assemblyIdentity name="System.Security.Cryptography.Pkcs" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> </dependentAssembly>
<bindingRedirect oldVersion="0.0.0.0-5.0.0.1" newVersion="5.0.0.1" /> <dependentAssembly>
</dependentAssembly> <assemblyIdentity name="System.Security.Cryptography.Pkcs" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<dependentAssembly> <bindingRedirect oldVersion="0.0.0.0-5.0.0.1" newVersion="5.0.0.1" />
<assemblyIdentity name="ICSharpCode.SharpZipLib" publicKeyToken="1b03e6acf1164f73" culture="neutral" /> </dependentAssembly>
<bindingRedirect oldVersion="0.0.0.0-1.3.2.10" newVersion="1.3.2.10" /> <dependentAssembly>
</dependentAssembly> <assemblyIdentity name="ICSharpCode.SharpZipLib" publicKeyToken="1b03e6acf1164f73" culture="neutral" />
<dependentAssembly> <bindingRedirect oldVersion="0.0.0.0-1.3.2.10" newVersion="1.3.2.10" />
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" /> </dependentAssembly>
<bindingRedirect oldVersion="0.0.0.0-13.0.0.0" newVersion="13.0.0.0" /> <dependentAssembly>
</dependentAssembly> <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
</assemblyBinding> <bindingRedirect oldVersion="0.0.0.0-13.0.0.0" newVersion="13.0.0.0" />
</runtime> </dependentAssembly>
</assemblyBinding>
</runtime>
</configuration> </configuration>
+2 -2
View File
@@ -21,8 +21,8 @@
<package id="SharpZipLib" version="1.3.2" targetFramework="net462" /> <package id="SharpZipLib" version="1.3.2" targetFramework="net462" />
<package id="Snappy.NET" version="1.1.1.8" targetFramework="net462" /> <package id="Snappy.NET" version="1.1.1.8" targetFramework="net462" />
<package id="StackExchange.Redis" version="2.2.62" targetFramework="net462" /> <package id="StackExchange.Redis" version="2.2.62" targetFramework="net462" />
<package id="SteamWare" version="5.1.2108.1115" targetFramework="net462" /> <package id="SteamWare" version="5.1.2108.1911" targetFramework="net462" />
<package id="SteamWare.Logger" version="5.1.2108.1115" targetFramework="net462" /> <package id="SteamWare.Logger" version="5.1.2108.1911" targetFramework="net462" />
<package id="System.Buffers" version="4.5.1" targetFramework="net462" /> <package id="System.Buffers" version="4.5.1" targetFramework="net462" />
<package id="System.Diagnostics.PerformanceCounter" version="5.0.1" targetFramework="net462" /> <package id="System.Diagnostics.PerformanceCounter" version="5.0.1" targetFramework="net462" />
<package id="System.IO.Compression" version="4.3.0" targetFramework="net462" /> <package id="System.IO.Compression" version="4.3.0" targetFramework="net462" />
+89 -4
View File
@@ -3,12 +3,12 @@
<Version>10</Version> <Version>10</Version>
<SourceModelProvider> <SourceModelProvider>
<ConnectionBasedModelProvider> <ConnectionBasedModelProvider>
<ConnectionString>Data Source=SQL2016DEV;Initial Catalog=Sauder_NKC;Persist Security Info=True;User ID=sa;Pooling=False;MultipleActiveResultSets=False;Connect Timeout=60;Encrypt=False;TrustServerCertificate=False</ConnectionString> <ConnectionString>Data Source=SQL2016DEV;Initial Catalog=Sauder_NKC;Integrated Security=True;Persist Security Info=False;Pooling=False;MultipleActiveResultSets=False;Connect Timeout=60;Encrypt=False;TrustServerCertificate=False</ConnectionString>
</ConnectionBasedModelProvider> </ConnectionBasedModelProvider>
</SourceModelProvider> </SourceModelProvider>
<TargetModelProvider> <TargetModelProvider>
<ConnectionBasedModelProvider> <ConnectionBasedModelProvider>
<ConnectionString>Data Source=SQL2016PROD;Initial Catalog=Sauder_NKC_Prod;Persist Security Info=True;User ID=sa;Pooling=False;MultipleActiveResultSets=False;Connect Timeout=60;Encrypt=False;TrustServerCertificate=False</ConnectionString> <ConnectionString>Data Source=SQL2016PROD;Initial Catalog=Sauder_NKC2_Prod;Integrated Security=True;Persist Security Info=False;Pooling=False;MultipleActiveResultSets=False;Connect Timeout=60;Encrypt=False;TrustServerCertificate=False</ConnectionString>
</ConnectionBasedModelProvider> </ConnectionBasedModelProvider>
</TargetModelProvider> </TargetModelProvider>
<SchemaCompareSettingsService> <SchemaCompareSettingsService>
@@ -35,6 +35,10 @@
<Name>BackupDatabaseBeforeChanges</Name> <Name>BackupDatabaseBeforeChanges</Name>
<Value>False</Value> <Value>False</Value>
</PropertyElementName> </PropertyElementName>
<PropertyElementName>
<Name>IgnoreIndexesStatisticsOnEnclaveEnabledColumns</Name>
<Value>False</Value>
</PropertyElementName>
<PropertyElementName> <PropertyElementName>
<Name>BlockOnPossibleDataLoss</Name> <Name>BlockOnPossibleDataLoss</Name>
<Value>True</Value> <Value>True</Value>
@@ -63,6 +67,10 @@
<Name>DisableAndReenableDdlTriggers</Name> <Name>DisableAndReenableDdlTriggers</Name>
<Value>True</Value> <Value>True</Value>
</PropertyElementName> </PropertyElementName>
<PropertyElementName>
<Name>DisableIndexesForDataPhase</Name>
<Value>True</Value>
</PropertyElementName>
<PropertyElementName> <PropertyElementName>
<Name>DoNotAlterChangeDataCaptureObjects</Name> <Name>DoNotAlterChangeDataCaptureObjects</Name>
<Value>True</Value> <Value>True</Value>
@@ -107,6 +115,10 @@
<Name>GenerateSmartDefaults</Name> <Name>GenerateSmartDefaults</Name>
<Value>False</Value> <Value>False</Value>
</PropertyElementName> </PropertyElementName>
<PropertyElementName>
<Name>HashObjectNamesInLogs</Name>
<Value>False</Value>
</PropertyElementName>
<PropertyElementName> <PropertyElementName>
<Name>IgnoreDdlTriggerOrder</Name> <Name>IgnoreDdlTriggerOrder</Name>
<Value>False</Value> <Value>False</Value>
@@ -267,10 +279,22 @@
<Name>PopulateFilesOnFileGroups</Name> <Name>PopulateFilesOnFileGroups</Name>
<Value>True</Value> <Value>True</Value>
</PropertyElementName> </PropertyElementName>
<PropertyElementName>
<Name>PreserveIdentityLastValues</Name>
<Value>False</Value>
</PropertyElementName>
<PropertyElementName> <PropertyElementName>
<Name>RegisterDataTierApplication</Name> <Name>RegisterDataTierApplication</Name>
<Value>False</Value> <Value>False</Value>
</PropertyElementName> </PropertyElementName>
<PropertyElementName>
<Name>RebuildIndexesOfflineForDataPhase</Name>
<Value>False</Value>
</PropertyElementName>
<PropertyElementName>
<Name>RestoreSequenceCurrentValue</Name>
<Value>True</Value>
</PropertyElementName>
<PropertyElementName> <PropertyElementName>
<Name>ScriptDatabaseCollation</Name> <Name>ScriptDatabaseCollation</Name>
<Value>False</Value> <Value>False</Value>
@@ -301,11 +325,11 @@
</PropertyElementName> </PropertyElementName>
<PropertyElementName> <PropertyElementName>
<Name>TargetDatabaseName</Name> <Name>TargetDatabaseName</Name>
<Value>Sauder_NKC_Prod</Value> <Value>Sauder_NKC2_Prod</Value>
</PropertyElementName> </PropertyElementName>
<PropertyElementName> <PropertyElementName>
<Name>TargetConnectionString</Name> <Name>TargetConnectionString</Name>
<Value>Data Source=SQL2016PROD;Initial Catalog=Sauder_NKC_Prod;Persist Security Info=True;User ID=sa;Pooling=False;MultipleActiveResultSets=False;Connect Timeout=60;Encrypt=False;TrustServerCertificate=False;Application Name="Microsoft SQL Server Data Tools, Schema Compare"</Value> <Value>Data Source=SQL2016PROD;Initial Catalog=Sauder_NKC2_Prod;Integrated Security=True;Persist Security Info=False;Pooling=False;MultipleActiveResultSets=False;Connect Timeout=60;Encrypt=False;TrustServerCertificate=False;Application Name="Microsoft SQL Server Data Tools, Schema Compare"</Value>
</PropertyElementName> </PropertyElementName>
<PropertyElementName> <PropertyElementName>
<Name>TreatVerificationErrorsAsWarnings</Name> <Name>TreatVerificationErrorsAsWarnings</Name>
@@ -331,6 +355,10 @@
<Name>AllowDropBlockingAssemblies</Name> <Name>AllowDropBlockingAssemblies</Name>
<Value>False</Value> <Value>False</Value>
</PropertyElementName> </PropertyElementName>
<PropertyElementName>
<Name>DoNotEvaluateSqlCmdVariables</Name>
<Value>True</Value>
</PropertyElementName>
<PropertyElementName> <PropertyElementName>
<Name>DoNotDropAggregates</Name> <Name>DoNotDropAggregates</Name>
<Value>False</Value> <Value>False</Value>
@@ -399,6 +427,22 @@
<Name>DoNotDropDatabaseTriggers</Name> <Name>DoNotDropDatabaseTriggers</Name>
<Value>False</Value> <Value>False</Value>
</PropertyElementName> </PropertyElementName>
<PropertyElementName>
<Name>IgnoreDatabaseWorkloadGroups</Name>
<Value>False</Value>
</PropertyElementName>
<PropertyElementName>
<Name>DoNotDropDatabaseWorkloadGroups</Name>
<Value>False</Value>
</PropertyElementName>
<PropertyElementName>
<Name>IgnoreWorkloadClassifiers</Name>
<Value>False</Value>
</PropertyElementName>
<PropertyElementName>
<Name>DoNotDropWorkloadClassifiers</Name>
<Value>False</Value>
</PropertyElementName>
<PropertyElementName> <PropertyElementName>
<Name>DoNotDropDefaults</Name> <Name>DoNotDropDefaults</Name>
<Value>False</Value> <Value>False</Value>
@@ -431,10 +475,18 @@
<Name>DoNotDropExternalFileFormats</Name> <Name>DoNotDropExternalFileFormats</Name>
<Value>False</Value> <Value>False</Value>
</PropertyElementName> </PropertyElementName>
<PropertyElementName>
<Name>DoNotDropExternalStreamingJobs</Name>
<Value>False</Value>
</PropertyElementName>
<PropertyElementName> <PropertyElementName>
<Name>DoNotDropExternalTables</Name> <Name>DoNotDropExternalTables</Name>
<Value>False</Value> <Value>False</Value>
</PropertyElementName> </PropertyElementName>
<PropertyElementName>
<Name>DoNotDropExternalStreams</Name>
<Value>False</Value>
</PropertyElementName>
<PropertyElementName> <PropertyElementName>
<Name>DoNotDropFilegroups</Name> <Name>DoNotDropFilegroups</Name>
<Value>False</Value> <Value>False</Value>
@@ -675,10 +727,18 @@
<Name>ExcludeExternalFileFormats</Name> <Name>ExcludeExternalFileFormats</Name>
<Value>False</Value> <Value>False</Value>
</PropertyElementName> </PropertyElementName>
<PropertyElementName>
<Name>ExcludeExternalStreamingJobs</Name>
<Value>False</Value>
</PropertyElementName>
<PropertyElementName> <PropertyElementName>
<Name>ExcludeExternalTables</Name> <Name>ExcludeExternalTables</Name>
<Value>False</Value> <Value>False</Value>
</PropertyElementName> </PropertyElementName>
<PropertyElementName>
<Name>ExcludeExternalStreams</Name>
<Value>False</Value>
</PropertyElementName>
<PropertyElementName> <PropertyElementName>
<Name>ExcludeEventSessions</Name> <Name>ExcludeEventSessions</Name>
<Value>True</Value> <Value>True</Value>
@@ -943,5 +1003,30 @@
<SelectedItem Type="Microsoft.Data.Tools.Schema.Sql.SchemaModel.SqlUser, Microsoft.Data.Tools.Schema.Sql, Version=15.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <SelectedItem Type="Microsoft.Data.Tools.Schema.Sql.SchemaModel.SqlUser, Microsoft.Data.Tools.Schema.Sql, Version=15.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<Name>conn_NKC</Name> <Name>conn_NKC</Name>
</SelectedItem> </SelectedItem>
<SelectedItem Type="Microsoft.Data.Tools.Schema.Sql.SchemaModel.SqlTable, Microsoft.Data.Tools.Schema.Sql, Version=15.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<Name>dbo</Name>
<Name>ControlloDefrag</Name>
</SelectedItem>
<SelectedItem Type="Microsoft.Data.Tools.Schema.Sql.SchemaModel.SqlExtendedProperty, Microsoft.Data.Tools.Schema.Sql, Version=15.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<Name>SqlTableBase</Name>
<Name>dbo</Name>
<Name>ControlloDefrag</Name>
<Name>Note</Name>
</SelectedItem>
<SelectedItem Type="Microsoft.Data.Tools.Schema.Sql.SchemaModel.SqlTable, Microsoft.Data.Tools.Schema.Sql, Version=15.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<Name>dbo</Name>
<Name>BatchReqList_OLD</Name>
</SelectedItem>
<SelectedItem Type="Microsoft.Data.Tools.Schema.Sql.SchemaModel.SqlExtendedProperty, Microsoft.Data.Tools.Schema.Sql, Version=15.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<Name>SqlColumn</Name>
<Name>dbo</Name>
<Name>BatchReqList_OLD</Name>
<Name>OrdID</Name>
<Name>MS_Description</Name>
</SelectedItem>
<SelectedItem Type="Microsoft.Data.Tools.Schema.Sql.SchemaModel.SqlPrimaryKeyConstraint, Microsoft.Data.Tools.Schema.Sql, Version=15.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<Name>dbo</Name>
<Name>PK_BatchReqList</Name>
</SelectedItem>
</ExcludedTargetElements> </ExcludedTargetElements>
</SchemaComparison> </SchemaComparison>
Vendored
+5 -5
View File
@@ -186,8 +186,8 @@ pipeline {
// lancio upload con nuget! // lancio upload con nuget!
echo 'Start upload with nuget push' echo 'Start upload with nuget push'
bat "e:\\nuget setapikey fe387daa-d07c-3207-877e-96c8be1be91b -source http://nexus.steamware.net/repository/nuget-hosted" bat "e:\\nuget setapikey fe387daa-d07c-3207-877e-96c8be1be91b -source https://nexus.steamware.net/repository/nuget-hosted"
bat "e:\\nuget.exe push NKC_SDK.${env.packVers}.nupkg -Source http://nexus.steamware.net/repository/nuget-hosted" bat "e:\\nuget.exe push NKC_SDK.${env.packVers}.nupkg -Source https://nexus.steamware.net/repository/nuget-hosted"
} }
else else
{ {
@@ -277,16 +277,16 @@ def sendSlack(status, colorCode) {
// funzione x fix pacchetti nuget da NOSTRO repo Nexus con proxy // funzione x fix pacchetti nuget da NOSTRO repo Nexus con proxy
def fixNuget(solutionFile) { def fixNuget(solutionFile) {
// bat "e:\\nuget setapikey fe387daa-d07c-3207-877e-96c8be1be91b -source http://nexus.steamware.net/repository/nuget-group" // bat "e:\\nuget setapikey fe387daa-d07c-3207-877e-96c8be1be91b -source https://nexus.steamware.net/repository/nuget-group"
// solo la prima volta va aggiunta... // solo la prima volta va aggiunta...
hasSource = bat "e:\\nuget sources list | find \"Steamware\" /C" hasSource = bat "e:\\nuget sources list | find \"Steamware\" /C"
if (hasSource == "0") if (hasSource == "0")
{ {
bat "e:\\nuget sources Add -Name \"Steamware Nexus\" -Source http://nexus.steamware.net/repository/nuget-group -username \"nugetUser\" -password \"viaDante16\"" bat "e:\\nuget sources Add -Name \"Steamware Nexus\" -Source https://nexus.steamware.net/repository/nuget-group -username \"nugetUser\" -password \"viaDante16\""
} }
else else
{ {
bat "e:\\nuget sources Update -Name \"Steamware Nexus\" -Source http://nexus.steamware.net/repository/nuget-group -username \"nugetUser\" -password \"viaDante16\"" bat "e:\\nuget sources Update -Name \"Steamware Nexus\" -Source https://nexus.steamware.net/repository/nuget-group -username \"nugetUser\" -password \"viaDante16\""
} }
bat "e:\\nuget.exe restore ${solutionFile}" bat "e:\\nuget.exe restore ${solutionFile}"
} }
+1 -1
View File
@@ -35,7 +35,7 @@
<HintPath>..\packages\Newtonsoft.Json.13.0.1\lib\net40\Newtonsoft.Json.dll</HintPath> <HintPath>..\packages\Newtonsoft.Json.13.0.1\lib\net40\Newtonsoft.Json.dll</HintPath>
</Reference> </Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL"> <Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.7.10\lib\net40-client\NLog.dll</HintPath> <HintPath>..\packages\NLog.4.7.11\lib\net40-client\NLog.dll</HintPath>
</Reference> </Reference>
<Reference Include="System" /> <Reference Include="System" />
<Reference Include="System.Configuration" /> <Reference Include="System.Configuration" />
+6
View File
@@ -2763,6 +2763,7 @@
<xs:element name="proxyAddress" minOccurs="0" maxOccurs="1" type="xs:string" /> <xs:element name="proxyAddress" minOccurs="0" maxOccurs="1" type="xs:string" />
<xs:element name="encoding" minOccurs="0" maxOccurs="1" type="xs:string" /> <xs:element name="encoding" minOccurs="0" maxOccurs="1" type="xs:string" />
<xs:element name="url" minOccurs="0" maxOccurs="1" type="xs:anyURI" /> <xs:element name="url" minOccurs="0" maxOccurs="1" type="xs:anyURI" />
<xs:element name="userAgent" minOccurs="0" maxOccurs="1" type="Layout" />
<xs:element name="escapeDataNLogLegacy" minOccurs="0" maxOccurs="1" type="xs:boolean" /> <xs:element name="escapeDataNLogLegacy" minOccurs="0" maxOccurs="1" type="xs:boolean" />
<xs:element name="escapeDataRfc3986" minOccurs="0" maxOccurs="1" type="xs:boolean" /> <xs:element name="escapeDataRfc3986" minOccurs="0" maxOccurs="1" type="xs:boolean" />
<xs:element name="preAuthenticate" minOccurs="0" maxOccurs="1" type="xs:boolean" /> <xs:element name="preAuthenticate" minOccurs="0" maxOccurs="1" type="xs:boolean" />
@@ -2816,6 +2817,11 @@
<xs:documentation>Web service URL.</xs:documentation> <xs:documentation>Web service URL.</xs:documentation>
</xs:annotation> </xs:annotation>
</xs:attribute> </xs:attribute>
<xs:attribute name="userAgent" type="SimpleLayoutAttribute">
<xs:annotation>
<xs:documentation>Value of the User-agent HTTP header.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="escapeDataNLogLegacy" type="xs:boolean"> <xs:attribute name="escapeDataNLogLegacy" type="xs:boolean">
<xs:annotation> <xs:annotation>
<xs:documentation>Value whether escaping be done according to the old NLog style (Very non-standard)</xs:documentation> <xs:documentation>Value whether escaping be done according to the old NLog style (Very non-standard)</xs:documentation>
+20 -11
View File
@@ -94,6 +94,11 @@ namespace NKC_SDK
/// </summary> /// </summary>
public int MaxTime { get; set; } public int MaxTime { get; set; }
/// <summary>
/// Indice di aprtenza (per carrelli, bins...)
/// </summary>
public int NumIndexStart { get; set; } = 1;
/// <summary> /// <summary>
/// Elenco ordini richiesti da processare / nestare /// Elenco ordini richiesti da processare / nestare
/// </summary> /// </summary>
@@ -114,12 +119,6 @@ namespace NKC_SDK
/// </summary> /// </summary>
public int ProcType { get; set; } public int ProcType { get; set; }
/// <summary>
/// Indice di aprtenza (per carrelli, bins...)
/// </summary>
public int NumIndexStart { get; set; } = 1;
#endregion Public Properties #endregion Public Properties
} }
@@ -342,11 +341,21 @@ namespace NKC_SDK
/// </summary> /// </summary>
public int BinIndex { get; set; } = 0; public int BinIndex { get; set; } = 0;
/// <summary>
/// Codice ITEM esterno da cliente (HFA)
/// </summary>
public string PartExtCode { get; set; } = "";
/// <summary> /// <summary>
/// Elenco dei PART/ITEM dell'Ordine /// Elenco dei PART/ITEM dell'Ordine
/// </summary> /// </summary>
public List<Part> PartList { get; set; } public List<Part> PartList { get; set; }
/// <summary>
/// Revisione ITEM esterno da cliente (HFA)
/// </summary>
public string PartRev { get; set; } = "";
#endregion Public Properties #endregion Public Properties
} }
@@ -750,11 +759,6 @@ namespace NKC_SDK
/// </summary> /// </summary>
public string PartExtCode { get; set; } = ""; public string PartExtCode { get; set; } = "";
/// <summary>
/// Revisione ITEM esterno da cliente (HFA)
/// </summary>
public string PartRev { get; set; } = "";
/// <summary> /// <summary>
/// Cod ITEM di NKC /// Cod ITEM di NKC
/// </summary> /// </summary>
@@ -765,6 +769,11 @@ namespace NKC_SDK
/// </summary> /// </summary>
public int PartQty { get; set; } public int PartQty { get; set; }
/// <summary>
/// Revisione ITEM esterno da cliente (HFA)
/// </summary>
public string PartRev { get; set; } = "";
#endregion Public Properties #endregion Public Properties
} }
+3 -3
View File
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<packages> <packages>
<package id="Newtonsoft.Json" version="13.0.1" targetFramework="net40" /> <package id="Newtonsoft.Json" version="13.0.1" targetFramework="net40" />
<package id="NLog" version="4.7.10" targetFramework="net40" /> <package id="NLog" version="4.7.11" targetFramework="net40" />
<package id="NLog.Config" version="4.7.10" targetFramework="net40" /> <package id="NLog.Config" version="4.7.11" targetFramework="net40" />
<package id="NLog.Schema" version="4.7.10" targetFramework="net40" /> <package id="NLog.Schema" version="4.7.11" targetFramework="net40" />
</packages> </packages>
+1 -1
View File
@@ -48,7 +48,7 @@ namespace NKC_WF
/// <param name="message"></param> /// <param name="message"></param>
public void lgFatal(string message, Exception exc) public void lgFatal(string message, Exception exc)
{ {
logger.lg.scriviLog(message, tipoLog.FATAL); logger.lg.scriviLog($"{message}{Environment.NewLine}{exc}", tipoLog.FATAL);
} }
/// <summary> /// <summary>
+10 -3
View File
@@ -22,7 +22,7 @@ namespace NKC_WF
/// <summary> /// <summary>
/// Codice macchina (da v2) /// Codice macchina (da v2)
/// </summary> /// </summary>
public string PlaceCod = "WRK001"; public string PlaceCod = "VIRTNE";
#endregion Public Fields #endregion Public Fields
@@ -206,7 +206,7 @@ namespace NKC_WF
/// <param name="message"></param> /// <param name="message"></param>
public void lgFatal(string message, Exception exc) public void lgFatal(string message, Exception exc)
{ {
logger.lg.scriviLog(message, tipoLog.FATAL); logger.lg.scriviLog($"{message}{Environment.NewLine}{exc}", tipoLog.FATAL);
} }
/// <summary> /// <summary>
@@ -275,7 +275,14 @@ namespace NKC_WF
/// <returns></returns> /// <returns></returns>
public string traduci(string lemma) public string traduci(string lemma)
{ {
return SteamWare.user_std.UtSn.Traduci(lemma); string answ = $"__{lemma}__";
try
{
answ = SteamWare.user_std.UtSn.Traduci(lemma);
}
catch
{ }
return answ;
} }
#endregion Public Methods #endregion Public Methods
+16 -9
View File
@@ -5,6 +5,7 @@ namespace NKC_WF
{ {
public static class Compressor public static class Compressor
{ {
#region Public Methods
public static byte[] Compress(byte[] data) public static byte[] Compress(byte[] data)
{ {
@@ -18,22 +19,28 @@ namespace NKC_WF
public static byte[] Decompress(byte[] data) public static byte[] Decompress(byte[] data)
{ {
byte[] answ = new byte[1];
MemoryStream input = new MemoryStream(); MemoryStream input = new MemoryStream();
input.Write(data, 0, data.Length); input.Write(data, 0, data.Length);
input.Position = 0; input.Position = 0;
GZipStream gzip = new GZipStream(input, GZipStream gzip = new GZipStream(input,
CompressionMode.Decompress, true); CompressionMode.Decompress, true);
MemoryStream output = new MemoryStream(); using (MemoryStream output = new MemoryStream())
byte[] buff = new byte[64];
int read = -1;
read = gzip.Read(buff, 0, buff.Length);
while (read > 0)
{ {
output.Write(buff, 0, read); byte[] buff = new byte[64];
int read = -1;
read = gzip.Read(buff, 0, buff.Length); read = gzip.Read(buff, 0, buff.Length);
while (read > 0)
{
output.Write(buff, 0, read);
read = gzip.Read(buff, 0, buff.Length);
}
gzip.Close();
answ = output.ToArray();
} }
gzip.Close(); return answ;
return output.ToArray();
} }
#endregion Public Methods
} }
} }
+10 -4
View File
@@ -3,6 +3,7 @@ using Newtonsoft.Json;
using NKC_SDK; using NKC_SDK;
using SteamWare; using SteamWare;
using System; using System;
using System.Diagnostics;
using System.IO; using System.IO;
using System.Web.Http; using System.Web.Http;
@@ -135,7 +136,7 @@ namespace NKC_WF.Controllers
* - è BatchReq / OfflineOrder * - è BatchReq / OfflineOrder
* - è stima iniziale o NEST dettagliato * - è stima iniziale o NEST dettagliato
* - si tratta di una stima di validazione ITEM ... * - si tratta di una stima di validazione ITEM ...
* *
* 2021.07.21: aggiunto controllo coerenza risposta: accetto solo se sono in stato di richiesta (se ho annullato in precedenza scarto la risposta) * 2021.07.21: aggiunto controllo coerenza risposta: accetto solo se sono in stato di richiesta (se ho annullato in precedenza scarto la risposta)
* *
*************************************************/ *************************************************/
@@ -453,8 +454,6 @@ namespace NKC_WF.Controllers
} }
else else
{ {
// 2020.01.16 salvo su mongoDb la risposta... // 2020.01.16 salvo su mongoDb la risposta...
ComLib.man.saveNestAnsw(rispNest); ComLib.man.saveNestAnsw(rispNest);
@@ -512,6 +511,13 @@ namespace NKC_WF.Controllers
} }
isSplitReq = ComLib.checkSendBatchSplit(rispNest.BatchID); isSplitReq = ComLib.checkSendBatchSplit(rispNest.BatchID);
// effettuo calcolo statistiche
Stopwatch stopWatchLap = new Stopwatch();
stopWatchLap.Start();
ComLib.man.updateSheetStatsByBatch(rispNest.BatchID);
stopWatchLap.Stop();
Log.Instance.Info($"Batch Stat Calculation after NEST answ | BatchID: {rispNest.BatchID} | elapsed {stopWatchLap.Elapsed.TotalMilliseconds} ms");
} }
// registro OK // registro OK
@@ -570,7 +576,7 @@ namespace NKC_WF.Controllers
answ = "WRONG DATA (expected baseNestAnsw object)"; answ = "WRONG DATA (expected baseNestAnsw object)";
} }
} }
catch (Exception exc) catch
{ {
answ = "NO"; answ = "NO";
} }
+14 -16
View File
@@ -30,7 +30,7 @@
<UseGlobalApplicationHostFile /> <UseGlobalApplicationHostFile />
<NuGetPackageImportStamp> <NuGetPackageImportStamp>
</NuGetPackageImportStamp> </NuGetPackageImportStamp>
<TypeScriptToolsVersion>3.4</TypeScriptToolsVersion> <TypeScriptToolsVersion>Latest</TypeScriptToolsVersion>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols> <DebugSymbols>true</DebugSymbols>
@@ -100,14 +100,14 @@
<Reference Include="MongoDB.Driver.Core, Version=2.13.1.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="MongoDB.Driver.Core, Version=2.13.1.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\MongoDB.Driver.Core.2.13.1\lib\net452\MongoDB.Driver.Core.dll</HintPath> <HintPath>..\packages\MongoDB.Driver.Core.2.13.1\lib\net452\MongoDB.Driver.Core.dll</HintPath>
</Reference> </Reference>
<Reference Include="MongoDB.Libmongocrypt, Version=1.2.2.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="MongoDB.Libmongocrypt, Version=1.2.3.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\MongoDB.Libmongocrypt.1.2.2\lib\net452\MongoDB.Libmongocrypt.dll</HintPath> <HintPath>..\packages\MongoDB.Libmongocrypt.1.2.3\lib\netstandard2.0\MongoDB.Libmongocrypt.dll</HintPath>
</Reference> </Reference>
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL"> <Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.13.0.1\lib\net45\Newtonsoft.Json.dll</HintPath> <HintPath>..\packages\Newtonsoft.Json.13.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference> </Reference>
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL"> <Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.7.10\lib\net45\NLog.dll</HintPath> <HintPath>..\packages\NLog.4.7.11\lib\net45\NLog.dll</HintPath>
</Reference> </Reference>
<Reference Include="PdfSharp, Version=1.50.5147.0, Culture=neutral, PublicKeyToken=f94615aa0424f9eb, processorArchitecture=MSIL"> <Reference Include="PdfSharp, Version=1.50.5147.0, Culture=neutral, PublicKeyToken=f94615aa0424f9eb, processorArchitecture=MSIL">
<HintPath>..\packages\PDFsharp.1.50.5147\lib\net20\PdfSharp.dll</HintPath> <HintPath>..\packages\PDFsharp.1.50.5147\lib\net20\PdfSharp.dll</HintPath>
@@ -118,8 +118,8 @@
<Reference Include="Pipelines.Sockets.Unofficial, Version=1.0.0.0, Culture=neutral, PublicKeyToken=42ea0a778e13fbe2, processorArchitecture=MSIL"> <Reference Include="Pipelines.Sockets.Unofficial, Version=1.0.0.0, Culture=neutral, PublicKeyToken=42ea0a778e13fbe2, processorArchitecture=MSIL">
<HintPath>..\packages\Pipelines.Sockets.Unofficial.2.2.0\lib\net461\Pipelines.Sockets.Unofficial.dll</HintPath> <HintPath>..\packages\Pipelines.Sockets.Unofficial.2.2.0\lib\net461\Pipelines.Sockets.Unofficial.dll</HintPath>
</Reference> </Reference>
<Reference Include="SharpCompress, Version=0.28.3.0, Culture=neutral, PublicKeyToken=afb0a02973931d96, processorArchitecture=MSIL"> <Reference Include="SharpCompress, Version=0.29.0.0, Culture=neutral, PublicKeyToken=afb0a02973931d96, processorArchitecture=MSIL">
<HintPath>..\packages\SharpCompress.0.28.3\lib\netstandard2.0\SharpCompress.dll</HintPath> <HintPath>..\packages\SharpCompress.0.29.0\lib\netstandard2.0\SharpCompress.dll</HintPath>
</Reference> </Reference>
<Reference Include="Snappy.NET, Version=1.1.1.8, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="Snappy.NET, Version=1.1.1.8, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\Snappy.NET.1.1.1.8\lib\net45\Snappy.NET.dll</HintPath> <HintPath>..\packages\Snappy.NET.1.1.1.8\lib\net45\Snappy.NET.dll</HintPath>
@@ -127,13 +127,11 @@
<Reference Include="StackExchange.Redis, Version=2.0.0.0, Culture=neutral, PublicKeyToken=c219ff1ca8c2ce46, processorArchitecture=MSIL"> <Reference Include="StackExchange.Redis, Version=2.0.0.0, Culture=neutral, PublicKeyToken=c219ff1ca8c2ce46, processorArchitecture=MSIL">
<HintPath>..\packages\StackExchange.Redis.2.2.62\lib\net461\StackExchange.Redis.dll</HintPath> <HintPath>..\packages\StackExchange.Redis.2.2.62\lib\net461\StackExchange.Redis.dll</HintPath>
</Reference> </Reference>
<Reference Include="SteamWare, Version=5.1.2108.1115, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="SteamWare, Version=5.1.2109.1713, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\SteamWare.5.1.2108.1115\lib\net462\SteamWare.dll</HintPath> <HintPath>..\packages\SteamWare.5.1.2109.1713\lib\net462\SteamWare.dll</HintPath>
<Private>True</Private>
</Reference> </Reference>
<Reference Include="SteamWare.Logger, Version=5.1.2108.1115, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="SteamWare.Logger, Version=5.1.2109.1713, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\SteamWare.Logger.5.1.2108.1115\lib\net462\SteamWare.Logger.dll</HintPath> <HintPath>..\packages\SteamWare.Logger.5.1.2109.1713\lib\net462\SteamWare.Logger.dll</HintPath>
<Private>True</Private>
</Reference> </Reference>
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"> <Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath> <HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
@@ -1896,9 +1894,9 @@
<WebProjectProperties> <WebProjectProperties>
<UseIIS>True</UseIIS> <UseIIS>True</UseIIS>
<AutoAssignPort>True</AutoAssignPort> <AutoAssignPort>True</AutoAssignPort>
<DevelopmentServerPort>61257</DevelopmentServerPort> <DevelopmentServerPort>44388</DevelopmentServerPort>
<DevelopmentServerVPath>/</DevelopmentServerVPath> <DevelopmentServerVPath>/</DevelopmentServerVPath>
<IISUrl>https://localhost:44388/</IISUrl> <IISUrl>https://localhost:44393/</IISUrl>
<NTLMAuthentication>False</NTLMAuthentication> <NTLMAuthentication>False</NTLMAuthentication>
<UseCustomServer>False</UseCustomServer> <UseCustomServer>False</UseCustomServer>
<CustomServerUrl> <CustomServerUrl>
@@ -1924,8 +1922,8 @@
<Error Condition="!Exists('..\packages\Microsoft.NetFramework.Analyzers.3.3.2\build\Microsoft.NetFramework.Analyzers.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.NetFramework.Analyzers.3.3.2\build\Microsoft.NetFramework.Analyzers.targets'))" /> <Error Condition="!Exists('..\packages\Microsoft.NetFramework.Analyzers.3.3.2\build\Microsoft.NetFramework.Analyzers.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.NetFramework.Analyzers.3.3.2\build\Microsoft.NetFramework.Analyzers.targets'))" />
<Error Condition="!Exists('..\packages\Microsoft.CodeAnalysis.FxCopAnalyzers.3.3.2\build\Microsoft.CodeAnalysis.FxCopAnalyzers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.CodeAnalysis.FxCopAnalyzers.3.3.2\build\Microsoft.CodeAnalysis.FxCopAnalyzers.props'))" /> <Error Condition="!Exists('..\packages\Microsoft.CodeAnalysis.FxCopAnalyzers.3.3.2\build\Microsoft.CodeAnalysis.FxCopAnalyzers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.CodeAnalysis.FxCopAnalyzers.3.3.2\build\Microsoft.CodeAnalysis.FxCopAnalyzers.props'))" />
<Error Condition="!Exists('..\packages\Microsoft.CodeAnalysis.FxCopAnalyzers.3.3.2\build\Microsoft.CodeAnalysis.FxCopAnalyzers.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.CodeAnalysis.FxCopAnalyzers.3.3.2\build\Microsoft.CodeAnalysis.FxCopAnalyzers.targets'))" /> <Error Condition="!Exists('..\packages\Microsoft.CodeAnalysis.FxCopAnalyzers.3.3.2\build\Microsoft.CodeAnalysis.FxCopAnalyzers.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.CodeAnalysis.FxCopAnalyzers.3.3.2\build\Microsoft.CodeAnalysis.FxCopAnalyzers.targets'))" />
<Error Condition="!Exists('..\packages\MongoDB.Libmongocrypt.1.2.2\build\MongoDB.Libmongocrypt.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\MongoDB.Libmongocrypt.1.2.2\build\MongoDB.Libmongocrypt.targets'))" />
<Error Condition="!Exists('..\packages\MongoDB.Driver.Core.2.13.1\build\MongoDB.Driver.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\MongoDB.Driver.Core.2.13.1\build\MongoDB.Driver.Core.targets'))" /> <Error Condition="!Exists('..\packages\MongoDB.Driver.Core.2.13.1\build\MongoDB.Driver.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\MongoDB.Driver.Core.2.13.1\build\MongoDB.Driver.Core.targets'))" />
<Error Condition="!Exists('..\packages\MongoDB.Libmongocrypt.1.2.3\build\MongoDB.Libmongocrypt.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\MongoDB.Libmongocrypt.1.2.3\build\MongoDB.Libmongocrypt.targets'))" />
</Target> </Target>
<!-- To modify your build process, add your task inside one of the targets below and uncomment it. <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets. Other similar extension points exist, see Microsoft.Common.targets.
@@ -1953,6 +1951,6 @@
<Import Project="..\packages\Microsoft.NetCore.Analyzers.3.3.2\build\Microsoft.NetCore.Analyzers.targets" Condition="Exists('..\packages\Microsoft.NetCore.Analyzers.3.3.2\build\Microsoft.NetCore.Analyzers.targets')" /> <Import Project="..\packages\Microsoft.NetCore.Analyzers.3.3.2\build\Microsoft.NetCore.Analyzers.targets" Condition="Exists('..\packages\Microsoft.NetCore.Analyzers.3.3.2\build\Microsoft.NetCore.Analyzers.targets')" />
<Import Project="..\packages\Microsoft.NetFramework.Analyzers.3.3.2\build\Microsoft.NetFramework.Analyzers.targets" Condition="Exists('..\packages\Microsoft.NetFramework.Analyzers.3.3.2\build\Microsoft.NetFramework.Analyzers.targets')" /> <Import Project="..\packages\Microsoft.NetFramework.Analyzers.3.3.2\build\Microsoft.NetFramework.Analyzers.targets" Condition="Exists('..\packages\Microsoft.NetFramework.Analyzers.3.3.2\build\Microsoft.NetFramework.Analyzers.targets')" />
<Import Project="..\packages\Microsoft.CodeAnalysis.FxCopAnalyzers.3.3.2\build\Microsoft.CodeAnalysis.FxCopAnalyzers.targets" Condition="Exists('..\packages\Microsoft.CodeAnalysis.FxCopAnalyzers.3.3.2\build\Microsoft.CodeAnalysis.FxCopAnalyzers.targets')" /> <Import Project="..\packages\Microsoft.CodeAnalysis.FxCopAnalyzers.3.3.2\build\Microsoft.CodeAnalysis.FxCopAnalyzers.targets" Condition="Exists('..\packages\Microsoft.CodeAnalysis.FxCopAnalyzers.3.3.2\build\Microsoft.CodeAnalysis.FxCopAnalyzers.targets')" />
<Import Project="..\packages\MongoDB.Libmongocrypt.1.2.2\build\MongoDB.Libmongocrypt.targets" Condition="Exists('..\packages\MongoDB.Libmongocrypt.1.2.2\build\MongoDB.Libmongocrypt.targets')" />
<Import Project="..\packages\MongoDB.Driver.Core.2.13.1\build\MongoDB.Driver.Core.targets" Condition="Exists('..\packages\MongoDB.Driver.Core.2.13.1\build\MongoDB.Driver.Core.targets')" /> <Import Project="..\packages\MongoDB.Driver.Core.2.13.1\build\MongoDB.Driver.Core.targets" Condition="Exists('..\packages\MongoDB.Driver.Core.2.13.1\build\MongoDB.Driver.Core.targets')" />
<Import Project="..\packages\MongoDB.Libmongocrypt.1.2.3\build\MongoDB.Libmongocrypt.targets" Condition="Exists('..\packages\MongoDB.Libmongocrypt.1.2.3\build\MongoDB.Libmongocrypt.targets')" />
</Project> </Project>
+4 -4
View File
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<item> <item>
<version>0.0.0.0</version> <version>0.0.0.0</version>
<url>http://seriate.steamware.net:8083/SWS/NKC/{{BRANCHNAME}}/{{PACKNAME}}.zip</url> <url>https://nexus.steamware.net/repository/SWS/NKC/{{BRANCHNAME}}/LAST/NKC.zip</url>
<changelog>http://seriate.steamware.net:8083/SWS/NKC/{{BRANCHNAME}}/ChangeLog.html</changelog> <changelog>https://nexus.steamware.net/repository/SWS/NKC/{{BRANCHNAME}}/LAST/ChangeLog.html</changelog>
<mandatory>false</mandatory> <mandatory>false</mandatory>
</item> </item>
+3 -1
View File
@@ -78,9 +78,11 @@
<!--minima durata x validità in stima PARTS singole --> <!--minima durata x validità in stima PARTS singole -->
<add key="minValidEstSec" value="2"/> <add key="minValidEstSec" value="2"/>
<!--Configurazioni Redis--> <!--Configurazioni Redis-->
<add key="cacheOnRedis" value="true"/>
<add key="RedisConn" value="nkcredis.steamware.net,abortConnect=false,ssl=false,password=nkc.password"/> <add key="RedisConn" value="nkcredis.steamware.net,abortConnect=false,ssl=false,password=nkc.password"/>
<add key="RedisConnAdmin" value="nkcredis.steamware.net,abortConnect=false,ssl=false,password=nkc.password,allowAdmin=true"/> <add key="RedisConnAdmin" value="nkcredis.steamware.net,abortConnect=false,ssl=false,password=nkc.password,allowAdmin=true"/>
<add key="redisDb" value="2"/> <add key="redisDb" value="2"/>
<add key="cacheDataTTL" value="2"/>
<!--MongoDB--> <!--MongoDB-->
<add key="mdbConnString" value="mongodb://W2019-MONGODB:27017"/> <add key="mdbConnString" value="mongodb://W2019-MONGODB:27017"/>
<add key="enableMongo" value="true"/> <add key="enableMongo" value="true"/>
@@ -377,7 +379,7 @@
</dependentAssembly> </dependentAssembly>
<dependentAssembly> <dependentAssembly>
<assemblyIdentity name="SharpCompress" publicKeyToken="afb0a02973931d96" culture="neutral"/> <assemblyIdentity name="SharpCompress" publicKeyToken="afb0a02973931d96" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-0.28.3.0" newVersion="0.28.3.0"/> <bindingRedirect oldVersion="0.0.0.0-0.29.0.0" newVersion="0.29.0.0"/>
</dependentAssembly> </dependentAssembly>
<dependentAssembly> <dependentAssembly>
<assemblyIdentity name="System.IO.Compression" publicKeyToken="b77a5c561934e089" culture="neutral"/> <assemblyIdentity name="System.IO.Compression" publicKeyToken="b77a5c561934e089" culture="neutral"/>
@@ -172,7 +172,7 @@ namespace NKC_WF.WebUserControls
totPartNum += sheet.PartList.Count; totPartNum += sheet.PartList.Count;
num = sheet.SurfaceWork > 0 ? sheet.SurfaceWork : 0; num = sheet.SurfaceWork > 0 ? sheet.SurfaceWork : 0;
den = sheet.SurfaceTotal > 0 ? sheet.SurfaceTotal : 1; den = sheet.SurfaceTotal > 0 ? sheet.SurfaceTotal : 1;
currRatio = ratioProt(num, den); currRatio = ComLib.ratioProt(num, den);
workRatio.Add(currRatio); workRatio.Add(currRatio);
if (!materialsList.Contains(sheet.MatId)) if (!materialsList.Contains(sheet.MatId))
{ {
@@ -258,18 +258,6 @@ namespace NKC_WF.WebUserControls
{ {
} }
/// <summary>
/// Effettua divisione evitando zeri a den...
/// </summary>
/// <param name="num"></param>
/// <param name="den"></param>
/// <returns></returns>
protected double ratioProt(double num, double den)
{
den = den == 0 ? 1 : den;
return num / den;
}
#endregion Protected Methods #endregion Protected Methods
} }
} }
@@ -12,15 +12,6 @@ namespace NKC_WF.WebUserControls
{ {
public partial class cmp_batchDetailSplit : BaseUserControl public partial class cmp_batchDetailSplit : BaseUserControl
{ {
#region Protected Fields
/// <summary>
/// Master Place (hard-coded)
/// </summary>
protected string PlaceCod = "VIRTNE";
#endregion Protected Fields
#region Protected Properties #region Protected Properties
protected bool BatchIsAncestor protected bool BatchIsAncestor
@@ -59,20 +50,6 @@ namespace NKC_WF.WebUserControls
} }
} }
public bool isSplitted
{
get
{
bool answ = false;
bool.TryParse(hfIsSplit.Value, out answ);
return answ;
}
set
{
hfIsSplit.Value = $"{value}";
}
}
protected int lastValRatio protected int lastValRatio
{ {
get get
@@ -192,6 +169,20 @@ namespace NKC_WF.WebUserControls
} }
} }
public bool isSplitted
{
get
{
bool answ = false;
bool.TryParse(hfIsSplit.Value, out answ);
return answ;
}
set
{
hfIsSplit.Value = $"{value}";
}
}
#endregion Public Properties #endregion Public Properties
#region Private Methods #region Private Methods
+42 -17
View File
@@ -1,20 +1,45 @@
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_devUtils.ascx.cs" Inherits="NKC_WF.WebUserControls.cmp_devUtils" %> <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_devUtils.ascx.cs" Inherits="NKC_WF.WebUserControls.cmp_devUtils" %>
<div class="shortcuts"> <div class="shortcuts">
<div class="row"> <div class="row">
<div class="col"> <div class="col-4">
<asp:LinkButton runat="server" ID="lbtResetStackBuild" class="shortcut" OnClick="lbtResetStackBuild_Click" OnClientClick='return confirm("Sicuro di voler resettare tutti i dati di preparazione Stacks?")'> <i class="fa fa-database shortcut-icon"></i><span class="shortcut-label"><b> <%: traduci ("reset") %></b><br /> Stack building</span> </asp:LinkButton> <div class="card">
<div class="card-header">
<h4>Batch Stats</h4>
</div>
<div class="card-body">
<div class="col">
<asp:LinkButton runat="server" ID="lbtRedoStats" class="shortcut" OnClientClick='return confirm("Sicuro di voler recuperare e ricalcolare i dati di stats x Sheets & Batch?")' OnClick="lbtRedoStats_Click"> <i class="fa fa-bar-chart shortcut-icon"></i><span class="shortcut-label"><b>Calc</b><br /> Stats (Re)Build</span> </asp:LinkButton>
</div>
<asp:Label runat="server" ID="lblMsgOut" CssClass="small" />
</div>
<div class="card-footer">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><span class="small">Batch</span></span>
</div>
<asp:TextBox runat="server" ID="txtNumBatch" TextMode="Number" CssClass="form-control" Text="1" ToolTip="Batch # (0=all)" Placeholder="Batch # (0=all)" />
</div>
</div>
</div>
</div>
<div class="col-8">
<div class="row">
<div class="col">
<asp:LinkButton runat="server" ID="lbtResetStackBuild" class="shortcut" OnClick="lbtResetStackBuild_Click" OnClientClick='return confirm("Sicuro di voler resettare tutti i dati di preparazione Stacks?")'> <i class="fa fa-database shortcut-icon"></i><span class="shortcut-label"><b> <%: traduci ("reset") %></b><br /> Stack building</span> </asp:LinkButton>
</div>
<div class="col">
<asp:LinkButton runat="server" ID="lbtResetNest" class="shortcut" OnClientClick='return confirm("Sicuro di voler resettare tutti i dati di Nesting? I Batch torneranno come appena importati e PRIMA di ogni chiamata al NESTING...")' OnClick="lbtResetNest_Click"> <i class="fa fa-file-image-o shortcut-icon"></i><span class="shortcut-label"><b> <%: traduci ("reset") %></b><br /> Nesting Calls</span> </asp:LinkButton>
</div>
<div class="col">
<asp:LinkButton runat="server" ID="lbtSaveLastAnsw" class="shortcut" OnClientClick='return confirm("Sicuro di voler salvare ultima risposta NESTING?")' OnClick="lbtSaveLastAnsw_Click"> <i class="fa fa-file-image-o shortcut-icon"></i><span class="shortcut-label"><b># <%: traduci ("Save") %></b><br /> LAST Call</span> </asp:LinkButton>
</div>
<div class="col">
<asp:HyperLink runat="server" ID="hlDbgQrCode" NavigateUrl="../site/DBG_QRCode_Unload" Target="_blank" class="shortcut"><i class="fa fa-qrcode shortcut-icon"></i><span class="shortcut-label"><b> <%: traduci ("Debug") %></b><br /> QRCode</span></asp:HyperLink>
</div>
<div class="col">
<asp:LinkButton runat="server" ID="lbtResetProd" class="shortcut" OnClientClick='return confirm("Sicuro di voler resettare tutti i dati di PROD? I fogli (batch hard coded) torneranno tutti in stato zero e non ancora stampati...")' OnClick="lbtResetProd_Click"> <i class="fa fa-wrench shortcut-icon"></i><span class="shortcut-label"><b># <%: traduci ("reset") %></b><br /> PROD call</span> </asp:LinkButton>
</div>
</div>
</div>
</div> </div>
<div class="col"> </div>
<asp:LinkButton runat="server" ID="lbtResetNest" class="shortcut" OnClientClick='return confirm("Sicuro di voler resettare tutti i dati di Nesting? I Batch torneranno come appena importati e PRIMA di ogni chiamata al NESTING...")' OnClick="lbtResetNest_Click"> <i class="fa fa-file-image-o shortcut-icon"></i><span class="shortcut-label"><b> <%: traduci ("reset") %></b><br /> Nesting Calls</span> </asp:LinkButton>
</div>
<div class="col">
<asp:LinkButton runat="server" ID="lbtSaveLastAnsw" class="shortcut" OnClientClick='return confirm("Sicuro di voler salvare ultima risposta NESTING?")' OnClick="lbtSaveLastAnsw_Click" > <i class="fa fa-file-image-o shortcut-icon"></i><span class="shortcut-label"><b># <%: traduci ("Save") %></b><br /> LAST Call</span> </asp:LinkButton>
</div>
<div class="col">
<asp:HyperLink runat="server" ID="hlDbgQrCode" NavigateUrl="../site/DBG_QRCode_Unload" Target="_blank" class="shortcut"><i class="fa fa-qrcode shortcut-icon"></i><span class="shortcut-label"><b> <%: traduci ("Debug") %></b><br /> QRCode</span></asp:HyperLink>
</div>
<div class="col">
<asp:LinkButton runat="server" ID="lbtResetProd" class="shortcut" OnClientClick='return confirm("Sicuro di voler resettare tutti i dati di PROD? I fogli (batch hard coded) torneranno tutti in stato zero e non ancora stampati...")' OnClick="lbtResetProd_Click" > <i class="fa fa-wrench shortcut-icon"></i><span class="shortcut-label"><b># <%: traduci ("reset") %></b><br /> PROD call</span> </asp:LinkButton>
</div>
</div>
</div>
@@ -2,13 +2,67 @@
using Newtonsoft.Json; using Newtonsoft.Json;
using NKC_SDK; using NKC_SDK;
using System; using System;
using System.Diagnostics;
namespace NKC_WF.WebUserControls namespace NKC_WF.WebUserControls
{ {
public partial class cmp_devUtils : BaseUserControl public partial class cmp_devUtils : BaseUserControl
{ {
#region Protected Properties
protected int BatchID
{
get
{
int answ = -1;
int.TryParse(txtNumBatch.Text, out answ);
return answ;
}
set
{
txtNumBatch.Text = $"{value}";
}
}
#endregion Protected Properties
#region Protected Methods #region Protected Methods
protected void lbtRedoStats_Click(object sender, EventArgs e)
{
Stopwatch stopWatchTotal = new Stopwatch();
Stopwatch stopWatchLap = new Stopwatch();
stopWatchTotal.Start();
int numBatch = 0;
// ricalcolo per singolo batch o per tutti i batch (rich 0) le statistiche
if (BatchID > 0)
{
numBatch++;
stopWatchLap.Restart();
ComLib.man.updateSheetStatsByBatch(BatchID);
stopWatchLap.Stop();
Log.Instance.Info($"Batch Recalculation | BatchID: {BatchID} | elapsed {stopWatchLap.Elapsed.TotalMilliseconds} ms");
}
else
{
// ciclo su tutti
DataLayer DLMan = new DataLayer();
var batchList = DLMan.taBL.GetData();
foreach (var batch in batchList)
{
numBatch++;
stopWatchLap.Restart();
ComLib.man.updateSheetStatsByBatch(batch.BatchID);
stopWatchLap.Stop();
Log.Instance.Info($"Batch Recalculation | BatchID: {batch.BatchID} | elapsed {stopWatchLap.Elapsed.TotalMilliseconds} ms");
}
}
stopWatchTotal.Stop();
string outMsg = $"Done! # Batch: {numBatch} | elapsed {stopWatchTotal.Elapsed.TotalSeconds:N3} sec";
Log.Instance.Info(outMsg);
lblMsgOut.Text = outMsg;
}
protected void lbtResetNest_Click(object sender, EventArgs e) protected void lbtResetNest_Click(object sender, EventArgs e)
{ {
DLMan.taBL.resetNesting(-9999); DLMan.taBL.resetNesting(-9999);
+47 -20
View File
@@ -1,10 +1,10 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <generato automaticamente> // <auto-generated>
// Codice generato da uno strumento. // This code was generated by a tool.
// //
// Le modifiche a questo file possono causare un comportamento non corretto e verranno perse se // Changes to this file may cause incorrect behavior and will be lost if
// il codice viene rigenerato. // the code is regenerated.
// </generato automaticamente> // </auto-generated>
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
namespace NKC_WF.WebUserControls namespace NKC_WF.WebUserControls
@@ -15,47 +15,74 @@ namespace NKC_WF.WebUserControls
{ {
/// <summary> /// <summary>
/// Controllo lbtResetStackBuild. /// lbtRedoStats control.
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// Campo generato automaticamente. /// Auto-generated field.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.LinkButton lbtRedoStats;
/// <summary>
/// lblMsgOut control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblMsgOut;
/// <summary>
/// txtNumBatch control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox txtNumBatch;
/// <summary>
/// lbtResetStackBuild control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks> /// </remarks>
protected global::System.Web.UI.WebControls.LinkButton lbtResetStackBuild; protected global::System.Web.UI.WebControls.LinkButton lbtResetStackBuild;
/// <summary> /// <summary>
/// Controllo lbtResetNest. /// lbtResetNest control.
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// Campo generato automaticamente. /// Auto-generated field.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// To modify move field declaration from designer file to code-behind file.
/// </remarks> /// </remarks>
protected global::System.Web.UI.WebControls.LinkButton lbtResetNest; protected global::System.Web.UI.WebControls.LinkButton lbtResetNest;
/// <summary> /// <summary>
/// Controllo lbtSaveLastAnsw. /// lbtSaveLastAnsw control.
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// Campo generato automaticamente. /// Auto-generated field.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// To modify move field declaration from designer file to code-behind file.
/// </remarks> /// </remarks>
protected global::System.Web.UI.WebControls.LinkButton lbtSaveLastAnsw; protected global::System.Web.UI.WebControls.LinkButton lbtSaveLastAnsw;
/// <summary> /// <summary>
/// Controllo hlDbgQrCode. /// hlDbgQrCode control.
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// Campo generato automaticamente. /// Auto-generated field.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// To modify move field declaration from designer file to code-behind file.
/// </remarks> /// </remarks>
protected global::System.Web.UI.WebControls.HyperLink hlDbgQrCode; protected global::System.Web.UI.WebControls.HyperLink hlDbgQrCode;
/// <summary> /// <summary>
/// Controllo lbtResetProd. /// lbtResetProd control.
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// Campo generato automaticamente. /// Auto-generated field.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// To modify move field declaration from designer file to code-behind file.
/// </remarks> /// </remarks>
protected global::System.Web.UI.WebControls.LinkButton lbtResetProd; protected global::System.Web.UI.WebControls.LinkButton lbtResetProd;
} }
@@ -4,6 +4,7 @@
<asp:HiddenField runat="server" ID="hfForceRedirect" /> <asp:HiddenField runat="server" ID="hfForceRedirect" />
<asp:HiddenField runat="server" ID="hfFilePrefix" /> <asp:HiddenField runat="server" ID="hfFilePrefix" />
<asp:HiddenField runat="server" ID="hfFileSuffix" /> <asp:HiddenField runat="server" ID="hfFileSuffix" />
<asp:HiddenField runat="server" ID="hfChkBatchApp" />
<div id="divFileUpl" runat="server" class="d-flex flex-row-reverse"> <div id="divFileUpl" runat="server" class="d-flex flex-row-reverse">
<div class="px-2"> <div class="px-2">
<asp:LinkButton ID="lbtCancel" runat="server" Text="Annulla" OnClick="btnCancel_Click" CssClass="btn btn-warning form-control"><%: traduci("cancel") %> <i class="fa fa-ban" aria-hidden="true"></i></asp:LinkButton> <asp:LinkButton ID="lbtCancel" runat="server" Text="Annulla" OnClick="btnCancel_Click" CssClass="btn btn-warning form-control"><%: traduci("cancel") %> <i class="fa fa-ban" aria-hidden="true"></i></asp:LinkButton>
+41 -11
View File
@@ -36,6 +36,20 @@ namespace NKC_WF.WebUserContols
#region Public Properties #region Public Properties
public bool checkBatchAppr
{
get
{
bool answ = true;
bool.TryParse(hfChkBatchApp.Value, out answ);
return answ;
}
set
{
hfChkBatchApp.Value = value.ToString();
}
}
/// <summary> /// <summary>
/// Prefisso file abilitato /// Prefisso file abilitato
/// </summary> /// </summary>
@@ -169,6 +183,7 @@ namespace NKC_WF.WebUserContols
protected void Upload(object sender, EventArgs e) protected void Upload(object sender, EventArgs e)
{ {
bool checkFileOk = true;
string uplFileName = ""; string uplFileName = "";
string uploadedFilename = ""; string uploadedFilename = "";
string batchName = ""; string batchName = "";
@@ -210,19 +225,34 @@ namespace NKC_WF.WebUserContols
} }
else else
{ {
contentType = FileUpload1.PostedFile.ContentType; // se richiesto controllo duplicati
// accedo allo stream del file allegato if (checkBatchAppr)
using (Stream fs = FileUpload1.PostedFile.InputStream)
{ {
// scrivo su file // controllo se ci sia un batch duplicato
FileStream file = new FileStream(savedFilename, FileMode.Create, FileAccess.Write); checkFileOk = DLMan.taBL.getApprovedByTakt(batchName).Count == 0;
fs.CopyTo(file); }
file.Close();
// log! if (!checkFileOk)
logger.lg.scriviLog($"Effettuato salvataggio file {uploadedFilename} come {savedFilename}"); {
divMessagge.Visible = true;
lblMessage.Text = $"{traduci("Error_BatchIsApproved")}";
}
else
{
contentType = FileUpload1.PostedFile.ContentType;
// accedo allo stream del file allegato
using (Stream fs = FileUpload1.PostedFile.InputStream)
{
// scrivo su file
FileStream file = new FileStream(savedFilename, FileMode.Create, FileAccess.Write);
fs.CopyTo(file);
file.Close();
// log!
logger.lg.scriviLog($"Effettuato salvataggio file {uploadedFilename} come {savedFilename}");
}
// segnaloc he ho CARICATO IN LOCALE il file
reportFileUploaded(new FileUploadEventArgs(dirFrom, uplFileName, batchName));
} }
// segnaloc he ho CARICATO IN LOCALE il file
reportFileUploaded(new FileUploadEventArgs(dirFrom, uplFileName, batchName));
} }
} }
} }
+9
View File
@@ -50,6 +50,15 @@ namespace NKC_WF.WebUserContols
/// </remarks> /// </remarks>
protected global::System.Web.UI.WebControls.HiddenField hfFileSuffix; protected global::System.Web.UI.WebControls.HiddenField hfFileSuffix;
/// <summary>
/// hfChkBatchApp control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.HiddenField hfChkBatchApp;
/// <summary> /// <summary>
/// divFileUpl control. /// divFileUpl control.
/// </summary> /// </summary>
+21 -16
View File
@@ -6,14 +6,14 @@ namespace NKC_WF.WebUserControls
{ {
public partial class cmp_footer : BaseUserControl public partial class cmp_footer : BaseUserControl
{ {
public event EventHandler eh_doRefresh; #region Private Methods
protected void Page_Load(object sender, EventArgs e)
private void setClock()
{ {
// sistemo le stringhe... lblDateTime.Text = DateTime.Now.ToString("ddd dd.MM.yyyy, HH:mm:ss");
lblApp.Text = string.Format("<b>{0}</b> v.{1}", ConfigurationManager.AppSettings.Get("appName"), System.Reflection.Assembly.GetExecutingAssembly().GetName().Version); lblCodOperatore.Text = $"{user_std.UtSn.CognomeNome} ({Page.User.Identity.Name})";
setTimer();
setClock();
} }
/// <summary> /// <summary>
/// imposta il tempo di scadenza del timer x il refresh della pagina (della parte top) per evitare che la sessione sul server scada /// imposta il tempo di scadenza del timer x il refresh della pagina (della parte top) per evitare che la sessione sul server scada
/// </summary> /// </summary>
@@ -21,20 +21,25 @@ namespace NKC_WF.WebUserControls
{ {
Timer1.Interval = SteamWare.memLayer.ML.confReadInt("intUpdatePagina_ms"); Timer1.Interval = SteamWare.memLayer.ML.confReadInt("intUpdatePagina_ms");
} }
#endregion Private Methods
#region Protected Methods
protected void Page_Load(object sender, EventArgs e)
{
// sistemo le stringhe...
lblApp.Text = string.Format("<b>{0}</b> v.{1}", ConfigurationManager.AppSettings.Get("appName"), System.Reflection.Assembly.GetExecutingAssembly().GetName().Version);
setTimer();
setClock();
}
protected void Timer1_Tick(object sender, EventArgs e) protected void Timer1_Tick(object sender, EventArgs e)
{ {
setClock(); setClock();
// se qualcuno ascolta sollevo evento nuovo valore... raiseEvent();
if (eh_doRefresh != null)
{
eh_doRefresh(this, new EventArgs());
}
} }
private void setClock() #endregion Protected Methods
{
lblDateTime.Text = DateTime.Now.ToString("ddd dd.MM.yyyy, HH:mm:ss");
lblCodOperatore.Text = $"{user_std.UtSn.CognomeNome} ({Page.User.Identity.Name})";
}
} }
} }
+63 -48
View File
@@ -7,44 +7,27 @@ namespace NKC_WF.WebUserControls
{ {
public partial class cmp_menuTop : BaseUserControl public partial class cmp_menuTop : BaseUserControl
{ {
public event EventHandler eh_doRefresh; #region Protected Properties
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
checkAuth();
searchVal = "";
doSearch();
updateTreeMenu();
}
}
private void checkAuth()
{
// in primis SOLO SE non è permesso login anonymous...
if (!enableAnonym)
{
if (!Page.User.Identity.IsAuthenticated)
{
Response.Redirect("default");
}
}
}
/// <summary> /// <summary>
/// imposta visibilità search globale /// Valore ricerca attivo
/// </summary> /// </summary>
public bool showSearch protected string searchVal
{ {
get get
{ {
return divSearch.Visible; return txtSearch.Text.Trim();
} }
set set
{ {
divSearch.Visible = value; txtSearch.Text = value.Trim();
} }
} }
#endregion Protected Properties
#region Public Properties
/// <summary> /// <summary>
/// Abilitazione esecuzione anonima /// Abilitazione esecuzione anonima
/// </summary> /// </summary>
@@ -62,9 +45,35 @@ namespace NKC_WF.WebUserControls
} }
} }
protected void txtSearch_TextChanged(object sender, EventArgs e) /// <summary>
/// imposta visibilità search globale
/// </summary>
public bool showSearch
{ {
doSearch(); get
{
return divSearch.Visible;
}
set
{
divSearch.Visible = value;
}
}
#endregion Public Properties
#region Private Methods
private void checkAuth()
{
// in primis SOLO SE non è permesso login anonymous...
if (!enableAnonym)
{
if (!Page.User.Identity.IsAuthenticated)
{
Response.Redirect("default");
}
}
} }
private void doSearch() private void doSearch()
@@ -78,27 +87,9 @@ namespace NKC_WF.WebUserControls
{ {
memLayer.ML.emptySessionVal("valoreSearch"); memLayer.ML.emptySessionVal("valoreSearch");
} }
// se qualcuno ascolta sollevo evento nuovo valore... raiseEvent();
if (eh_doRefresh != null)
{
eh_doRefresh(this, new EventArgs());
}
} }
/// <summary>
/// Valore ricerca attivo
/// </summary>
protected string searchVal
{
get
{
return txtSearch.Text.Trim();
}
set
{
txtSearch.Text = value.Trim();
}
}
/// <summary> /// <summary>
/// aggiornamento del menù /// aggiornamento del menù
/// </summary> /// </summary>
@@ -127,6 +118,11 @@ namespace NKC_WF.WebUserControls
} }
} }
} }
#endregion Private Methods
#region Protected Methods
/// <summary> /// <summary>
/// click su pagina corrente, fa update! /// click su pagina corrente, fa update!
/// </summary> /// </summary>
@@ -140,9 +136,28 @@ namespace NKC_WF.WebUserControls
Response.Redirect("default"); Response.Redirect("default");
} }
} }
protected void lbtSearch_Click(object sender, EventArgs e) protected void lbtSearch_Click(object sender, EventArgs e)
{ {
doSearch(); doSearch();
} }
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
checkAuth();
searchVal = "";
doSearch();
updateTreeMenu();
}
}
protected void txtSearch_TextChanged(object sender, EventArgs e)
{
doSearch();
}
#endregion Protected Methods
} }
} }
+11 -14
View File
@@ -4,20 +4,8 @@ namespace NKC_WF.WebUserControls
{ {
public partial class cmp_numRow : BaseUserControl public partial class cmp_numRow : BaseUserControl
{ {
public event EventHandler eh_doRefresh; #region Public Properties
protected void Page_Load(object sender, EventArgs e)
{
}
private void raiseEvent()
{
// se qualcuno ascolta sollevo evento nuovo valore...
if (eh_doRefresh != null)
{
eh_doRefresh(this, new EventArgs());
}
}
public int numRow public int numRow
{ {
set set
@@ -32,10 +20,19 @@ namespace NKC_WF.WebUserControls
} }
} }
#endregion Public Properties
#region Protected Methods
protected void Page_Load(object sender, EventArgs e)
{
}
protected void txtNumRow_TextChanged(object sender, EventArgs e) protected void txtNumRow_TextChanged(object sender, EventArgs e)
{ {
raiseEvent(); raiseEvent();
} }
#endregion Protected Methods
} }
} }
+82 -70
View File
@@ -6,80 +6,17 @@ namespace NKC_WF.WebUserControls
{ {
public partial class mod_righePag : BaseUserControl public partial class mod_righePag : BaseUserControl
{ {
#region Public Events
/// <summary> /// <summary>
/// indicato (nuovo) numero righe x pagina /// indicato (nuovo) numero righe x pagina
/// </summary> /// </summary>
public event EventHandler eh_newNum; public event EventHandler eh_newNum;
/// <summary>
/// caricamento pagina #endregion Public Events
/// </summary>
/// <param name="sender"></param> #region Protected Properties
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
numRowReq = numRowPag;
}
}
/// <summary>
/// stringa UID univoca
/// </summary>
public string uid
{
get
{
return this.UniqueID.Replace("$", "_").Replace("-", "_");
}
}
/// <summary>
/// effettua traduzione del lemma
/// </summary>
/// <param name="lemma"></param>
/// <returns></returns>
public string traduci(string lemma)
{
return user_std.UtSn.Traduci(lemma);
}
/// <summary>
/// aggiorno controllo paginazione...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void txtNumRighe_TextChanged(object sender, EventArgs e)
{
// salvo num righe...
numRowPag = numRowReq;
// sollevo evento nuovo valore...
if (eh_newNum != null)
{
eh_newNum(this, new EventArgs());
}
}
/// <summary>
/// numero righe per pagina (in sessione)
/// </summary>
public int numRowPag
{
get
{
int answ = 10;
try
{
answ = memLayer.ML.IntSessionObj(uid + "_numRowPag");
}
catch
{
answ = 10;
}
return answ;
}
set
{
memLayer.ML.setSessionVal(uid + "_numRowPag", value);
numRowReq = value;
}
}
/// <summary> /// <summary>
/// numero righe gridview da mostrare legato a controllo textbox /// numero righe gridview da mostrare legato a controllo textbox
/// </summary> /// </summary>
@@ -106,5 +43,80 @@ namespace NKC_WF.WebUserControls
txtNumRighe.Text = value.ToString(); txtNumRighe.Text = value.ToString();
} }
} }
#endregion Protected Properties
#region Public Properties
/// <summary>
/// numero righe per pagina (in sessione)
/// </summary>
public int numRowPag
{
get
{
int answ = 10;
try
{
answ = memLayer.ML.IntSessionObj(uid + "_numRowPag");
}
catch
{
answ = 10;
}
return answ;
}
set
{
memLayer.ML.setSessionVal(uid + "_numRowPag", value);
numRowReq = value;
}
}
/// <summary>
/// stringa UID univoca
/// </summary>
public string uid
{
get
{
return this.UniqueID.Replace("$", "_").Replace("-", "_");
}
}
#endregion Public Properties
#region Protected Methods
/// <summary>
/// caricamento pagina
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
numRowReq = numRowPag;
}
}
/// <summary>
/// aggiorno controllo paginazione...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void txtNumRighe_TextChanged(object sender, EventArgs e)
{
// salvo num righe...
numRowPag = numRowReq;
// sollevo evento nuovo valore...
if (eh_newNum != null)
{
eh_newNum(this, new EventArgs());
}
}
#endregion Protected Methods
} }
} }
+6 -6
View File
@@ -39,7 +39,7 @@
<package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="3.6.0" targetFramework="net462" /> <package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="3.6.0" targetFramework="net462" />
<package id="Microsoft.CodeQuality.Analyzers" version="3.3.2" targetFramework="net462" developmentDependency="true" /> <package id="Microsoft.CodeQuality.Analyzers" version="3.3.2" targetFramework="net462" developmentDependency="true" />
<package id="Microsoft.NetCore.Analyzers" version="3.3.2" targetFramework="net462" developmentDependency="true" /> <package id="Microsoft.NetCore.Analyzers" version="3.3.2" targetFramework="net462" developmentDependency="true" />
<package id="Microsoft.NETCore.Platforms" version="5.0.2" targetFramework="net462" /> <package id="Microsoft.NETCore.Platforms" version="5.0.3" targetFramework="net462" />
<package id="Microsoft.NetFramework.Analyzers" version="3.3.2" targetFramework="net462" developmentDependency="true" /> <package id="Microsoft.NetFramework.Analyzers" version="3.3.2" targetFramework="net462" developmentDependency="true" />
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net462" /> <package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net462" />
<package id="Microsoft.Web.RedisSessionStateProvider" version="4.0.1" targetFramework="net462" /> <package id="Microsoft.Web.RedisSessionStateProvider" version="4.0.1" targetFramework="net462" />
@@ -48,19 +48,19 @@
<package id="MongoDB.Bson" version="2.13.1" targetFramework="net462" /> <package id="MongoDB.Bson" version="2.13.1" targetFramework="net462" />
<package id="MongoDB.Driver" version="2.13.1" targetFramework="net462" /> <package id="MongoDB.Driver" version="2.13.1" targetFramework="net462" />
<package id="MongoDB.Driver.Core" version="2.13.1" targetFramework="net462" /> <package id="MongoDB.Driver.Core" version="2.13.1" targetFramework="net462" />
<package id="MongoDB.Libmongocrypt" version="1.2.2" targetFramework="net462" /> <package id="MongoDB.Libmongocrypt" version="1.2.3" targetFramework="net462" />
<package id="NETStandard.Library" version="2.0.3" targetFramework="net462" /> <package id="NETStandard.Library" version="2.0.3" targetFramework="net462" />
<package id="Newtonsoft.Json" version="13.0.1" targetFramework="net462" /> <package id="Newtonsoft.Json" version="13.0.1" targetFramework="net462" />
<package id="NLog" version="4.7.10" targetFramework="net462" /> <package id="NLog" version="4.7.11" targetFramework="net462" />
<package id="PDFsharp" version="1.50.5147" targetFramework="net462" /> <package id="PDFsharp" version="1.50.5147" targetFramework="net462" />
<package id="Pipelines.Sockets.Unofficial" version="2.2.0" targetFramework="net462" /> <package id="Pipelines.Sockets.Unofficial" version="2.2.0" targetFramework="net462" />
<package id="popper.js" version="1.16.1" targetFramework="net462" /> <package id="popper.js" version="1.16.1" targetFramework="net462" />
<package id="SharpCompress" version="0.28.3" targetFramework="net462" /> <package id="SharpCompress" version="0.29.0" targetFramework="net462" />
<package id="SharpZipLib" version="1.3.2" targetFramework="net462" /> <package id="SharpZipLib" version="1.3.2" targetFramework="net462" />
<package id="Snappy.NET" version="1.1.1.8" targetFramework="net462" /> <package id="Snappy.NET" version="1.1.1.8" targetFramework="net462" />
<package id="StackExchange.Redis" version="2.2.62" targetFramework="net462" /> <package id="StackExchange.Redis" version="2.2.62" targetFramework="net462" />
<package id="SteamWare" version="5.1.2108.1115" targetFramework="net462" /> <package id="SteamWare" version="5.1.2109.1713" targetFramework="net462" />
<package id="SteamWare.Logger" version="5.1.2108.1115" targetFramework="net462" /> <package id="SteamWare.Logger" version="5.1.2109.1713" targetFramework="net462" />
<package id="System.Buffers" version="4.5.1" targetFramework="net462" /> <package id="System.Buffers" version="4.5.1" targetFramework="net462" />
<package id="System.Diagnostics.PerformanceCounter" version="5.0.1" targetFramework="net462" /> <package id="System.Diagnostics.PerformanceCounter" version="5.0.1" targetFramework="net462" />
<package id="System.IO.Compression" version="4.3.0" targetFramework="net462" /> <package id="System.IO.Compression" version="4.3.0" targetFramework="net462" />
+206 -166
View File
@@ -9,17 +9,19 @@ namespace NKC_WF.site
{ {
public partial class BatchPreview : BasePage public partial class BatchPreview : BasePage
{ {
#region Protected Properties
/// <summary> /// <summary>
/// Batch corrente... /// BunkId selezionato
/// </summary> /// </summary>
public int BatchId protected int BunkId
{ {
get get
{ {
int answ = memLayer.ML.QSI("BatchId"); return cmp_BP_bunkList.BunkIdSel;
return answ;
} }
} }
/// <summary> /// <summary>
/// Indice bunk selezionato (0..n-1) /// Indice bunk selezionato (0..n-1)
/// </summary> /// </summary>
@@ -34,16 +36,18 @@ namespace NKC_WF.site
cmp_BP_bunkList.selIndex = value; cmp_BP_bunkList.selIndex = value;
} }
} }
/// <summary> /// <summary>
/// BunkId selezionato /// BunkId selezionato
/// </summary> /// </summary>
protected int BunkId protected int SheetId
{ {
get get
{ {
return cmp_BP_bunkList.BunkIdSel; return cmp_BP_sheetList.SheetIdSel;
} }
} }
/// <summary> /// <summary>
/// Indice sheet selezionato (0..n-1) /// Indice sheet selezionato (0..n-1)
/// </summary> /// </summary>
@@ -58,34 +62,15 @@ namespace NKC_WF.site
cmp_BP_sheetList.selIndex = value; cmp_BP_sheetList.selIndex = value;
} }
} }
/// <summary>
/// BunkId selezionato
/// </summary>
protected int SheetId
{
get
{
return cmp_BP_sheetList.SheetIdSel;
}
}
/// <summary>
/// valore selezionato nello slider
/// </summary>
protected int valSlider
{
get
{
return cmp_slider.selValue;
}
set
{
cmp_slider.selValue = value;
}
}
/// <summary> /// <summary>
/// Chaive URL base x gestione sheet del batch corrente /// Chaive URL base x gestione sheet del batch corrente
/// </summary> /// </summary>
protected string tabSheetKey; protected string tabSheetKey
{
get => $"{memLayer.ML.redHash($"TabSheets")}:{BatchId}";
}
/// <summary> /// <summary>
/// Elenco fogli della gestione corrente /// Elenco fogli della gestione corrente
/// </summary> /// </summary>
@@ -108,145 +93,50 @@ namespace NKC_WF.site
} }
set set
{ {
string rawData = JsonConvert.SerializeObject(value); string rawData = "";
memLayer.ML.setRSV(tabSheetKey, rawData, 60); if (value.Count > 0)
}
}
/// <summary>
/// Restituisce la riga dall'indice inserito (
/// </summary>
/// <param name="indice">valore 1..maxSheets</param>
/// <returns></returns>
protected DS_App.SheetListRow rigaSel(int indice)
{
DS_App.SheetListRow answ = null;
// init var
int maxNum = tabSheets.Count;
// base 0 --> riduco di 1...
indice--;
// controllo valore sia accettabile...
indice = indice < 0 ? 0 : indice;
indice = indice >= maxNum ? maxNum - 1 : indice;
try
{
answ = tabSheets[indice];
}
catch
{ }
// restituisco!
return answ;
}
/// <summary>
/// Restituisce la PRIMA riga dal codice BUNK inserito
/// </summary>
/// <param name="BunkId">valore 1..numBunk</param>
/// <returns></returns>
protected DS_App.SheetListRow rigaByBunk(int BunkId)
{
DS_App.SheetListRow answ = null;
try
{
answ = tabSheets.First(x => x.StackID == BunkId);
}
catch
{ }
// restituisco!
return answ;
}
/// <summary>
/// Restituisce la riga dal codice Sheet inserito
/// </summary>
/// <param name="SheetId">valore 1..numBunk</param>
/// <returns></returns>
protected DS_App.SheetListRow rigaBySheet(int SheetId)
{
DS_App.SheetListRow answ = null;
try
{
answ = tabSheets.First(x => x.StackID == SheetId);
}
catch
{ }
// restituisco!
return answ;
}
/// <summary>
/// caicamento pagina
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
((SiteMaster)this.Master).showSearch = false;
tabSheetKey = $"{memLayer.ML.redHash($"TabSheets")}:{BatchId}";
// imposto bunk!
cmp_BP_bunkList.BatchId = BatchId;
setupSlider();
doUpdate();
}
cmp_BP_bunkList.eh_doRefresh += Cmp_BP_bunkList_eh_doRefresh;
cmp_BP_sheetList.eh_doRefresh += Cmp_BP_sheetList_eh_doRefresh;
cmp_slider.eh_doRefresh += Cmp_slider_eh_doRefresh;
}
/// <summary>
/// Setup slider da num fogli
/// </summary>
private void setupSlider()
{
cmp_slider.minVal = 1;
cmp_slider.maxVal = tabSheets.Count;
cmp_slider.selValue = 1;
}
private void doUpdate()
{
updateBySlider();
}
private void Cmp_slider_eh_doRefresh(object sender, EventArgs e)
{
updateBySlider();
}
/// <summary>
/// Effettua update da Slider --> valore selezionato
/// </summary>
private void updateBySlider()
{
// il valore assoluto dello slider è già corretto... cerco nella tab!
DS_App.SheetListRow currRow = rigaSel(valSlider);
if (currRow != null)
{
// recupero indice bunk e sheets e seleziono
bunkIndex = currRow.StackIndex - 1;
cmp_BP_sheetList.BunkId = cmp_BP_bunkList.BunkIdSel;
sheetIndex = currRow.SheetIndex - 1;
// update svg...
cmp_MU_svgViewer.SheetId = currRow.SheetID;
}
}
private void Cmp_BP_sheetList_eh_doRefresh(object sender, EventArgs e)
{
// calcolo indice slider da chiave sheet...
int num = 1;
foreach (var item in tabSheets)
{
if (item.SheetID == cmp_BP_sheetList.SheetIdSel)
{ {
break; rawData = JsonConvert.SerializeObject(value);
}
else
{
num++;
} }
memLayer.ML.setRSV(tabSheetKey, rawData, 300);
} }
cmp_slider.selValue = num;
// update svg...
cmp_MU_svgViewer.SheetId = cmp_BP_sheetList.SheetIdSel;
} }
/// <summary>
/// valore selezionato nello slider
/// </summary>
protected int valSlider
{
get
{
return cmp_slider.selValue;
}
set
{
cmp_slider.selValue = value;
}
}
#endregion Protected Properties
#region Public Properties
/// <summary>
/// Batch corrente...
/// </summary>
public int BatchId
{
get
{
int answ = memLayer.ML.QSI("BatchId");
return answ;
}
}
#endregion Public Properties
#region Private Methods
private void Cmp_BP_bunkList_eh_doRefresh(object sender, EventArgs e) private void Cmp_BP_bunkList_eh_doRefresh(object sender, EventArgs e)
{ {
DS_App.SheetListRow currRow = rigaByBunk(cmp_BP_bunkList.BunkIdSel); DS_App.SheetListRow currRow = rigaByBunk(cmp_BP_bunkList.BunkIdSel);
@@ -254,7 +144,8 @@ namespace NKC_WF.site
{ {
// calcolo indice slider da chiave sheet... // calcolo indice slider da chiave sheet...
int num = 1; int num = 1;
foreach (var item in tabSheets) var currTabSheets = tabSheets;
foreach (var item in currTabSheets)
{ {
if (item.SheetID == currRow.SheetID) if (item.SheetID == currRow.SheetID)
{ {
@@ -273,5 +164,154 @@ namespace NKC_WF.site
cmp_MU_svgViewer.SheetId = currRow.SheetID; cmp_MU_svgViewer.SheetId = currRow.SheetID;
} }
} }
private void Cmp_BP_sheetList_eh_doRefresh(object sender, EventArgs e)
{
// calcolo indice slider da chiave sheet...
int num = 1;
var currTabSheets = tabSheets;
foreach (var item in currTabSheets)
{
if (item.SheetID == cmp_BP_sheetList.SheetIdSel)
{
break;
}
else
{
num++;
}
}
cmp_slider.selValue = num;
// update svg...
cmp_MU_svgViewer.SheetId = cmp_BP_sheetList.SheetIdSel;
}
private void Cmp_slider_eh_doRefresh(object sender, EventArgs e)
{
updateBySlider();
}
private void doUpdate()
{
updateBySlider();
}
/// <summary>
/// Setup slider da num fogli
/// </summary>
private void setupSlider()
{
cmp_slider.minVal = 1;
cmp_slider.maxVal = tabSheets.Count;
cmp_slider.selValue = 1;
}
/// <summary>
/// Effettua update da Slider --> valore selezionato
/// </summary>
private void updateBySlider()
{
// il valore assoluto dello slider è già corretto... cerco nella tab!
DS_App.SheetListRow currRow = rigaSel(valSlider);
if (currRow != null)
{
// recupero indice bunk e sheets e seleziono
bunkIndex = currRow.StackIndex - 1;
cmp_BP_sheetList.BunkId = cmp_BP_bunkList.BunkIdSel;
sheetIndex = currRow.SheetIndex - 1;
// update svg...
cmp_MU_svgViewer.SheetId = currRow.SheetID;
}
}
#endregion Private Methods
#region Protected Methods
/// <summary>
/// caicamento pagina
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
((SiteMaster)this.Master).showSearch = false;
// imposto bunk!
cmp_BP_bunkList.BatchId = BatchId;
setupSlider();
doUpdate();
}
cmp_BP_bunkList.eh_doRefresh += Cmp_BP_bunkList_eh_doRefresh;
cmp_BP_sheetList.eh_doRefresh += Cmp_BP_sheetList_eh_doRefresh;
cmp_slider.eh_doRefresh += Cmp_slider_eh_doRefresh;
}
/// <summary>
/// Restituisce la PRIMA riga dal codice BUNK inserito
/// </summary>
/// <param name="BunkId">valore 1..numBunk</param>
/// <returns></returns>
protected DS_App.SheetListRow rigaByBunk(int BunkId)
{
DS_App.SheetListRow answ = null;
try
{
var currTabSheets = tabSheets;
answ = currTabSheets.First(x => x.StackID == BunkId);
}
catch
{ }
// restituisco!
return answ;
}
/// <summary>
/// Restituisce la riga dal codice Sheet inserito
/// </summary>
/// <param name="SheetId">valore 1..numBunk</param>
/// <returns></returns>
protected DS_App.SheetListRow rigaBySheet(int SheetId)
{
DS_App.SheetListRow answ = null;
try
{
var currTabSheets = tabSheets;
answ = currTabSheets.First(x => x.StackID == SheetId);
}
catch
{ }
// restituisco!
return answ;
}
/// <summary>
/// Restituisce la riga dall'indice inserito (
/// </summary>
/// <param name="indice">valore 1..maxSheets</param>
/// <returns></returns>
protected DS_App.SheetListRow rigaSel(int indice)
{
DS_App.SheetListRow answ = null;
var currTabSheets = tabSheets;
// init var
int maxNum = currTabSheets.Count;
// base 0 --> riduco di 1...
indice--;
// controllo valore sia accettabile...
indice = indice < 0 ? 0 : indice;
indice = indice >= maxNum ? maxNum - 1 : indice;
try
{
answ = currTabSheets[indice];
}
catch
{ }
// restituisco!
return answ;
}
#endregion Protected Methods
} }
} }
+1 -1
View File
@@ -12,7 +12,7 @@
<div class="card-body"> <div class="card-body">
<div class="row"> <div class="row">
<div class="col-12"> <div class="col-12">
<uc1:cmp_fileUpload runat="server" ID="cmp_fileUpload" isWriteEnabled="true" fileSuffix=".dxf" /> <uc1:cmp_fileUpload runat="server" ID="cmp_fileUpload" isWriteEnabled="true" fileSuffix=".dxf" checkBatchAppr="false" />
</div> </div>
</div> </div>
<div class="row"> <div class="row">
+14 -14
View File
@@ -1,10 +1,10 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <generato automaticamente> // <auto-generated>
// Codice generato da uno strumento. // This code was generated by a tool.
// //
// Le modifiche a questo file possono causare un comportamento non corretto e verranno perse se // Changes to this file may cause incorrect behavior and will be lost if
// il codice viene rigenerato. // the code is regenerated.
// </generato automaticamente> // </auto-generated>
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
namespace NKC_WF.site namespace NKC_WF.site
@@ -15,29 +15,29 @@ namespace NKC_WF.site
{ {
/// <summary> /// <summary>
/// Controllo cmp_fileUpload. /// cmp_fileUpload control.
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// Campo generato automaticamente. /// Auto-generated field.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// To modify move field declaration from designer file to code-behind file.
/// </remarks> /// </remarks>
protected global::NKC_WF.WebUserContols.cmp_fileUpload cmp_fileUpload; protected global::NKC_WF.WebUserContols.cmp_fileUpload cmp_fileUpload;
/// <summary> /// <summary>
/// Controllo divFileList. /// divFileList control.
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// Campo generato automaticamente. /// Auto-generated field.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// To modify move field declaration from designer file to code-behind file.
/// </remarks> /// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divFileList; protected global::System.Web.UI.HtmlControls.HtmlGenericControl divFileList;
/// <summary> /// <summary>
/// Controllo cmp_batchList. /// cmp_batchList control.
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// Campo generato automaticamente. /// Auto-generated field.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// To modify move field declaration from designer file to code-behind file.
/// </remarks> /// </remarks>
protected global::NKC_WF.WebUserControls.cmp_batchList cmp_batchList; protected global::NKC_WF.WebUserControls.cmp_batchList cmp_batchList;
} }
+1 -1
View File
@@ -13,7 +13,7 @@
<div class="card-body"> <div class="card-body">
<div class="row"> <div class="row">
<div class="col-12"> <div class="col-12">
<uc1:cmp_fileUpload runat="server" ID="cmp_fileUpload" isWriteEnabled="true" forceRedirect="false" filePrefix="KIT" fileSuffix=".csv" /> <uc1:cmp_fileUpload runat="server" ID="cmp_fileUpload" isWriteEnabled="true" forceRedirect="false" filePrefix="KIT" fileSuffix=".csv" checkBatchAppr="false" />
<hr /> <hr />
</div> </div>
<div class="col-12"> <div class="col-12">
+26 -26
View File
@@ -1,10 +1,10 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <generato automaticamente> // <auto-generated>
// Codice generato da uno strumento. // This code was generated by a tool.
// //
// Le modifiche a questo file possono causare un comportamento non corretto e verranno perse se // Changes to this file may cause incorrect behavior and will be lost if
// il codice viene rigenerato. // the code is regenerated.
// </generato automaticamente> // </auto-generated>
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
namespace NKC_WF namespace NKC_WF
@@ -15,65 +15,65 @@ namespace NKC_WF
{ {
/// <summary> /// <summary>
/// Controllo cmp_fileUpload. /// cmp_fileUpload control.
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// Campo generato automaticamente. /// Auto-generated field.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// To modify move field declaration from designer file to code-behind file.
/// </remarks> /// </remarks>
protected global::NKC_WF.WebUserContols.cmp_fileUpload cmp_fileUpload; protected global::NKC_WF.WebUserContols.cmp_fileUpload cmp_fileUpload;
/// <summary> /// <summary>
/// Controllo upnlCheck. /// upnlCheck control.
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// Campo generato automaticamente. /// Auto-generated field.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// To modify move field declaration from designer file to code-behind file.
/// </remarks> /// </remarks>
protected global::System.Web.UI.UpdatePanel upnlCheck; protected global::System.Web.UI.UpdatePanel upnlCheck;
/// <summary> /// <summary>
/// Controllo cmp_kitImpCheck. /// cmp_kitImpCheck control.
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// Campo generato automaticamente. /// Auto-generated field.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// To modify move field declaration from designer file to code-behind file.
/// </remarks> /// </remarks>
protected global::NKC_WF.WebUserControls.cmp_kitImpCheck cmp_kitImpCheck; protected global::NKC_WF.WebUserControls.cmp_kitImpCheck cmp_kitImpCheck;
/// <summary> /// <summary>
/// Controllo divKitList. /// divKitList control.
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// Campo generato automaticamente. /// Auto-generated field.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// To modify move field declaration from designer file to code-behind file.
/// </remarks> /// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divKitList; protected global::System.Web.UI.HtmlControls.HtmlGenericControl divKitList;
/// <summary> /// <summary>
/// Controllo upnlList. /// upnlList control.
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// Campo generato automaticamente. /// Auto-generated field.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// To modify move field declaration from designer file to code-behind file.
/// </remarks> /// </remarks>
protected global::System.Web.UI.UpdatePanel upnlList; protected global::System.Web.UI.UpdatePanel upnlList;
/// <summary> /// <summary>
/// Controllo cmp_kitList. /// cmp_kitList control.
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// Campo generato automaticamente. /// Auto-generated field.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// To modify move field declaration from designer file to code-behind file.
/// </remarks> /// </remarks>
protected global::NKC_WF.WebUserControls.cmp_kitList cmp_kitList; protected global::NKC_WF.WebUserControls.cmp_kitList cmp_kitList;
/// <summary> /// <summary>
/// Controllo Timer1. /// Timer1 control.
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// Campo generato automaticamente. /// Auto-generated field.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// To modify move field declaration from designer file to code-behind file.
/// </remarks> /// </remarks>
protected global::System.Web.UI.Timer Timer1; protected global::System.Web.UI.Timer Timer1;
} }
+1 -1
View File
@@ -12,7 +12,7 @@
<h3><%: traduci("OrderManager") %></h3> <h3><%: traduci("OrderManager") %></h3>
</div> </div>
<div class="col-9"> <div class="col-9">
<uc1:cmp_fileUpload runat="server" ID="cmp_fileUpload" isWriteEnabled="true" filePrefix="CNC" fileSuffix=".csv" /> <uc1:cmp_fileUpload runat="server" ID="cmp_fileUpload" isWriteEnabled="true" filePrefix="CNC" fileSuffix=".csv" checkBatchAppr="true" />
</div> </div>
</div> </div>
</div> </div>
+1 -2
View File
@@ -54,7 +54,7 @@ namespace NKC_WF
{ {
/*-------------------------------------------- /*--------------------------------------------
* Note validazione: * Note validazione:
* - leggo cSV * - leggo CSV
* - carico su DB * - carico su DB
* - verifico (come ora x DXF) TUTTI i particolari * - verifico (come ora x DXF) TUTTI i particolari
* - cerco su tab ItemValidation * - cerco su tab ItemValidation
@@ -185,7 +185,6 @@ namespace NKC_WF
{ } { }
} }
Response.Redirect(Request.RawUrl); Response.Redirect(Request.RawUrl);
//doUpdate();
} }
/// <summary> /// <summary>
+102 -81
View File
@@ -12,6 +12,17 @@ namespace NKC_WF.site
{ {
public partial class UpdMan : BasePage public partial class UpdMan : BasePage
{ {
#region Protected Fields
/// <summary>
/// Controller versioni e download autenticato
/// </summary>
protected UpdateMan updManAuth = new UpdateMan("SWDownloader", "viaD@nte16");
#endregion Protected Fields
#region Protected Properties
protected DS_App.UpdManDataTable _tabPackages { get; set; } = new DS_App.UpdManDataTable(); protected DS_App.UpdManDataTable _tabPackages { get; set; } = new DS_App.UpdManDataTable();
protected DS_App.UpdManDataTable tabPackages protected DS_App.UpdManDataTable tabPackages
@@ -26,15 +37,53 @@ namespace NKC_WF.site
return tabella; return tabella;
} }
} }
protected void Page_Load(object sender, EventArgs e)
#endregion Protected Properties
#region Private Methods
private int doDownload(string caller, DS_App.UpdManRow riga)
{ {
DataLayer DLMan = new DataLayer(); int numDone = 0;
if (!Page.IsPostBack) // modalità DB...
if (riga != null)
{ {
((SiteContent)this.Master).showSearch = false; if (riga.IsAuth)
{
updManAuth.downloadLatest(updateUrlAuth(riga.AppName), localDownloadPath(riga.LocalRepo), riga.PackName);
numDone++;
}
else
{
UpdateMan.obj.downloadLatest(updateUrl(riga.AppName), localDownloadPath(riga.LocalRepo), riga.PackName);
numDone++;
}
} }
// modalità LEGACY...
else
{
if (caller == "ALL")
{
// scarico TUTTI...
numDone += updManAuth.downloadLatest(updateUrlAuth("NKC"), localDownloadPath("NKC"), "NKC");
numDone += UpdateMan.obj.downloadLatest(updateUrl("ZCODE"), localDownloadPath("ZCODE"), "ZCODE");
// versione IIS
//numDone += UpdateMan.obj.downloadLatest(updateUrl("NKC"), localDownloadPath("NKC"), "NKC");
//numDone += UpdateMan.obj.downloadLatest(updateUrl("ZCODE"), localDownloadPath("ZCODE"), "ZCODE");
}
else
{
UpdateMan.obj.downloadLatest(updateUrl(caller), localDownloadPath(caller), caller);
numDone++;
}
}
return numDone;
} }
#endregion Private Methods
#region Protected Methods
/// <summary> /// <summary>
/// Eseguo download pacchetti secondo richeista /// Eseguo download pacchetti secondo richeista
@@ -82,7 +131,6 @@ namespace NKC_WF.site
} }
else else
{ {
var riga = tabPackages.FindByAppName(caller); var riga = tabPackages.FindByAppName(caller);
doDownload(caller, riga); doDownload(caller, riga);
// calcolo elapsed time come TimeSpan value. // calcolo elapsed time come TimeSpan value.
@@ -95,45 +143,63 @@ namespace NKC_WF.site
lblOut.Text = resultsMsg; lblOut.Text = resultsMsg;
} }
private int doDownload(string caller, DS_App.UpdManRow riga) /// <summary>
/// Path locale dove scaricare gli installer
/// </summary>
protected string localDownloadPath(string package)
{ {
int numDone = 0; return string.Format(@"{0}{1}\{2}", memLayer.ML.CRS("downloadPath"), package, memLayer.ML.CRS("appVers"));
// modalità DB... }
protected void Page_Load(object sender, EventArgs e)
{
DataLayer DLMan = new DataLayer();
if (!Page.IsPostBack)
{
((SiteContent)this.Master).showSearch = false;
}
}
/// <summary>
/// URL stringa di UPDATE...
/// </summary>
protected string updateUrl(string package)
{
string answ = "";
var riga = tabPackages.FindByAppName(package);
if (riga != null) if (riga != null)
{ {
if (riga.IsAuth) answ = riga.ManifestUrl;
{
updManAuth.downloadLatest(updateUrlAuth(riga.AppName), localDownloadPath(riga.LocalRepo), riga.PackName);
numDone++;
}
else
{
UpdateMan.obj.downloadLatest(updateUrl(riga.AppName), localDownloadPath(riga.LocalRepo), riga.PackName);
numDone++;
}
} }
// modalità LEGACY...
else else
{ {
if (caller == "ALL") answ = string.Format("http://seriate.steamware.net:8083/SWS/{0}/{1}/manifest.xml", package, memLayer.ML.CRS("appVers"));
{
// scarico TUTTI...
numDone += updManAuth.downloadLatest(updateUrlAuth("NKC"), localDownloadPath("NKC"), "NKC");
numDone += UpdateMan.obj.downloadLatest(updateUrl("ZCODE"), localDownloadPath("ZCODE"), "ZCODE");
// versione IIS
//numDone += UpdateMan.obj.downloadLatest(updateUrl("NKC"), localDownloadPath("NKC"), "NKC");
//numDone += UpdateMan.obj.downloadLatest(updateUrl("ZCODE"), localDownloadPath("ZCODE"), "ZCODE");
}
else
{
UpdateMan.obj.downloadLatest(updateUrl(caller), localDownloadPath(caller), caller);
numDone++;
}
} }
return numDone; return answ;
} }
/// <summary>
/// URL stringa di UPDATE su area che richiede Auth (nexus.steamware.net)...
/// </summary>
protected string updateUrlAuth(string package)
{
string answ = "";
var riga = tabPackages.FindByAppName(package);
if (riga != null)
{
answ = riga.ManifestUrl;
}
else
{
answ = string.Format("https://nexus.steamware.net/repository/SWS/{0}/{1}/LAST/manifest.xml", package, memLayer.ML.CRS("appVers"));
}
return answ;
}
#endregion Protected Methods
#region Public Methods
public string Version(object package, object authUrl) public string Version(object package, object authUrl)
{ {
UpdateInfoEventArgs updArgs = new UpdateInfoEventArgs(); UpdateInfoEventArgs updArgs = new UpdateInfoEventArgs();
@@ -160,51 +226,6 @@ namespace NKC_WF.site
return answ; return answ;
} }
/// <summary> #endregion Public Methods
/// Controller versioni e download autenticato
/// </summary>
protected UpdateMan updManAuth = new UpdateMan("SWDownloader", "viaD@nte16");
/// <summary>
/// URL stringa di UPDATE...
/// </summary>
protected string updateUrl(string package)
{
string answ = "";
var riga = tabPackages.FindByAppName(package);
if (riga != null)
{
answ = riga.ManifestUrl;
}
else
{
answ = string.Format("http://seriate.steamware.net:8083/SWS/{0}/{1}/manifest.xml", package, memLayer.ML.CRS("appVers"));
}
return answ;
}
/// <summary>
/// URL stringa di UPDATE su area che richiede Auth (nexus.steamware.net)...
/// </summary>
protected string updateUrlAuth(string package)
{
string answ = "";
var riga = tabPackages.FindByAppName(package);
if (riga != null)
{
answ = riga.ManifestUrl;
}
else
{
answ = string.Format("http://nexus.steamware.net/repository/SWS/{0}/{1}/LAST/{0}/{0}-.xml", package, memLayer.ML.CRS("appVers"));
}
return answ;
}
/// <summary>
/// Path locale dove scaricare gli installer
/// </summary>
protected string localDownloadPath(string package)
{
return string.Format(@"{0}{1}\{2}", memLayer.ML.CRS("downloadPath"), package, memLayer.ML.CRS("appVers"));
}
} }
} }
+67 -68
View File
@@ -1,71 +1,70 @@
<body> <body>
<i>Sauder NKC solution</i> <i>Sauder NKC solution</i>
<h4>Version: {{CURRENT-REL}}</h4> <h4>Version: {{CURRENT-REL}}</h4>
<br /> <br />
Release Note: Release Note:
<ul> <ul>
<li> <li>
<b>Last Changes:</b> <b>Last Changes:</b>
<ul>{{LAST-CHANGES}}</ul> <ul>{{LAST-CHANGES}}</ul>
</li> </li>
<li> <li>
<b>v.2.0.* &rarr;</b> <b>v.2.0.* &rarr;</b>
<ul> <ul>
<li>Multi machine setup (NE01/NE02)</li> <li>Multi machine setup (NE01/NE02)</li>
</ul> </ul>
</li> </li>
<li> <li>
<b>v.1.3.* &rarr;</b> <b>v.1.3.* &rarr;</b>
<ul> <ul>
<li>DXF Testing</li> <li>DXF Testing</li>
</ul> </ul>
</li> </li>
<li> <li>
<b>v.1.0.* &rarr;</b> <b>v.1.0.* &rarr;</b>
<ul> <ul>
<li>Production Ready</li> <li>Production Ready</li>
</ul> </ul>
</li> </li>
<li> <li>
<b>v.11.* &rarr;</b> <b>v.11.* &rarr;</b>
<ul> <ul>
<li>AutoUpdate</li> <li>AutoUpdate</li>
</ul> </ul>
</li> </li>
<li> <li>
<b>v.10.* &rarr;</b> <b>v.10.* &rarr;</b>
<ul> <ul>
<li>Completed cycle</li> <li>Completed cycle</li>
<li>Testing approved</li> <li>Testing approved</li>
</ul> </ul>
</li> </li>
<li> <li>
<b>v.9.* &rarr;</b> <b>v.9.* &rarr;</b>
<ul> <ul>
<li>COmpleted cycle with KITTING station</li> <li>COmpleted cycle with KITTING station</li>
</ul> </ul>
</li> </li>
<li> <li>
<b>v.8.* &rarr;</b> <b>v.8.* &rarr;</b>
<ul> <ul>
<li>test release for production</li> <li>test release for production</li>
<li>Full active CNC cylte implemented</li> <li>Full active CNC cylte implemented</li>
</ul> </ul>
</li> </li>
<li> <li>
<b>v.7.* &rarr;</b> <b>v.7.* &rarr;</b>
<ul> <ul>
<li>Last internal only build</li> <li>Last internal only build</li>
</ul> </ul>
</li> </li>
</ul> </ul>
<div> <div>
<div style="float: left;"> <div style="float: left;">
<img src="logoSteamware.png" /> <img src="logoSteamware.png" />
</div>
<div style="float: right;">
<a href="https://www.steamware.net/IOT" target="_blank">&copy; Steamware - Egatletch 2019+</a>
</div>
</div> </div>
<div style="float: right;">
<a href="https://www.steamware.net/IOT" target="_blank">&copy; Steamware - Egatletch 2019+</a>
</div>
</div>
</body> </body>
+4 -4
View File
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<item> <item>
<version>{{VERS}}</version> <version>{{VERS}}</version>
<url>http://nexus.steamware.net/repository/SWS/NKC/{{BRANCHNAME}}/ARCHIVE/{{PACKNAME}}/{{VERS}}/{{PACKNAME}}-{{VERS}}.zip</url> <url>https://nexus.steamware.net/repository/SWS/NKC/{{BRANCHNAME}}/ARCHIVE/{{PACKNAME}}/{{VERS}}/{{PACKNAME}}-{{VERS}}.zip</url>
<changelog>http://nexus.steamware.net/repository/SWS/NKC/{{BRANCHNAME}}/LAST/{{PACKNAME}}/{{PACKNAME}}-.html</changelog> <changelog>https://nexus.steamware.net/repository/SWS/NKC/{{BRANCHNAME}}/LAST/{{PACKNAME}}/{{PACKNAME}}-.html</changelog>
<mandatory>false</mandatory> <mandatory>false</mandatory>
</item> </item>