Compare commits

...

130 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
Samuele Locatelli 73cabee7ee Merge branch 'release/ReloadConfFix' 2021-08-11 16:01:18 +02:00
Samuele Locatelli 18992da8bf Fix problema lettura NKC_WFConnectionString 2021-08-11 16:00:48 +02:00
Samuele Locatelli d4eabe8edd Merge tag 'FixAppConf' into develop
Rilascio produzione (master)
2021-08-11 15:33:02 +02:00
Samuele Locatelli ba88680aa1 Merge branch 'release/FixAppConf' 2021-08-11 15:32:52 +02:00
Samuele Locatelli dff09fc549 Update x fix librerie steamwarelibs 2021-08-11 15:31:17 +02:00
Samuele Locatelli 2e24c01bd9 rimozione error page specifiche (usa Oops.. ) 2021-08-11 11:44:24 +02:00
Samuele Locatelli f60f5868ca Aumento stato sessione da 120 a 480 minuti (redis) 2021-08-11 11:43:25 +02:00
Samuele Locatelli 0c7841e8d8 Merge tag 'FixdllAndVocabolario' into develop
Fix minori vocabolario e dll inserite x errore
2021-08-11 09:09:47 +02:00
Samuele Locatelli 7571b732eb Merge branch 'release/FixdllAndVocabolario' 2021-08-11 09:09:30 +02:00
Samuele Locatelli fb610a6738 fix dll inserite in root x errore da nuget + fix vocabolario 2021-08-11 09:09:06 +02:00
Samuele Locatelli 1a28398470 review gitSpread (NON forza il master) 2021-08-11 08:58:30 +02:00
Samuele Locatelli affaccc1e5 Merge tag 'NugetUpdateSteamwareLibs' into develop
Upgrade pacchetti Nuget generico, ma in particolare le steamware libs x errore restart multiplo reload conf redis x app config
2021-08-11 08:57:27 +02:00
Samuele Locatelli fb780c3328 Merge branch 'release/NugetUpdateSteamwareLibs' 2021-08-11 08:56:47 +02:00
Samuele Locatelli 3ce630a683 refresh 2021-08-11 08:55:19 +02:00
Samuele Locatelli 2f1e11072c update nuget DNSClient 2021-08-11 08:55:14 +02:00
Samuele Locatelli 6ac8959b37 update nuget Mongo 2021-08-11 08:54:55 +02:00
Samuele Locatelli 963aa925bd refresh redis lib 2021-08-11 08:49:15 +02:00
Samuele Locatelli cfd7788f71 space refresh 2021-08-11 08:48:37 +02:00
Samuele Locatelli 2865795574 Update librerie steamware x reload conf redis 2021-08-11 08:47:51 +02:00
Samuele Locatelli 66d16ed021 piccolo check preliminare 2021-08-11 08:46:23 +02:00
Samuele Locatelli 66fc9b47a2 Merge branch 'develop' into SDK 2021-07-28 20:34:52 +02:00
Samuele Locatelli d480797945 Completato fix x reset errori stima/nesting 2021-07-28 20:34:46 +02:00
Samuele Locatelli 7bd6cc5621 Update prox risp nesting 2021-07-28 18:03:34 +02:00
Samuele Locatelli 5964fcd3d6 fix ripetizione stima post errore nesting 2021-07-28 17:27:00 +02:00
Samuele Locatelli c34e919570 Merge branch 'develop' into SDK 2021-07-28 15:53:30 +02:00
Samuele Locatelli a5ac0782fe fix x gestione PartRev 2021-07-28 15:53:22 +02:00
Samuele Locatelli 3979d88a04 Aggiunto PartRev nella risposta 2021-07-28 15:45:53 +02:00
Samuele Locatelli 09711e9d1f Merge branch 'develop' into SDK 2021-07-28 11:34:38 +02:00
Samuele Locatelli 8583246fd8 Update gestioen risposta con errori estim ext 2021-07-28 11:34:28 +02:00
Samuele Locatelli ee0c85f485 rimessa possibilità rimando stima 2021-07-28 11:33:54 +02:00
Samuele Locatelli 9987a9b532 Merge branch 'develop' into SDK 2021-07-27 16:47:21 +02:00
Samuele Locatelli 27d1ad1d40 pulizia codice 2021-07-27 16:47:16 +02:00
Samuele Locatelli d8905257b0 commentata aprte check success x processing stsatus 2021-07-27 15:19:30 +02:00
Samuele Locatelli d92cb4cb96 corretto registrazione macchina x update da PROD 2021-07-27 14:45:42 +02:00
Samuele Locatelli f9d923b1bd Redis: default DB a 2... 2021-07-27 11:45:49 +02:00
Samuele Locatelli 8da509214e Merge branch 'develop' into SDK 2021-07-27 11:00:04 +02:00
Samuele Locatelli 33bc68d712 Aggiunto refresh iniziale 2021-07-27 10:59:56 +02:00
Samuele Locatelli b3184badac Fix gestione status e semafori 2021-07-27 10:51:06 +02:00
Samuele Locatelli c74c83a372 bozza modifica status machine 2021-07-26 20:02:06 +02:00
Samuele Locatelli e365778d3c Fix gestione secscreen: aggiunto selezione impianto 2021-07-26 19:30:08 +02:00
Samuele Locatelli 219a6691da Merge branch 'develop' into SDK 2021-07-26 17:02:45 +02:00
Samuele Locatelli a4a8b57163 fix preview da order History 2021-07-26 16:44:10 +02:00
Samuele Locatelli a86beaa333 Fix procedura export xls elenco fogli 2021-07-26 16:43:59 +02:00
Samuele Locatelli 0b4c1dd974 update conf code come da setup Sauder 2021-07-23 19:20:27 +02:00
Samuele Locatelli 50ea17c0e3 fix gestione bunk x machine (non necessaria) 2021-07-23 19:09:17 +02:00
Samuele Locatelli 8f0ee0933d Fix stampa cart/bin da order scheduler 2021-07-23 15:10:00 +02:00
Samuele Locatelli 17dd24abea Fix selezione machine LOAD 2021-07-23 13:23:13 +02:00
Samuele Locatelli 04946d6173 Fix display in caso di errore del send estimation 2021-07-23 10:23:42 +02:00
Samuele Locatelli ec6b801b9f fix calcolo indice carrello 2021-07-22 12:50:03 +02:00
Samuele Locatelli 3490c08a69 FIx recupero sheetList x macchina + typo 2021-07-22 07:54:49 +02:00
Samuele Locatelli 508dbbf55f Merge branch 'develop' 2021-07-21 11:43:28 +02:00
Samuele Locatelli fc4b36ad66 Completata modifica DB x selezionare sempre la stampante corretta x CNC (print/work) 2021-07-21 11:42:25 +02:00
Samuele Locatelli b47c391c63 Aggiunto check x invio SOLOS E è stato splittato 2021-07-21 10:40:58 +02:00
Samuele Locatelli 46c9dec2a9 Merge remote-tracking branch 'gitlab.steamware/develop' into develop 2021-07-21 09:49:31 +02:00
Samuele Locatelli 3cfc4f8275 Verifica risposte nesting (scarto se incoerente) 2021-07-21 09:49:26 +02:00
Samuele E. Locatelli 385bf15d22 Aggiunta decodifica watchdog 2021-07-20 19:13:03 +02:00
Samuele E. Locatelli 6f8dc47293 inizio gestione info "live state" linea 2021-07-20 18:43:06 +02:00
Samuele E. Locatelli 432e53cd24 registro anche evento 01 alive... 2021-07-20 18:17:26 +02:00
Samuele Locatelli dafad94464 Merge branch 'develop' 2021-07-20 16:37:09 +02:00
Samuele Locatelli 9082df9146 Fix gestione stop nesting anche x child 2021-07-20 16:35:55 +02:00
Samuele Locatelli d783f65c20 TYPO + Fix salvataggio eventi (redis da svuotare) 2021-07-20 16:30:51 +02:00
Samuele Locatelli 15f30baf83 Merge branch 'develop' 2021-07-20 15:42:47 +02:00
Samuele Locatelli 0c481e5169 Update x calcolo con ordine singolo + fix cancellazione a cascata 2021-07-20 15:42:36 +02:00
Samuele Locatelli 0175841f22 Merge tag 'ManNumIndexCB' into develop
Sistemata prima versione gestione num index cart/bin
2021-07-20 08:51:09 +02:00
90 changed files with 5211 additions and 2062 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"]
+22 -19
View File
@@ -51,8 +51,8 @@
<Reference Include="Crc32C.NET, Version=1.0.5.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="Crc32C.NET, Version=1.0.5.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\Crc32C.NET.1.0.5.0\lib\net20\Crc32C.NET.dll</HintPath> <HintPath>..\packages\Crc32C.NET.1.0.5.0\lib\net20\Crc32C.NET.dll</HintPath>
</Reference> </Reference>
<Reference Include="DnsClient, Version=1.4.0.0, Culture=neutral, PublicKeyToken=4574bb5573c51424, processorArchitecture=MSIL"> <Reference Include="DnsClient, Version=1.5.0.0, Culture=neutral, PublicKeyToken=4574bb5573c51424, processorArchitecture=MSIL">
<HintPath>..\packages\DnsClient.1.4.0\lib\net45\DnsClient.dll</HintPath> <HintPath>..\packages\DnsClient.1.5.0\lib\net45\DnsClient.dll</HintPath>
</Reference> </Reference>
<Reference Include="ICSharpCode.SharpZipLib, Version=1.3.2.10, Culture=neutral, PublicKeyToken=1b03e6acf1164f73, processorArchitecture=MSIL"> <Reference Include="ICSharpCode.SharpZipLib, Version=1.3.2.10, Culture=neutral, PublicKeyToken=1b03e6acf1164f73, processorArchitecture=MSIL">
<HintPath>..\packages\SharpZipLib.1.3.2\lib\net45\ICSharpCode.SharpZipLib.dll</HintPath> <HintPath>..\packages\SharpZipLib.1.3.2\lib\net45\ICSharpCode.SharpZipLib.dll</HintPath>
@@ -72,17 +72,17 @@
<Reference Include="Microsoft.ReportViewer.WinForms, Version=12.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL"> <Reference Include="Microsoft.ReportViewer.WinForms, Version=12.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.ReportViewer.Runtime.WinForms.12.0.2402.15\lib\Microsoft.ReportViewer.WinForms.dll</HintPath> <HintPath>..\packages\Microsoft.ReportViewer.Runtime.WinForms.12.0.2402.15\lib\Microsoft.ReportViewer.WinForms.dll</HintPath>
</Reference> </Reference>
<Reference Include="MongoDB.Bson, Version=2.12.4.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="MongoDB.Bson, Version=2.13.1.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\MongoDB.Bson.2.12.4\lib\net452\MongoDB.Bson.dll</HintPath> <HintPath>..\packages\MongoDB.Bson.2.13.1\lib\net452\MongoDB.Bson.dll</HintPath>
</Reference> </Reference>
<Reference Include="MongoDB.Driver, Version=2.12.4.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="MongoDB.Driver, Version=2.13.1.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\MongoDB.Driver.2.12.4\lib\net452\MongoDB.Driver.dll</HintPath> <HintPath>..\packages\MongoDB.Driver.2.13.1\lib\net452\MongoDB.Driver.dll</HintPath>
</Reference> </Reference>
<Reference Include="MongoDB.Driver.Core, Version=2.12.4.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.12.4\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.1.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="MongoDB.Libmongocrypt, Version=1.2.2.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\MongoDB.Libmongocrypt.1.2.1\lib\net452\MongoDB.Libmongocrypt.dll</HintPath> <HintPath>..\packages\MongoDB.Libmongocrypt.1.2.2\lib\net452\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>
@@ -106,13 +106,13 @@
<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>
</Reference> </Reference>
<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.4\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.2107.759, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="SteamWare, Version=5.1.2108.1911, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\SteamWare.5.1.2107.759\lib\net462\SteamWare.dll</HintPath> <HintPath>..\packages\SteamWare.5.1.2108.1911\lib\net462\SteamWare.dll</HintPath>
</Reference> </Reference>
<Reference Include="SteamWare.Logger, Version=5.1.2107.759, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="SteamWare.Logger, Version=5.1.2108.1911, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\SteamWare.Logger.5.1.2107.759\lib\net462\SteamWare.Logger.dll</HintPath> <HintPath>..\packages\SteamWare.Logger.5.1.2108.1911\lib\net462\SteamWare.Logger.dll</HintPath>
</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">
@@ -184,6 +184,9 @@
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath> <HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
</Reference> </Reference>
<Reference Include="System.Transactions" /> <Reference Include="System.Transactions" />
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
</Reference>
<Reference Include="System.Web" /> <Reference Include="System.Web" />
<Reference Include="System.Windows.Forms" /> <Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml.Linq" /> <Reference Include="System.Xml.Linq" />
@@ -278,10 +281,10 @@
<ErrorText>Questo progetto fa riferimento a uno o più pacchetti NuGet che non sono presenti in questo computer. Usare lo strumento di ripristino dei pacchetti NuGet per scaricarli. Per altre informazioni, vedere http://go.microsoft.com/fwlink/?LinkID=322105. Il file mancante è {0}.</ErrorText> <ErrorText>Questo progetto fa riferimento a uno o più pacchetti NuGet che non sono presenti in questo computer. Usare lo strumento di ripristino dei pacchetti NuGet per scaricarli. Per altre informazioni, vedere http://go.microsoft.com/fwlink/?LinkID=322105. Il file mancante è {0}.</ErrorText>
</PropertyGroup> </PropertyGroup>
<Error Condition="!Exists('..\packages\NETStandard.Library.2.0.3\build\netstandard2.0\NETStandard.Library.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\NETStandard.Library.2.0.3\build\netstandard2.0\NETStandard.Library.targets'))" /> <Error Condition="!Exists('..\packages\NETStandard.Library.2.0.3\build\netstandard2.0\NETStandard.Library.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\NETStandard.Library.2.0.3\build\netstandard2.0\NETStandard.Library.targets'))" />
<Error Condition="!Exists('..\packages\MongoDB.Libmongocrypt.1.2.1\build\MongoDB.Libmongocrypt.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\MongoDB.Libmongocrypt.1.2.1\build\MongoDB.Libmongocrypt.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.12.4\build\MongoDB.Driver.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\MongoDB.Driver.Core.2.12.4\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'))" />
</Target> </Target>
<Import Project="..\packages\NETStandard.Library.2.0.3\build\netstandard2.0\NETStandard.Library.targets" Condition="Exists('..\packages\NETStandard.Library.2.0.3\build\netstandard2.0\NETStandard.Library.targets')" /> <Import Project="..\packages\NETStandard.Library.2.0.3\build\netstandard2.0\NETStandard.Library.targets" Condition="Exists('..\packages\NETStandard.Library.2.0.3\build\netstandard2.0\NETStandard.Library.targets')" />
<Import Project="..\packages\MongoDB.Libmongocrypt.1.2.1\build\MongoDB.Libmongocrypt.targets" Condition="Exists('..\packages\MongoDB.Libmongocrypt.1.2.1\build\MongoDB.Libmongocrypt.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.12.4\build\MongoDB.Driver.Core.targets" Condition="Exists('..\packages\MongoDB.Driver.Core.2.12.4\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')" />
</Project> </Project>
+340 -192
View File
@@ -66,6 +66,7 @@ namespace AppData
public static string redProdMachClock = "NKC:PROD:MACH:CLOCK"; public static string redProdMachClock = "NKC:PROD:MACH:CLOCK";
public static string redProdMachList = "NKC:PROD:MACH:LIST"; public static string redProdMachList = "NKC:PROD:MACH:LIST";
public static string redProdMachStateData = "NKC:PROD:MACH:STATE"; public static string redProdMachStateData = "NKC:PROD:MACH:STATE";
public static string redProdMachStateLive = "NKC:PROD:MACH:LIVE";
public static string redProdReq = "NKC:SERV:BUNKS"; public static string redProdReq = "NKC:SERV:BUNKS";
public static string redProdStatDec = "NKC:PROD:MACH:STATDEC"; public static string redProdStatDec = "NKC:PROD:MACH:STATDEC";
@@ -248,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>
@@ -356,7 +373,7 @@ namespace AppData
/// </summary> /// </summary>
/// <param name="currBunk"></param> /// <param name="currBunk"></param>
/// <returns></returns> /// <returns></returns>
private static ProdBunk getBunkFromDb(DS_App.StackListRow currBunk) private static ProdBunk getBunkFromDb(DS_App.StackListRow currBunk, string machine)
{ {
DataLayer DLMan = new DataLayer(); DataLayer DLMan = new DataLayer();
ProdBunk answ; ProdBunk answ;
@@ -372,7 +389,7 @@ namespace AppData
} }
List<ProdSheet> elSheet = new List<ProdSheet>(); List<ProdSheet> elSheet = new List<ProdSheet>();
// recupero gli sheets di questo stack... // recupero gli sheets di questo stack...
DS_App.SheetListDataTable tabSheets = DLMan.taSHL.getByStack(currBunk.StackID); DS_App.SheetListDataTable tabSheets = DLMan.taSHL.getByStack(currBunk.StackID, machine);
DateTime dataStart = DateTime.Now; DateTime dataStart = DateTime.Now;
ProdSheet currPanel; ProdSheet currPanel;
string nestBasePath = memLayer.ML.CRS("nestBasePath").ToLower(); string nestBasePath = memLayer.ML.CRS("nestBasePath").ToLower();
@@ -455,35 +472,41 @@ namespace AppData
return answ; return answ;
} }
private static List<MachineStatData> saveStatus(string machine, List<MachineStatRecord> lastRecord) /// <summary>
/// Aggiorno il record della station x la machine indicata
/// </summary>
/// <param name="machine"></param>
/// <param name="station"></param>
/// <param name="lastRecord"></param>
/// <returns></returns>
private static MachineStatData saveStatus(string machine, string station, MachineStatRecord lastRecord)
{ {
List<MachineStatData> currData = new List<MachineStatData>(); MachineStatData currData = new MachineStatData() { Machine = machine };
string redKey = $"{redProdMachStateData}:{machine}";
// ora processo lo status attuale x salvare MAPPA ULTIMO status in Redis... // ora processo lo status attuale x salvare MAPPA ULTIMO status in Redis...
string redVal = memLayer.ML.getRSV(redProdMachStateData); string redVal = memLayer.ML.getRSV(redKey);
if (!string.IsNullOrEmpty(redVal)) if (!string.IsNullOrEmpty(redVal))
{ {
currData = JsonConvert.DeserializeObject<List<MachineStatData>>(redVal); currData = JsonConvert.DeserializeObject<MachineStatData>(redVal);
// certo info x macchina corrente
var machRecord = currData.Where(x => x.Machine == machine).FirstOrDefault();
// recupero ultimo stato
if (machRecord != null)
{
machRecord.Records = lastRecord;
}
// aggiungo
else
{
currData.Add(new MachineStatData() { Machine = machine, Records = lastRecord });
}
} }
// recupero ultimo stato x la station corrente
var stationRecord = currData.Records.Where(x => x.Station == station).FirstOrDefault();
if (stationRecord != null)
{
// lo rimuovo
currData.Records.Remove(stationRecord);
stationRecord = lastRecord;
}
// aggiungo...
currData.Records.Add(lastRecord);
// serializzo // serializzo
string rawData = JsonConvert.SerializeObject(currData); string rawData = JsonConvert.SerializeObject(currData);
// salvo! // salvo!
memLayer.ML.setRSV(redProdMachStateData, rawData); memLayer.ML.setRSV(redKey, rawData);
return currData; return currData;
} }
@@ -706,14 +729,15 @@ namespace AppData
/// <param name="BatchID"></param> /// <param name="BatchID"></param>
/// <param name="minVal"></param> /// <param name="minVal"></param>
/// <param name="maxVal"></param> /// <param name="maxVal"></param>
/// <param name="machine"></param>
/// <returns></returns> /// <returns></returns>
protected int getSheetIdByBatch(int BatchID, int minVal, int maxVal) protected int getSheetIdByBatch(int BatchID, int minVal, int maxVal, string machine)
{ {
int answ = 0; int answ = 0;
try try
{ {
DataLayer DLMan = new DataLayer(); DataLayer DLMan = new DataLayer();
var tabSheet = DLMan.taSHL.getByMLStatus(BatchID, minVal, maxVal); var tabSheet = DLMan.taSHL.getByMLStatus(BatchID, minVal, maxVal, machine);
if (tabSheet.Count > 0) if (tabSheet.Count > 0)
{ {
answ = tabSheet[0].SheetID; answ = tabSheet[0].SheetID;
@@ -1028,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>
@@ -1044,9 +1171,9 @@ namespace AppData
// forzo (ri)lettura... // forzo (ri)lettura...
currTab = DLMan.taStatDec.GetData(); currTab = DLMan.taStatDec.GetData();
TabStatusDec = currTab; TabStatusDec = currTab;
// cerco di nuovo item
foundItem = currTab.Where(x => x.Station == station && x.Code == code).FirstOrDefault();
} }
// cerco di nuovoitem
foundItem = currTab.Where(x => x.Station == station && x.Code == code).FirstOrDefault();
if (foundItem == null) if (foundItem == null)
{ {
// se non ci fosse --> creo // se non ci fosse --> creo
@@ -1282,7 +1409,7 @@ namespace AppData
{ {
// recupero sheet corrente da Bunk... // recupero sheet corrente da Bunk...
DataLayer DLMan = new DataLayer(); DataLayer DLMan = new DataLayer();
tabSheets = DLMan.taSHL.getByMLStatus(BatchID, 5, 5); tabSheets = DLMan.taSHL.getByMLStatus(BatchID, 5, 5, machine);
// salvo in redis // salvo in redis
setCurrSheetTab(machine, tabSheets); setCurrSheetTab(machine, tabSheets);
} }
@@ -1341,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>
@@ -1571,42 +1711,6 @@ namespace AppData
return answ; return answ;
} }
#if false
/// <summary>
/// Elenco degli orders dato Batch
/// </summary>
public static DS_App.OrderListDataTable OrdersByBatch(int BatchId)
{
DataLayer DLMan = new DataLayer();
string redKey = $"{redOrders}:BYBATCH:{BatchId}";
string rawData = "";
DS_App.OrderListDataTable answ = new DS_App.OrderListDataTable();
// cerco in redis
if (memLayer.ML.redKeyPresent(redKey))
{
rawData = memLayer.ML.getRSV(redKey);
if (!string.IsNullOrEmpty(rawData))
{
try
{
answ = JsonConvert.DeserializeObject<DS_App.OrderListDataTable>(rawData);
}
catch
{ }
}
// se vuoto rileggo
if (answ.Count == 0)
{
answ = DLMan.taOL.getByBatch(BatchId);
// salvo in cache
rawData = JsonConvert.SerializeObject(answ);
memLayer.ML.setRSV(redKey, rawData, 5 * 60);
}
}
return answ;
}
#endif
/// <summary> /// <summary>
/// Elenco degli orders dato Batch (Ancestor/Principale) /// Elenco degli orders dato Batch (Ancestor/Principale)
/// </summary> /// </summary>
@@ -1706,8 +1810,9 @@ namespace AppData
/// Recupera e transcodifica DA DB i dati di UN SINGOLO bunk /// Recupera e transcodifica DA DB i dati di UN SINGOLO bunk
/// </summary> /// </summary>
/// <param name="currBunk"></param> /// <param name="currBunk"></param>
/// <param name="machine"></param>
/// <returns></returns> /// <returns></returns>
public static ProdBunk prodGetBunk(int StackID) public static ProdBunk prodGetBunk(int StackID, string machine)
{ {
DataLayer DLMan = new DataLayer(); DataLayer DLMan = new DataLayer();
ProdBunk answ = null; ProdBunk answ = null;
@@ -1727,7 +1832,7 @@ namespace AppData
currSt = CStatus.Done; currSt = CStatus.Done;
} }
// recupero gli sheets di questo stack... // recupero gli sheets di questo stack...
DS_App.SheetListDataTable tabSheets = DLMan.taSHL.getByStack(StackID); DS_App.SheetListDataTable tabSheets = DLMan.taSHL.getByStack(StackID, machine);
DateTime dataStart = DateTime.Now; DateTime dataStart = DateTime.Now;
ProdSheet currPanel; ProdSheet currPanel;
string nestBasePath = memLayer.ML.CRS("nestBasePath").ToLower(); string nestBasePath = memLayer.ML.CRS("nestBasePath").ToLower();
@@ -1810,7 +1915,7 @@ namespace AppData
if (tabBunks.Count > 0) if (tabBunks.Count > 0)
{ {
DS_App.StackListRow currBunk = tabBunks[0]; DS_App.StackListRow currBunk = tabBunks[0];
answ = getBunkFromDb(currBunk); answ = getBunkFromDb(currBunk, machine);
// se ho qualcosa salvo su REDIS // se ho qualcosa salvo su REDIS
redisFirstBunk = answ; redisFirstBunk = answ;
} }
@@ -1857,7 +1962,7 @@ namespace AppData
// se c'è un bunk trovato --> carico // se c'è un bunk trovato --> carico
if (currBunk != null) if (currBunk != null)
{ {
answ = getBunkFromDb(currBunk); answ = getBunkFromDb(currBunk, machine);
// salvo su redis // salvo su redis
setRedisNextBunk(BunkID, answ); setRedisNextBunk(BunkID, answ);
} }
@@ -1888,7 +1993,7 @@ namespace AppData
// come batch DOVREI averne solo 1 in corso... // come batch DOVREI averne solo 1 in corso...
DS_App.BatchListRow batchRow = currBatch[0]; DS_App.BatchListRow batchRow = currBatch[0];
// recupero i vari SHEETS del batch... // recupero i vari SHEETS del batch...
DS_App.SheetListDataTable sheetTable = DLMan.taSHL.getCurrentByBatch(batchRow.BatchID); DS_App.SheetListDataTable sheetTable = DLMan.taSHL.getCurrentByBatch(batchRow.BatchID, codPost);
List<DS_App.SheetListRow> sheetList = new List<DS_App.SheetListRow>(); List<DS_App.SheetListRow> sheetList = new List<DS_App.SheetListRow>();
// controllo che SIA NULL la data di unload --> NON ancora scaricato // controllo che SIA NULL la data di unload --> NON ancora scaricato
foreach (var item in sheetTable) foreach (var item in sheetTable)
@@ -1911,14 +2016,13 @@ namespace AppData
/// Restituisce stato macchina (da Redis) /// Restituisce stato macchina (da Redis)
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
public static List<MachineStatData> prodMachStateDataGet() public static MachineStatData prodMachStateDataGet(string machine)
{ {
List<MachineStatData> answ = new List<MachineStatData>(); MachineStatData answ = new MachineStatData();
string redVal = memLayer.ML.getRSV($"{redProdMachStateData}:{machine}");
string redVal = memLayer.ML.getRSV(redProdMachStateData);
if (!string.IsNullOrEmpty(redVal)) if (!string.IsNullOrEmpty(redVal))
{ {
answ = JsonConvert.DeserializeObject<List<MachineStatData>>(redVal); answ = JsonConvert.DeserializeObject<MachineStatData>(redVal);
} }
return answ; return answ;
} }
@@ -1936,7 +2040,6 @@ namespace AppData
* Public Const STATION_PRINTER As String = "PRINTER" * Public Const STATION_PRINTER As String = "PRINTER"
* Public Const STATION_NC_MACHINE As String = "NC_MACHINE" * Public Const STATION_NC_MACHINE As String = "NC_MACHINE"
* Public Const STATION_UNLOADER As String = "UNLOADER" * Public Const STATION_UNLOADER As String = "UNLOADER"
//* Public Const STATION_NC_MACHINE As String = "NC MACHINE"
* *
* *
* *
@@ -1987,7 +2090,8 @@ namespace AppData
break; break;
case "01": case "01":
// x ora lo ignoro ma so che ora la macchina è ALIVE... // savo status alive
ComLib.setMachLiveStatus(updateRecords.Machine, true);
break; break;
default: default:
@@ -2002,8 +2106,24 @@ namespace AppData
// recupero ultimo record ricevuto // recupero ultimo record ricevuto
try try
{ {
var lastRecord = updateRecords.Records.OrderByDescending(x => x.DtRecord).Take(1).ToList(); string station = "";
saveStatus(updateRecords.Machine, lastRecord); MachineStatRecord lastRecord = new MachineStatRecord();
station = "PRINTER";
lastRecord = updateRecords.Records.Where(x => x.Station == station).OrderByDescending(x => x.DtRecord).FirstOrDefault();
if (lastRecord != null)
saveStatus(updateRecords.Machine, station, lastRecord);
station = "NC_MACHINE";
lastRecord = updateRecords.Records.Where(x => x.Station == station).OrderByDescending(x => x.DtRecord).FirstOrDefault();
if (lastRecord != null)
saveStatus(updateRecords.Machine, station, lastRecord);
station = "UNLOADER";
lastRecord = updateRecords.Records.Where(x => x.Station == station).OrderByDescending(x => x.DtRecord).FirstOrDefault();
if (lastRecord != null)
saveStatus(updateRecords.Machine, station, lastRecord);
answ = true; answ = true;
} }
catch catch
@@ -2021,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>
@@ -2235,118 +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 = 1;
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)
{
nextIndex = 10;
// 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;
}
#if false
int BatchDescId = tabDesc[0].BatchID;
ComLib.sendBatchReq(BatchDescId, "Nesting", 2, false);
// registro su DB nesting iniziato...
DLMan.taBL.updateStatus(BatchDescId, (int)BatchStatus.NestRequested, "", -1);
#endif
}
}
// 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)
{
nextIndex += 50;
batchProcessed = false;
// se c'è qualcosa da processare lo richiede
if (item.STATUS == 2)
{
// 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>
@@ -2365,6 +2385,11 @@ namespace AppData
// preparo il contenuto della busta ed invio i messaggi... // preparo il contenuto della busta ed invio i messaggi...
try try
{ {
// preliminare: se è stima EXT --> riporto pezzi su ordine ORIGINALE...
if (pType == 3)
{
DLMan.taOLT.setBatchSplit(BatchID, false);
}
// in base allo stato del BATCH corrente determino il tempo e le opzioni da inviare... // in base allo stato del BATCH corrente determino il tempo e le opzioni da inviare...
var batch = DLMan.taBL.getByKey(BatchID); var batch = DLMan.taBL.getByKey(BatchID);
int mTime = 1; int mTime = 1;
@@ -2662,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>
@@ -2740,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)
@@ -2763,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);
}
}
}
} }
} }
} }
@@ -2826,6 +2885,7 @@ namespace AppData
/// <param name="CartList"></param> /// <param name="CartList"></param>
public static void updateCartsFromNesting(int BatchID, List<NestCart> CartList) public static void updateCartsFromNesting(int BatchID, List<NestCart> CartList)
{ {
Dictionary<string, int> part2update = new Dictionary<string, int>();
DataLayer DLMan = new DataLayer(); DataLayer DLMan = new DataLayer();
// inizio a processare... bunks! // inizio a processare... bunks!
if (CartList != null) if (CartList != null)
@@ -2845,11 +2905,29 @@ namespace AppData
{ {
// creo lo sheet... // creo lo sheet...
var updKit = DLMan.taKL.updateCart(kit.KitId, currCart.CartID); var updKit = DLMan.taKL.updateCart(kit.KitId, currCart.CartID);
// verifico x update PartExtCode
addPart2Upd(ref part2update, kit.PartList);
} }
} }
} }
} }
} }
// 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 currItem = item4batch.Where(x => x.ItemID == item.Value).FirstOrDefault();
// verifico SE sia da processare...
if (currItem != null && currItem.ItemExtCode != item.Key)
{
DLMan.taIL.updateExtCodeFromNesting(BatchID, item.Value, item.Key);
}
}
}
} }
/// <summary> /// <summary>
@@ -2976,10 +3054,10 @@ namespace AppData
int batchId = getNextBatch(machineCod); int batchId = getNextBatch(machineCod);
// se non trovo creo un oggetto NUOVO e vuoto x ogni oggetto... e salvo... // se non trovo creo un oggetto NUOVO e vuoto x ogni oggetto... e salvo...
answ.Add("BatchID", batchId.ToString()); answ.Add("BatchID", batchId.ToString());
answ.Add("SheetID_load", getSheetIdByBatch(batchId, 0, 1).ToString()); answ.Add("SheetID_load", getSheetIdByBatch(batchId, 0, 1, machineCod).ToString());
answ.Add("SheetID_print", getSheetIdByBatch(batchId, 1, 2).ToString()); answ.Add("SheetID_print", getSheetIdByBatch(batchId, 1, 2, machineCod).ToString());
answ.Add("SheetID_work", getSheetIdByBatch(batchId, 2, 3).ToString()); answ.Add("SheetID_work", getSheetIdByBatch(batchId, 2, 3, machineCod).ToString());
answ.Add("SheetID_unload", getSheetIdByBatch(batchId, 3, 5).ToString()); answ.Add("SheetID_unload", getSheetIdByBatch(batchId, 3, 5, machineCod).ToString());
// serializzo e salvo! // serializzo e salvo!
saveMachineData(machineCod, answ); saveMachineData(machineCod, answ);
} }
@@ -3296,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
+2222 -211
View File
File diff suppressed because it is too large Load Diff
+320 -58
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">
@@ -540,6 +551,7 @@ FROM v_SheetList</CommandText>
<Parameters> <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="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="@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="@Machine" Precision="0" ProviderType="NVarChar" Scale="0" Size="50" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters> </Parameters>
</DbCommand> </DbCommand>
</SelectCommand> </SelectCommand>
@@ -551,6 +563,7 @@ FROM v_SheetList</CommandText>
<Parameters> <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="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="@ItemID" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@ItemID" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="nvarchar" DbType="String" Direction="Input" ParameterName="@Machine" Precision="0" ProviderType="NVarChar" Scale="0" Size="50" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters> </Parameters>
</DbCommand> </DbCommand>
</SelectCommand> </SelectCommand>
@@ -564,6 +577,7 @@ FROM v_SheetList</CommandText>
<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="@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="@ShStatusStart" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@ShStatusStart" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@ShStatusEnd" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@ShStatusEnd" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="nvarchar" DbType="String" Direction="Input" ParameterName="@Machine" Precision="0" ProviderType="NVarChar" Scale="0" Size="50" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters> </Parameters>
</DbCommand> </DbCommand>
</SelectCommand> </SelectCommand>
@@ -575,6 +589,7 @@ FROM v_SheetList</CommandText>
<Parameters> <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="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="@SheetID" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@SheetID" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="nvarchar" DbType="String" Direction="Input" ParameterName="@Machine" Precision="0" ProviderType="NVarChar" Scale="0" Size="50" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters> </Parameters>
</DbCommand> </DbCommand>
</SelectCommand> </SelectCommand>
@@ -586,6 +601,7 @@ FROM v_SheetList</CommandText>
<Parameters> <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="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="@StackID" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" /> <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@StackID" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="nvarchar" DbType="String" Direction="Input" ParameterName="@Machine" Precision="0" ProviderType="NVarChar" Scale="0" Size="50" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters> </Parameters>
</DbCommand> </DbCommand>
</SelectCommand> </SelectCommand>
@@ -609,6 +625,7 @@ FROM v_SheetList</CommandText>
<Parameters> <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="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="@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="@Machine" Precision="0" ProviderType="NVarChar" Scale="0" Size="50" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters> </Parameters>
</DbCommand> </DbCommand>
</SelectCommand> </SelectCommand>
@@ -1034,7 +1051,33 @@ 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_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>
<DbCommand CommandType="StoredProcedure" ModifiedByUser="false">
<CommandText>dbo.stp_IL_updateExtCodeFromNesting</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="@ItemID" 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" />
</Parameters>
</DbCommand>
</SelectCommand>
</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="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>
@@ -1049,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>
@@ -1062,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>
@@ -1074,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>
@@ -3625,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>
@@ -3633,7 +3851,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
<xs:element name="DS_App" msdata:IsDataSet="true" msdata:UseCurrentLocale="true" msprop:EnableTableAdapterManager="true" msprop:Generator_DataSetName="DS_App" msprop:Generator_UserDSName="DS_App"> <xs:element name="DS_App" msdata:IsDataSet="true" msdata:UseCurrentLocale="true" msprop:EnableTableAdapterManager="true" msprop:Generator_DataSetName="DS_App" msprop:Generator_UserDSName="DS_App">
<xs:complexType> <xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="BatchList" msprop:Generator_TableClassName="BatchListDataTable" msprop:Generator_TableVarName="tableBatchList" msprop:Generator_RowChangedName="BatchListRowChanged" msprop:Generator_TablePropName="BatchList" msprop:Generator_RowDeletingName="BatchListRowDeleting" msprop:Generator_RowChangingName="BatchListRowChanging" msprop:Generator_RowEvHandlerName="BatchListRowChangeEventHandler" msprop:Generator_RowDeletedName="BatchListRowDeleted" msprop:Generator_RowClassName="BatchListRow" msprop:Generator_UserTableName="BatchList" msprop:Generator_RowEvArgName="BatchListRowChangeEvent"> <xs:element name="BatchList" msprop:Generator_TableClassName="BatchListDataTable" msprop:Generator_TableVarName="tableBatchList" msprop:Generator_TablePropName="BatchList" msprop:Generator_RowDeletingName="BatchListRowDeleting" msprop:Generator_RowChangingName="BatchListRowChanging" msprop:Generator_RowEvHandlerName="BatchListRowChangeEventHandler" msprop:Generator_RowDeletedName="BatchListRowDeleted" msprop:Generator_UserTableName="BatchList" msprop:Generator_RowChangedName="BatchListRowChanged" msprop:Generator_RowEvArgName="BatchListRowChangeEvent" msprop:Generator_RowClassName="BatchListRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="BatchID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnBatchID" msprop:Generator_ColumnPropNameInRow="BatchID" msprop:Generator_ColumnPropNameInTable="BatchIDColumn" msprop:Generator_UserColumnName="BatchID" type="xs:int" /> <xs:element name="BatchID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnBatchID" msprop:Generator_ColumnPropNameInRow="BatchID" msprop:Generator_ColumnPropNameInTable="BatchIDColumn" msprop:Generator_UserColumnName="BatchID" type="xs:int" />
@@ -3691,7 +3909,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="StackList" msprop:Generator_TableClassName="StackListDataTable" msprop:Generator_TableVarName="tableStackList" msprop:Generator_RowChangedName="StackListRowChanged" msprop:Generator_TablePropName="StackList" msprop:Generator_RowDeletingName="StackListRowDeleting" msprop:Generator_RowChangingName="StackListRowChanging" msprop:Generator_RowEvHandlerName="StackListRowChangeEventHandler" msprop:Generator_RowDeletedName="StackListRowDeleted" msprop:Generator_RowClassName="StackListRow" msprop:Generator_UserTableName="StackList" msprop:Generator_RowEvArgName="StackListRowChangeEvent"> <xs:element name="StackList" msprop:Generator_TableClassName="StackListDataTable" msprop:Generator_TableVarName="tableStackList" msprop:Generator_TablePropName="StackList" msprop:Generator_RowDeletingName="StackListRowDeleting" msprop:Generator_RowChangingName="StackListRowChanging" msprop:Generator_RowEvHandlerName="StackListRowChangeEventHandler" msprop:Generator_RowDeletedName="StackListRowDeleted" msprop:Generator_UserTableName="StackList" msprop:Generator_RowChangedName="StackListRowChanged" msprop:Generator_RowEvArgName="StackListRowChangeEvent" msprop:Generator_RowClassName="StackListRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="StackID" msprop:Generator_ColumnVarNameInTable="columnStackID" msprop:Generator_ColumnPropNameInRow="StackID" msprop:Generator_ColumnPropNameInTable="StackIDColumn" msprop:Generator_UserColumnName="StackID" type="xs:int" /> <xs:element name="StackID" msprop:Generator_ColumnVarNameInTable="columnStackID" msprop:Generator_ColumnPropNameInRow="StackID" msprop:Generator_ColumnPropNameInTable="StackIDColumn" msprop:Generator_UserColumnName="StackID" type="xs:int" />
@@ -3716,7 +3934,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="SheetList" msprop:Generator_TableClassName="SheetListDataTable" msprop:Generator_TableVarName="tableSheetList" msprop:Generator_RowChangedName="SheetListRowChanged" msprop:Generator_TablePropName="SheetList" msprop:Generator_RowDeletingName="SheetListRowDeleting" msprop:Generator_RowChangingName="SheetListRowChanging" msprop:Generator_RowEvHandlerName="SheetListRowChangeEventHandler" msprop:Generator_RowDeletedName="SheetListRowDeleted" msprop:Generator_RowClassName="SheetListRow" msprop:Generator_UserTableName="SheetList" msprop:Generator_RowEvArgName="SheetListRowChangeEvent"> <xs:element name="SheetList" msprop:Generator_TableClassName="SheetListDataTable" msprop:Generator_TableVarName="tableSheetList" msprop:Generator_TablePropName="SheetList" msprop:Generator_RowDeletingName="SheetListRowDeleting" msprop:Generator_RowChangingName="SheetListRowChanging" msprop:Generator_RowEvHandlerName="SheetListRowChangeEventHandler" msprop:Generator_RowDeletedName="SheetListRowDeleted" msprop:Generator_UserTableName="SheetList" msprop:Generator_RowChangedName="SheetListRowChanged" msprop:Generator_RowEvArgName="SheetListRowChangeEvent" msprop:Generator_RowClassName="SheetListRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="SheetID" msprop:Generator_ColumnVarNameInTable="columnSheetID" msprop:Generator_ColumnPropNameInRow="SheetID" msprop:Generator_ColumnPropNameInTable="SheetIDColumn" msprop:Generator_UserColumnName="SheetID" type="xs:int" /> <xs:element name="SheetID" msprop:Generator_ColumnVarNameInTable="columnSheetID" msprop:Generator_ColumnPropNameInRow="SheetID" msprop:Generator_ColumnPropNameInTable="SheetIDColumn" msprop:Generator_UserColumnName="SheetID" type="xs:int" />
@@ -3771,7 +3989,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="OrderList" msprop:Generator_TableClassName="OrderListDataTable" msprop:Generator_TableVarName="tableOrderList" msprop:Generator_RowChangedName="OrderListRowChanged" msprop:Generator_TablePropName="OrderList" msprop:Generator_RowDeletingName="OrderListRowDeleting" msprop:Generator_RowChangingName="OrderListRowChanging" msprop:Generator_RowEvHandlerName="OrderListRowChangeEventHandler" msprop:Generator_RowDeletedName="OrderListRowDeleted" msprop:Generator_RowClassName="OrderListRow" msprop:Generator_UserTableName="OrderList" msprop:Generator_RowEvArgName="OrderListRowChangeEvent"> <xs:element name="OrderList" msprop:Generator_TableClassName="OrderListDataTable" msprop:Generator_TableVarName="tableOrderList" msprop:Generator_TablePropName="OrderList" msprop:Generator_RowDeletingName="OrderListRowDeleting" msprop:Generator_RowChangingName="OrderListRowChanging" msprop:Generator_RowEvHandlerName="OrderListRowChangeEventHandler" msprop:Generator_RowDeletedName="OrderListRowDeleted" msprop:Generator_UserTableName="OrderList" msprop:Generator_RowChangedName="OrderListRowChanged" msprop:Generator_RowEvArgName="OrderListRowChangeEvent" msprop:Generator_RowClassName="OrderListRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="OrdID" msprop:Generator_ColumnVarNameInTable="columnOrdID" msprop:Generator_ColumnPropNameInRow="OrdID" msprop:Generator_ColumnPropNameInTable="OrdIDColumn" msprop:Generator_UserColumnName="OrdID" type="xs:int" /> <xs:element name="OrdID" msprop:Generator_ColumnVarNameInTable="columnOrdID" msprop:Generator_ColumnPropNameInRow="OrdID" msprop:Generator_ColumnPropNameInTable="OrdIDColumn" msprop:Generator_UserColumnName="OrdID" type="xs:int" />
@@ -3844,7 +4062,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="ItemList" msprop:Generator_TableClassName="ItemListDataTable" msprop:Generator_TableVarName="tableItemList" msprop:Generator_RowChangedName="ItemListRowChanged" msprop:Generator_TablePropName="ItemList" msprop:Generator_RowDeletingName="ItemListRowDeleting" msprop:Generator_RowChangingName="ItemListRowChanging" msprop:Generator_RowEvHandlerName="ItemListRowChangeEventHandler" msprop:Generator_RowDeletedName="ItemListRowDeleted" msprop:Generator_RowClassName="ItemListRow" msprop:Generator_UserTableName="ItemList" msprop:Generator_RowEvArgName="ItemListRowChangeEvent"> <xs:element name="ItemList" msprop:Generator_TableClassName="ItemListDataTable" msprop:Generator_TableVarName="tableItemList" msprop:Generator_TablePropName="ItemList" msprop:Generator_RowDeletingName="ItemListRowDeleting" msprop:Generator_RowChangingName="ItemListRowChanging" msprop:Generator_RowEvHandlerName="ItemListRowChangeEventHandler" msprop:Generator_RowDeletedName="ItemListRowDeleted" msprop:Generator_UserTableName="ItemList" msprop:Generator_RowChangedName="ItemListRowChanged" msprop:Generator_RowEvArgName="ItemListRowChangeEvent" msprop:Generator_RowClassName="ItemListRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="ItemID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnItemID" msprop:Generator_ColumnPropNameInRow="ItemID" msprop:Generator_ColumnPropNameInTable="ItemIDColumn" msprop:Generator_UserColumnName="ItemID" type="xs:int" /> <xs:element name="ItemID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnItemID" msprop:Generator_ColumnPropNameInRow="ItemID" msprop:Generator_ColumnPropNameInTable="ItemIDColumn" msprop:Generator_UserColumnName="ItemID" type="xs:int" />
@@ -3913,7 +4131,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="Materials" msprop:Generator_TableClassName="MaterialsDataTable" msprop:Generator_TableVarName="tableMaterials" msprop:Generator_TablePropName="Materials" msprop:Generator_RowDeletingName="MaterialsRowDeleting" msprop:Generator_RowChangingName="MaterialsRowChanging" msprop:Generator_RowEvHandlerName="MaterialsRowChangeEventHandler" msprop:Generator_RowDeletedName="MaterialsRowDeleted" msprop:Generator_UserTableName="Materials" msprop:Generator_RowChangedName="MaterialsRowChanged" msprop:Generator_RowEvArgName="MaterialsRowChangeEvent" msprop:Generator_RowClassName="MaterialsRow"> <xs:element name="Materials" msprop:Generator_TableClassName="MaterialsDataTable" msprop:Generator_TableVarName="tableMaterials" msprop:Generator_RowChangedName="MaterialsRowChanged" msprop:Generator_TablePropName="Materials" msprop:Generator_RowDeletingName="MaterialsRowDeleting" msprop:Generator_RowChangingName="MaterialsRowChanging" msprop:Generator_RowEvHandlerName="MaterialsRowChangeEventHandler" msprop:Generator_RowDeletedName="MaterialsRowDeleted" msprop:Generator_RowClassName="MaterialsRow" msprop:Generator_UserTableName="Materials" msprop:Generator_RowEvArgName="MaterialsRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="MatID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnMatID" msprop:Generator_ColumnPropNameInRow="MatID" msprop:Generator_ColumnPropNameInTable="MatIDColumn" msprop:Generator_UserColumnName="MatID" type="xs:int" /> <xs:element name="MatID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnMatID" msprop:Generator_ColumnPropNameInRow="MatID" msprop:Generator_ColumnPropNameInTable="MatIDColumn" msprop:Generator_UserColumnName="MatID" type="xs:int" />
@@ -3946,7 +4164,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="Bins" msprop:Generator_TableClassName="BinsDataTable" msprop:Generator_TableVarName="tableBins" msprop:Generator_TablePropName="Bins" msprop:Generator_RowDeletingName="BinsRowDeleting" msprop:Generator_RowChangingName="BinsRowChanging" msprop:Generator_RowEvHandlerName="BinsRowChangeEventHandler" msprop:Generator_RowDeletedName="BinsRowDeleted" msprop:Generator_UserTableName="Bins" msprop:Generator_RowChangedName="BinsRowChanged" msprop:Generator_RowEvArgName="BinsRowChangeEvent" msprop:Generator_RowClassName="BinsRow"> <xs:element name="Bins" msprop:Generator_TableClassName="BinsDataTable" msprop:Generator_TableVarName="tableBins" msprop:Generator_RowChangedName="BinsRowChanged" msprop:Generator_TablePropName="Bins" msprop:Generator_RowDeletingName="BinsRowDeleting" msprop:Generator_RowChangingName="BinsRowChanging" msprop:Generator_RowEvHandlerName="BinsRowChangeEventHandler" msprop:Generator_RowDeletedName="BinsRowDeleted" msprop:Generator_RowClassName="BinsRow" msprop:Generator_UserTableName="Bins" msprop:Generator_RowEvArgName="BinsRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="BinID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnBinID" msprop:Generator_ColumnPropNameInRow="BinID" msprop:Generator_ColumnPropNameInTable="BinIDColumn" msprop:Generator_UserColumnName="BinID" type="xs:int" /> <xs:element name="BinID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnBinID" msprop:Generator_ColumnPropNameInRow="BinID" msprop:Generator_ColumnPropNameInTable="BinIDColumn" msprop:Generator_UserColumnName="BinID" type="xs:int" />
@@ -4018,7 +4236,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="Carts" msprop:Generator_TableClassName="CartsDataTable" msprop:Generator_TableVarName="tableCarts" msprop:Generator_TablePropName="Carts" msprop:Generator_RowDeletingName="CartsRowDeleting" msprop:Generator_RowChangingName="CartsRowChanging" msprop:Generator_RowEvHandlerName="CartsRowChangeEventHandler" msprop:Generator_RowDeletedName="CartsRowDeleted" msprop:Generator_UserTableName="Carts" msprop:Generator_RowChangedName="CartsRowChanged" msprop:Generator_RowEvArgName="CartsRowChangeEvent" msprop:Generator_RowClassName="CartsRow"> <xs:element name="Carts" msprop:Generator_TableClassName="CartsDataTable" msprop:Generator_TableVarName="tableCarts" msprop:Generator_RowChangedName="CartsRowChanged" msprop:Generator_TablePropName="Carts" msprop:Generator_RowDeletingName="CartsRowDeleting" msprop:Generator_RowChangingName="CartsRowChanging" msprop:Generator_RowEvHandlerName="CartsRowChangeEventHandler" msprop:Generator_RowDeletedName="CartsRowDeleted" msprop:Generator_RowClassName="CartsRow" msprop:Generator_UserTableName="Carts" msprop:Generator_RowEvArgName="CartsRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="CartID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnCartID" msprop:Generator_ColumnPropNameInRow="CartID" msprop:Generator_ColumnPropNameInTable="CartIDColumn" msprop:Generator_UserColumnName="CartID" type="xs:int" /> <xs:element name="CartID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnCartID" msprop:Generator_ColumnPropNameInRow="CartID" msprop:Generator_ColumnPropNameInTable="CartIDColumn" msprop:Generator_UserColumnName="CartID" type="xs:int" />
@@ -4037,7 +4255,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="OfflineOrderList" msprop:Generator_TableClassName="OfflineOrderListDataTable" msprop:Generator_TableVarName="tableOfflineOrderList" msprop:Generator_RowChangedName="OfflineOrderListRowChanged" msprop:Generator_TablePropName="OfflineOrderList" msprop:Generator_RowDeletingName="OfflineOrderListRowDeleting" msprop:Generator_RowChangingName="OfflineOrderListRowChanging" msprop:Generator_RowEvHandlerName="OfflineOrderListRowChangeEventHandler" msprop:Generator_RowDeletedName="OfflineOrderListRowDeleted" msprop:Generator_RowClassName="OfflineOrderListRow" msprop:Generator_UserTableName="OfflineOrderList" msprop:Generator_RowEvArgName="OfflineOrderListRowChangeEvent"> <xs:element name="OfflineOrderList" msprop:Generator_TableClassName="OfflineOrderListDataTable" msprop:Generator_TableVarName="tableOfflineOrderList" msprop:Generator_TablePropName="OfflineOrderList" msprop:Generator_RowDeletingName="OfflineOrderListRowDeleting" msprop:Generator_RowChangingName="OfflineOrderListRowChanging" msprop:Generator_RowEvHandlerName="OfflineOrderListRowChangeEventHandler" msprop:Generator_RowDeletedName="OfflineOrderListRowDeleted" msprop:Generator_UserTableName="OfflineOrderList" msprop:Generator_RowChangedName="OfflineOrderListRowChanged" msprop:Generator_RowEvArgName="OfflineOrderListRowChangeEvent" msprop:Generator_RowClassName="OfflineOrderListRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="OrdID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnOrdID" msprop:Generator_ColumnPropNameInRow="OrdID" msprop:Generator_ColumnPropNameInTable="OrdIDColumn" msprop:Generator_UserColumnName="OrdID" type="xs:int" /> <xs:element name="OrdID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnOrdID" msprop:Generator_ColumnPropNameInRow="OrdID" msprop:Generator_ColumnPropNameInTable="OrdIDColumn" msprop:Generator_UserColumnName="OrdID" type="xs:int" />
@@ -4068,7 +4286,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="OffOrd2Item" msprop:Generator_TableClassName="OffOrd2ItemDataTable" msprop:Generator_TableVarName="tableOffOrd2Item" msprop:Generator_RowChangedName="OffOrd2ItemRowChanged" msprop:Generator_TablePropName="OffOrd2Item" msprop:Generator_RowDeletingName="OffOrd2ItemRowDeleting" msprop:Generator_RowChangingName="OffOrd2ItemRowChanging" msprop:Generator_RowEvHandlerName="OffOrd2ItemRowChangeEventHandler" msprop:Generator_RowDeletedName="OffOrd2ItemRowDeleted" msprop:Generator_RowClassName="OffOrd2ItemRow" msprop:Generator_UserTableName="OffOrd2Item" msprop:Generator_RowEvArgName="OffOrd2ItemRowChangeEvent"> <xs:element name="OffOrd2Item" msprop:Generator_TableClassName="OffOrd2ItemDataTable" msprop:Generator_TableVarName="tableOffOrd2Item" msprop:Generator_TablePropName="OffOrd2Item" msprop:Generator_RowDeletingName="OffOrd2ItemRowDeleting" msprop:Generator_RowChangingName="OffOrd2ItemRowChanging" msprop:Generator_RowEvHandlerName="OffOrd2ItemRowChangeEventHandler" msprop:Generator_RowDeletedName="OffOrd2ItemRowDeleted" msprop:Generator_UserTableName="OffOrd2Item" msprop:Generator_RowChangedName="OffOrd2ItemRowChanged" msprop:Generator_RowEvArgName="OffOrd2ItemRowChangeEvent" msprop:Generator_RowClassName="OffOrd2ItemRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="OrdID" msprop:Generator_ColumnVarNameInTable="columnOrdID" msprop:Generator_ColumnPropNameInRow="OrdID" msprop:Generator_ColumnPropNameInTable="OrdIDColumn" msprop:Generator_UserColumnName="OrdID" type="xs:int" /> <xs:element name="OrdID" msprop:Generator_ColumnVarNameInTable="columnOrdID" msprop:Generator_ColumnPropNameInRow="OrdID" msprop:Generator_ColumnPropNameInTable="OrdIDColumn" msprop:Generator_UserColumnName="OrdID" type="xs:int" />
@@ -4076,7 +4294,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="KitList" msprop:Generator_TableClassName="KitListDataTable" msprop:Generator_TableVarName="tableKitList" msprop:Generator_TablePropName="KitList" msprop:Generator_RowDeletingName="KitListRowDeleting" msprop:Generator_RowChangingName="KitListRowChanging" msprop:Generator_RowEvHandlerName="KitListRowChangeEventHandler" msprop:Generator_RowDeletedName="KitListRowDeleted" msprop:Generator_UserTableName="KitList" msprop:Generator_RowChangedName="KitListRowChanged" msprop:Generator_RowEvArgName="KitListRowChangeEvent" msprop:Generator_RowClassName="KitListRow"> <xs:element name="KitList" msprop:Generator_TableClassName="KitListDataTable" msprop:Generator_TableVarName="tableKitList" msprop:Generator_RowChangedName="KitListRowChanged" msprop:Generator_TablePropName="KitList" msprop:Generator_RowDeletingName="KitListRowDeleting" msprop:Generator_RowChangingName="KitListRowChanging" msprop:Generator_RowEvHandlerName="KitListRowChangeEventHandler" msprop:Generator_RowDeletedName="KitListRowDeleted" msprop:Generator_RowClassName="KitListRow" msprop:Generator_UserTableName="KitList" msprop:Generator_RowEvArgName="KitListRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="KitID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnKitID" msprop:Generator_ColumnPropNameInRow="KitID" msprop:Generator_ColumnPropNameInTable="KitIDColumn" msprop:Generator_UserColumnName="KitID" type="xs:int" /> <xs:element name="KitID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnKitID" msprop:Generator_ColumnPropNameInRow="KitID" msprop:Generator_ColumnPropNameInTable="KitIDColumn" msprop:Generator_UserColumnName="KitID" type="xs:int" />
@@ -4093,7 +4311,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="Nesting" msprop:Generator_TableClassName="NestingDataTable" msprop:Generator_TableVarName="tableNesting" msprop:Generator_RowChangedName="NestingRowChanged" msprop:Generator_TablePropName="Nesting" msprop:Generator_RowDeletingName="NestingRowDeleting" msprop:Generator_RowChangingName="NestingRowChanging" msprop:Generator_RowEvHandlerName="NestingRowChangeEventHandler" msprop:Generator_RowDeletedName="NestingRowDeleted" msprop:Generator_RowClassName="NestingRow" msprop:Generator_UserTableName="Nesting" msprop:Generator_RowEvArgName="NestingRowChangeEvent"> <xs:element name="Nesting" msprop:Generator_TableClassName="NestingDataTable" msprop:Generator_TableVarName="tableNesting" msprop:Generator_TablePropName="Nesting" msprop:Generator_RowDeletingName="NestingRowDeleting" msprop:Generator_RowChangingName="NestingRowChanging" msprop:Generator_RowEvHandlerName="NestingRowChangeEventHandler" msprop:Generator_RowDeletedName="NestingRowDeleted" msprop:Generator_UserTableName="Nesting" msprop:Generator_RowChangedName="NestingRowChanged" msprop:Generator_RowEvArgName="NestingRowChangeEvent" msprop:Generator_RowClassName="NestingRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="SheetID" msprop:Generator_ColumnVarNameInTable="columnSheetID" msprop:Generator_ColumnPropNameInRow="SheetID" msprop:Generator_ColumnPropNameInTable="SheetIDColumn" msprop:Generator_UserColumnName="SheetID" type="xs:int" /> <xs:element name="SheetID" msprop:Generator_ColumnVarNameInTable="columnSheetID" msprop:Generator_ColumnPropNameInRow="SheetID" msprop:Generator_ColumnPropNameInTable="SheetIDColumn" msprop:Generator_UserColumnName="SheetID" type="xs:int" />
@@ -4102,7 +4320,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="ImportLog" msprop:Generator_TableClassName="ImportLogDataTable" msprop:Generator_TableVarName="tableImportLog" msprop:Generator_RowChangedName="ImportLogRowChanged" msprop:Generator_TablePropName="ImportLog" msprop:Generator_RowDeletingName="ImportLogRowDeleting" msprop:Generator_RowChangingName="ImportLogRowChanging" msprop:Generator_RowEvHandlerName="ImportLogRowChangeEventHandler" msprop:Generator_RowDeletedName="ImportLogRowDeleted" msprop:Generator_RowClassName="ImportLogRow" msprop:Generator_UserTableName="ImportLog" msprop:Generator_RowEvArgName="ImportLogRowChangeEvent"> <xs:element name="ImportLog" msprop:Generator_TableClassName="ImportLogDataTable" msprop:Generator_TableVarName="tableImportLog" msprop:Generator_TablePropName="ImportLog" msprop:Generator_RowDeletingName="ImportLogRowDeleting" msprop:Generator_RowChangingName="ImportLogRowChanging" msprop:Generator_RowEvHandlerName="ImportLogRowChangeEventHandler" msprop:Generator_RowDeletedName="ImportLogRowDeleted" msprop:Generator_UserTableName="ImportLog" msprop:Generator_RowChangedName="ImportLogRowChanged" msprop:Generator_RowEvArgName="ImportLogRowChangeEvent" msprop:Generator_RowClassName="ImportLogRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="NumLog" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnNumLog" msprop:Generator_ColumnPropNameInRow="NumLog" msprop:Generator_ColumnPropNameInTable="NumLogColumn" msprop:Generator_UserColumnName="NumLog" type="xs:int" /> <xs:element name="NumLog" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnNumLog" msprop:Generator_ColumnPropNameInRow="NumLog" msprop:Generator_ColumnPropNameInTable="NumLogColumn" msprop:Generator_UserColumnName="NumLog" type="xs:int" />
@@ -4133,7 +4351,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="BinList" msprop:Generator_TableClassName="BinListDataTable" msprop:Generator_TableVarName="tableBinList" msprop:Generator_RowChangedName="BinListRowChanged" msprop:Generator_TablePropName="BinList" msprop:Generator_RowDeletingName="BinListRowDeleting" msprop:Generator_RowChangingName="BinListRowChanging" msprop:Generator_RowEvHandlerName="BinListRowChangeEventHandler" msprop:Generator_RowDeletedName="BinListRowDeleted" msprop:Generator_RowClassName="BinListRow" msprop:Generator_UserTableName="BinList" msprop:Generator_RowEvArgName="BinListRowChangeEvent"> <xs:element name="BinList" msprop:Generator_TableClassName="BinListDataTable" msprop:Generator_TableVarName="tableBinList" msprop:Generator_TablePropName="BinList" msprop:Generator_RowDeletingName="BinListRowDeleting" msprop:Generator_RowChangingName="BinListRowChanging" msprop:Generator_RowEvHandlerName="BinListRowChangeEventHandler" msprop:Generator_RowDeletedName="BinListRowDeleted" msprop:Generator_UserTableName="BinList" msprop:Generator_RowChangedName="BinListRowChanged" msprop:Generator_RowEvArgName="BinListRowChangeEvent" msprop:Generator_RowClassName="BinListRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="BinID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnBinID" msprop:Generator_ColumnPropNameInRow="BinID" msprop:Generator_ColumnPropNameInTable="BinIDColumn" msprop:Generator_UserColumnName="BinID" type="xs:int" /> <xs:element name="BinID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnBinID" msprop:Generator_ColumnPropNameInRow="BinID" msprop:Generator_ColumnPropNameInTable="BinIDColumn" msprop:Generator_UserColumnName="BinID" type="xs:int" />
@@ -4141,7 +4359,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="FinalKit" msprop:Generator_TableClassName="FinalKitDataTable" msprop:Generator_TableVarName="tableFinalKit" msprop:Generator_TablePropName="FinalKit" msprop:Generator_RowDeletingName="FinalKitRowDeleting" msprop:Generator_RowChangingName="FinalKitRowChanging" msprop:Generator_RowEvHandlerName="FinalKitRowChangeEventHandler" msprop:Generator_RowDeletedName="FinalKitRowDeleted" msprop:Generator_UserTableName="FinalKit" msprop:Generator_RowChangedName="FinalKitRowChanged" msprop:Generator_RowEvArgName="FinalKitRowChangeEvent" msprop:Generator_RowClassName="FinalKitRow"> <xs:element name="FinalKit" msprop:Generator_TableClassName="FinalKitDataTable" msprop:Generator_TableVarName="tableFinalKit" msprop:Generator_RowChangedName="FinalKitRowChanged" msprop:Generator_TablePropName="FinalKit" msprop:Generator_RowDeletingName="FinalKitRowDeleting" msprop:Generator_RowChangingName="FinalKitRowChanging" msprop:Generator_RowEvHandlerName="FinalKitRowChangeEventHandler" msprop:Generator_RowDeletedName="FinalKitRowDeleted" msprop:Generator_RowClassName="FinalKitRow" msprop:Generator_UserTableName="FinalKit" msprop:Generator_RowEvArgName="FinalKitRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="FinalKitID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnFinalKitID" msprop:Generator_ColumnPropNameInRow="FinalKitID" msprop:Generator_ColumnPropNameInTable="FinalKitIDColumn" msprop:Generator_UserColumnName="FinalKitID" type="xs:int" /> <xs:element name="FinalKitID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnFinalKitID" msprop:Generator_ColumnPropNameInRow="FinalKitID" msprop:Generator_ColumnPropNameInTable="FinalKitIDColumn" msprop:Generator_UserColumnName="FinalKitID" type="xs:int" />
@@ -4157,7 +4375,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="Order2FinalKit" msprop:Generator_TableClassName="Order2FinalKitDataTable" msprop:Generator_TableVarName="tableOrder2FinalKit" msprop:Generator_TablePropName="Order2FinalKit" msprop:Generator_RowDeletingName="Order2FinalKitRowDeleting" msprop:Generator_RowChangingName="Order2FinalKitRowChanging" msprop:Generator_RowEvHandlerName="Order2FinalKitRowChangeEventHandler" msprop:Generator_RowDeletedName="Order2FinalKitRowDeleted" msprop:Generator_UserTableName="Order2FinalKit" msprop:Generator_RowChangedName="Order2FinalKitRowChanged" msprop:Generator_RowEvArgName="Order2FinalKitRowChangeEvent" msprop:Generator_RowClassName="Order2FinalKitRow"> <xs:element name="Order2FinalKit" msprop:Generator_TableClassName="Order2FinalKitDataTable" msprop:Generator_TableVarName="tableOrder2FinalKit" msprop:Generator_RowChangedName="Order2FinalKitRowChanged" msprop:Generator_TablePropName="Order2FinalKit" msprop:Generator_RowDeletingName="Order2FinalKitRowDeleting" msprop:Generator_RowChangingName="Order2FinalKitRowChanging" msprop:Generator_RowEvHandlerName="Order2FinalKitRowChangeEventHandler" msprop:Generator_RowDeletedName="Order2FinalKitRowDeleted" msprop:Generator_RowClassName="Order2FinalKitRow" msprop:Generator_UserTableName="Order2FinalKit" msprop:Generator_RowEvArgName="Order2FinalKitRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="FinalKitID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnFinalKitID" msprop:Generator_ColumnPropNameInRow="FinalKitID" msprop:Generator_ColumnPropNameInTable="FinalKitIDColumn" msprop:Generator_UserColumnName="FinalKitID" type="xs:int" /> <xs:element name="FinalKitID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnFinalKitID" msprop:Generator_ColumnPropNameInRow="FinalKitID" msprop:Generator_ColumnPropNameInTable="FinalKitIDColumn" msprop:Generator_UserColumnName="FinalKitID" type="xs:int" />
@@ -4165,7 +4383,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="Counters" msprop:Generator_TableClassName="CountersDataTable" msprop:Generator_TableVarName="tableCounters" msprop:Generator_RowChangedName="CountersRowChanged" msprop:Generator_TablePropName="Counters" msprop:Generator_RowDeletingName="CountersRowDeleting" msprop:Generator_RowChangingName="CountersRowChanging" msprop:Generator_RowEvHandlerName="CountersRowChangeEventHandler" msprop:Generator_RowDeletedName="CountersRowDeleted" msprop:Generator_RowClassName="CountersRow" msprop:Generator_UserTableName="Counters" msprop:Generator_RowEvArgName="CountersRowChangeEvent"> <xs:element name="Counters" msprop:Generator_TableClassName="CountersDataTable" msprop:Generator_TableVarName="tableCounters" msprop:Generator_TablePropName="Counters" msprop:Generator_RowDeletingName="CountersRowDeleting" msprop:Generator_RowChangingName="CountersRowChanging" msprop:Generator_RowEvHandlerName="CountersRowChangeEventHandler" msprop:Generator_RowDeletedName="CountersRowDeleted" msprop:Generator_UserTableName="Counters" msprop:Generator_RowChangedName="CountersRowChanged" msprop:Generator_RowEvArgName="CountersRowChangeEvent" msprop:Generator_RowClassName="CountersRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="CountType" msprop:Generator_ColumnVarNameInTable="columnCountType" msprop:Generator_ColumnPropNameInRow="CountType" msprop:Generator_ColumnPropNameInTable="CountTypeColumn" msprop:Generator_UserColumnName="CountType"> <xs:element name="CountType" msprop:Generator_ColumnVarNameInTable="columnCountType" msprop:Generator_ColumnPropNameInRow="CountType" msprop:Generator_ColumnPropNameInTable="CountTypeColumn" msprop:Generator_UserColumnName="CountType">
@@ -4193,7 +4411,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="ErrorsLog" msprop:Generator_TableClassName="ErrorsLogDataTable" msprop:Generator_TableVarName="tableErrorsLog" msprop:Generator_TablePropName="ErrorsLog" msprop:Generator_RowDeletingName="ErrorsLogRowDeleting" msprop:Generator_RowChangingName="ErrorsLogRowChanging" msprop:Generator_RowEvHandlerName="ErrorsLogRowChangeEventHandler" msprop:Generator_RowDeletedName="ErrorsLogRowDeleted" msprop:Generator_UserTableName="ErrorsLog" msprop:Generator_RowChangedName="ErrorsLogRowChanged" msprop:Generator_RowEvArgName="ErrorsLogRowChangeEvent" msprop:Generator_RowClassName="ErrorsLogRow"> <xs:element name="ErrorsLog" msprop:Generator_TableClassName="ErrorsLogDataTable" msprop:Generator_TableVarName="tableErrorsLog" msprop:Generator_RowChangedName="ErrorsLogRowChanged" msprop:Generator_TablePropName="ErrorsLog" msprop:Generator_RowDeletingName="ErrorsLogRowDeleting" msprop:Generator_RowChangingName="ErrorsLogRowChanging" msprop:Generator_RowEvHandlerName="ErrorsLogRowChangeEventHandler" msprop:Generator_RowDeletedName="ErrorsLogRowDeleted" msprop:Generator_RowClassName="ErrorsLogRow" msprop:Generator_UserTableName="ErrorsLog" msprop:Generator_RowEvArgName="ErrorsLogRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="ErrID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnErrID" msprop:Generator_ColumnPropNameInRow="ErrID" msprop:Generator_ColumnPropNameInTable="ErrIDColumn" msprop:Generator_UserColumnName="ErrID" type="xs:int" /> <xs:element name="ErrID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnErrID" msprop:Generator_ColumnPropNameInRow="ErrID" msprop:Generator_ColumnPropNameInTable="ErrIDColumn" msprop:Generator_UserColumnName="ErrID" type="xs:int" />
@@ -4229,7 +4447,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="ItemValidation" msprop:Generator_TableClassName="ItemValidationDataTable" msprop:Generator_TableVarName="tableItemValidation" msprop:Generator_TablePropName="ItemValidation" msprop:Generator_RowDeletingName="ItemValidationRowDeleting" msprop:Generator_RowChangingName="ItemValidationRowChanging" msprop:Generator_RowEvHandlerName="ItemValidationRowChangeEventHandler" msprop:Generator_RowDeletedName="ItemValidationRowDeleted" msprop:Generator_UserTableName="ItemValidation" msprop:Generator_RowChangedName="ItemValidationRowChanged" msprop:Generator_RowEvArgName="ItemValidationRowChangeEvent" msprop:Generator_RowClassName="ItemValidationRow"> <xs:element name="ItemValidation" msprop:Generator_TableClassName="ItemValidationDataTable" msprop:Generator_TableVarName="tableItemValidation" msprop:Generator_RowChangedName="ItemValidationRowChanged" msprop:Generator_TablePropName="ItemValidation" msprop:Generator_RowDeletingName="ItemValidationRowDeleting" msprop:Generator_RowChangingName="ItemValidationRowChanging" msprop:Generator_RowEvHandlerName="ItemValidationRowChangeEventHandler" msprop:Generator_RowDeletedName="ItemValidationRowDeleted" msprop:Generator_RowClassName="ItemValidationRow" msprop:Generator_UserTableName="ItemValidation" msprop:Generator_RowEvArgName="ItemValidationRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="ItemExtCode" msprop:Generator_ColumnVarNameInTable="columnItemExtCode" msprop:Generator_ColumnPropNameInRow="ItemExtCode" msprop:Generator_ColumnPropNameInTable="ItemExtCodeColumn" msprop:Generator_UserColumnName="ItemExtCode"> <xs:element name="ItemExtCode" msprop:Generator_ColumnVarNameInTable="columnItemExtCode" msprop:Generator_ColumnPropNameInRow="ItemExtCode" msprop:Generator_ColumnPropNameInTable="ItemExtCodeColumn" msprop:Generator_UserColumnName="ItemExtCode">
@@ -4245,7 +4463,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="PartValidPareto" msprop:Generator_TableClassName="PartValidParetoDataTable" msprop:Generator_TableVarName="tablePartValidPareto" msprop:Generator_RowChangedName="PartValidParetoRowChanged" msprop:Generator_TablePropName="PartValidPareto" msprop:Generator_RowDeletingName="PartValidParetoRowDeleting" msprop:Generator_RowChangingName="PartValidParetoRowChanging" msprop:Generator_RowEvHandlerName="PartValidParetoRowChangeEventHandler" msprop:Generator_RowDeletedName="PartValidParetoRowDeleted" msprop:Generator_RowClassName="PartValidParetoRow" msprop:Generator_UserTableName="PartValidPareto" msprop:Generator_RowEvArgName="PartValidParetoRowChangeEvent"> <xs:element name="PartValidPareto" msprop:Generator_TableClassName="PartValidParetoDataTable" msprop:Generator_TableVarName="tablePartValidPareto" msprop:Generator_TablePropName="PartValidPareto" msprop:Generator_RowDeletingName="PartValidParetoRowDeleting" msprop:Generator_RowChangingName="PartValidParetoRowChanging" msprop:Generator_RowEvHandlerName="PartValidParetoRowChangeEventHandler" msprop:Generator_RowDeletedName="PartValidParetoRowDeleted" msprop:Generator_UserTableName="PartValidPareto" msprop:Generator_RowChangedName="PartValidParetoRowChanged" msprop:Generator_RowEvArgName="PartValidParetoRowChangeEvent" msprop:Generator_RowClassName="PartValidParetoRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="TotParts" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnTotParts" msprop:Generator_ColumnPropNameInRow="TotParts" msprop:Generator_ColumnPropNameInTable="TotPartsColumn" msprop:Generator_UserColumnName="TotParts" type="xs:int" minOccurs="0" /> <xs:element name="TotParts" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnTotParts" msprop:Generator_ColumnPropNameInRow="TotParts" msprop:Generator_ColumnPropNameInTable="TotPartsColumn" msprop:Generator_UserColumnName="TotParts" type="xs:int" minOccurs="0" />
@@ -4255,7 +4473,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="UnloadStats" msprop:Generator_TableClassName="UnloadStatsDataTable" msprop:Generator_TableVarName="tableUnloadStats" msprop:Generator_RowChangedName="UnloadStatsRowChanged" msprop:Generator_TablePropName="UnloadStats" msprop:Generator_RowDeletingName="UnloadStatsRowDeleting" msprop:Generator_RowChangingName="UnloadStatsRowChanging" msprop:Generator_RowEvHandlerName="UnloadStatsRowChangeEventHandler" msprop:Generator_RowDeletedName="UnloadStatsRowDeleted" msprop:Generator_RowClassName="UnloadStatsRow" msprop:Generator_UserTableName="UnloadStats" msprop:Generator_RowEvArgName="UnloadStatsRowChangeEvent"> <xs:element name="UnloadStats" msprop:Generator_TableClassName="UnloadStatsDataTable" msprop:Generator_TableVarName="tableUnloadStats" msprop:Generator_TablePropName="UnloadStats" msprop:Generator_RowDeletingName="UnloadStatsRowDeleting" msprop:Generator_RowChangingName="UnloadStatsRowChanging" msprop:Generator_RowEvHandlerName="UnloadStatsRowChangeEventHandler" msprop:Generator_RowDeletedName="UnloadStatsRowDeleted" msprop:Generator_UserTableName="UnloadStats" msprop:Generator_RowChangedName="UnloadStatsRowChanged" msprop:Generator_RowEvArgName="UnloadStatsRowChangeEvent" msprop:Generator_RowClassName="UnloadStatsRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="Stat" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnStat" msprop:Generator_ColumnPropNameInRow="Stat" msprop:Generator_ColumnPropNameInTable="StatColumn" msprop:Generator_UserColumnName="Stat" minOccurs="0"> <xs:element name="Stat" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnStat" msprop:Generator_ColumnPropNameInRow="Stat" msprop:Generator_ColumnPropNameInTable="StatColumn" msprop:Generator_UserColumnName="Stat" minOccurs="0">
@@ -4272,7 +4490,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="Remnants" msprop:Generator_TableClassName="RemnantsDataTable" msprop:Generator_TableVarName="tableRemnants" msprop:Generator_TablePropName="Remnants" msprop:Generator_RowDeletingName="RemnantsRowDeleting" msprop:Generator_RowChangingName="RemnantsRowChanging" msprop:Generator_RowEvHandlerName="RemnantsRowChangeEventHandler" msprop:Generator_RowDeletedName="RemnantsRowDeleted" msprop:Generator_UserTableName="Remnants" msprop:Generator_RowChangedName="RemnantsRowChanged" msprop:Generator_RowEvArgName="RemnantsRowChangeEvent" msprop:Generator_RowClassName="RemnantsRow"> <xs:element name="Remnants" msprop:Generator_TableClassName="RemnantsDataTable" msprop:Generator_TableVarName="tableRemnants" msprop:Generator_RowChangedName="RemnantsRowChanged" msprop:Generator_TablePropName="Remnants" msprop:Generator_RowDeletingName="RemnantsRowDeleting" msprop:Generator_RowChangingName="RemnantsRowChanging" msprop:Generator_RowEvHandlerName="RemnantsRowChangeEventHandler" msprop:Generator_RowDeletedName="RemnantsRowDeleted" msprop:Generator_RowClassName="RemnantsRow" msprop:Generator_UserTableName="Remnants" msprop:Generator_RowEvArgName="RemnantsRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="RemnantID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnRemnantID" msprop:Generator_ColumnPropNameInRow="RemnantID" msprop:Generator_ColumnPropNameInTable="RemnantIDColumn" msprop:Generator_UserColumnName="RemnantID" type="xs:int" /> <xs:element name="RemnantID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnRemnantID" msprop:Generator_ColumnPropNameInRow="RemnantID" msprop:Generator_ColumnPropNameInTable="RemnantIDColumn" msprop:Generator_UserColumnName="RemnantID" type="xs:int" />
@@ -4285,7 +4503,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="CartOnKit" msprop:Generator_TableClassName="CartOnKitDataTable" msprop:Generator_TableVarName="tableCartOnKit" msprop:Generator_TablePropName="CartOnKit" msprop:Generator_RowDeletingName="CartOnKitRowDeleting" msprop:Generator_RowChangingName="CartOnKitRowChanging" msprop:Generator_RowEvHandlerName="CartOnKitRowChangeEventHandler" msprop:Generator_RowDeletedName="CartOnKitRowDeleted" msprop:Generator_UserTableName="CartOnKit" msprop:Generator_RowChangedName="CartOnKitRowChanged" msprop:Generator_RowEvArgName="CartOnKitRowChangeEvent" msprop:Generator_RowClassName="CartOnKitRow"> <xs:element name="CartOnKit" msprop:Generator_TableClassName="CartOnKitDataTable" msprop:Generator_TableVarName="tableCartOnKit" msprop:Generator_RowChangedName="CartOnKitRowChanged" msprop:Generator_TablePropName="CartOnKit" msprop:Generator_RowDeletingName="CartOnKitRowDeleting" msprop:Generator_RowChangingName="CartOnKitRowChanging" msprop:Generator_RowEvHandlerName="CartOnKitRowChangeEventHandler" msprop:Generator_RowDeletedName="CartOnKitRowDeleted" msprop:Generator_RowClassName="CartOnKitRow" msprop:Generator_UserTableName="CartOnKit" msprop:Generator_RowEvArgName="CartOnKitRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="CartID" msprop:Generator_ColumnVarNameInTable="columnCartID" msprop:Generator_ColumnPropNameInRow="CartID" msprop:Generator_ColumnPropNameInTable="CartIDColumn" msprop:Generator_UserColumnName="CartID" type="xs:int" /> <xs:element name="CartID" msprop:Generator_ColumnVarNameInTable="columnCartID" msprop:Generator_ColumnPropNameInRow="CartID" msprop:Generator_ColumnPropNameInTable="CartIDColumn" msprop:Generator_UserColumnName="CartID" type="xs:int" />
@@ -4334,7 +4552,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="PackList" msprop:Generator_TableClassName="PackListDataTable" msprop:Generator_TableVarName="tablePackList" msprop:Generator_TablePropName="PackList" msprop:Generator_RowDeletingName="PackListRowDeleting" msprop:Generator_RowChangingName="PackListRowChanging" msprop:Generator_RowEvHandlerName="PackListRowChangeEventHandler" msprop:Generator_RowDeletedName="PackListRowDeleted" msprop:Generator_UserTableName="PackList" msprop:Generator_RowChangedName="PackListRowChanged" msprop:Generator_RowEvArgName="PackListRowChangeEvent" msprop:Generator_RowClassName="PackListRow"> <xs:element name="PackList" msprop:Generator_TableClassName="PackListDataTable" msprop:Generator_TableVarName="tablePackList" msprop:Generator_RowChangedName="PackListRowChanged" msprop:Generator_TablePropName="PackList" msprop:Generator_RowDeletingName="PackListRowDeleting" msprop:Generator_RowChangingName="PackListRowChanging" msprop:Generator_RowEvHandlerName="PackListRowChangeEventHandler" msprop:Generator_RowDeletedName="PackListRowDeleted" msprop:Generator_RowClassName="PackListRow" msprop:Generator_UserTableName="PackList" msprop:Generator_RowEvArgName="PackListRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="PackListID" msprop:Generator_ColumnVarNameInTable="columnPackListID" msprop:Generator_ColumnPropNameInRow="PackListID" msprop:Generator_ColumnPropNameInTable="PackListIDColumn" msprop:Generator_UserColumnName="PackListID" type="xs:int" /> <xs:element name="PackListID" msprop:Generator_ColumnVarNameInTable="columnPackListID" msprop:Generator_ColumnPropNameInRow="PackListID" msprop:Generator_ColumnPropNameInTable="PackListIDColumn" msprop:Generator_UserColumnName="PackListID" type="xs:int" />
@@ -4363,7 +4581,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="OtherItem" msprop:Generator_TableClassName="OtherItemDataTable" msprop:Generator_TableVarName="tableOtherItem" msprop:Generator_TablePropName="OtherItem" msprop:Generator_RowDeletingName="OtherItemRowDeleting" msprop:Generator_RowChangingName="OtherItemRowChanging" msprop:Generator_RowEvHandlerName="OtherItemRowChangeEventHandler" msprop:Generator_RowDeletedName="OtherItemRowDeleted" msprop:Generator_UserTableName="OtherItem" msprop:Generator_RowChangedName="OtherItemRowChanged" msprop:Generator_RowEvArgName="OtherItemRowChangeEvent" msprop:Generator_RowClassName="OtherItemRow"> <xs:element name="OtherItem" msprop:Generator_TableClassName="OtherItemDataTable" msprop:Generator_TableVarName="tableOtherItem" msprop:Generator_RowChangedName="OtherItemRowChanged" msprop:Generator_TablePropName="OtherItem" msprop:Generator_RowDeletingName="OtherItemRowDeleting" msprop:Generator_RowChangingName="OtherItemRowChanging" msprop:Generator_RowEvHandlerName="OtherItemRowChangeEventHandler" msprop:Generator_RowDeletedName="OtherItemRowDeleted" msprop:Generator_RowClassName="OtherItemRow" msprop:Generator_UserTableName="OtherItem" msprop:Generator_RowEvArgName="OtherItemRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="OtherItemID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnOtherItemID" msprop:Generator_ColumnPropNameInRow="OtherItemID" msprop:Generator_ColumnPropNameInTable="OtherItemIDColumn" msprop:Generator_UserColumnName="OtherItemID" type="xs:int" /> <xs:element name="OtherItemID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnOtherItemID" msprop:Generator_ColumnPropNameInRow="OtherItemID" msprop:Generator_ColumnPropNameInTable="OtherItemIDColumn" msprop:Generator_UserColumnName="OtherItemID" type="xs:int" />
@@ -4405,7 +4623,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="ItemSearchDetail" msprop:Generator_TableClassName="ItemSearchDetailDataTable" msprop:Generator_TableVarName="tableItemSearchDetail" msprop:Generator_RowChangedName="ItemSearchDetailRowChanged" msprop:Generator_TablePropName="ItemSearchDetail" msprop:Generator_RowDeletingName="ItemSearchDetailRowDeleting" msprop:Generator_RowChangingName="ItemSearchDetailRowChanging" msprop:Generator_RowEvHandlerName="ItemSearchDetailRowChangeEventHandler" msprop:Generator_RowDeletedName="ItemSearchDetailRowDeleted" msprop:Generator_RowClassName="ItemSearchDetailRow" msprop:Generator_UserTableName="ItemSearchDetail" msprop:Generator_RowEvArgName="ItemSearchDetailRowChangeEvent"> <xs:element name="ItemSearchDetail" msprop:Generator_TableClassName="ItemSearchDetailDataTable" msprop:Generator_TableVarName="tableItemSearchDetail" msprop:Generator_TablePropName="ItemSearchDetail" msprop:Generator_RowDeletingName="ItemSearchDetailRowDeleting" msprop:Generator_RowChangingName="ItemSearchDetailRowChanging" msprop:Generator_RowEvHandlerName="ItemSearchDetailRowChangeEventHandler" msprop:Generator_RowDeletedName="ItemSearchDetailRowDeleted" msprop:Generator_UserTableName="ItemSearchDetail" msprop:Generator_RowChangedName="ItemSearchDetailRowChanged" msprop:Generator_RowEvArgName="ItemSearchDetailRowChangeEvent" msprop:Generator_RowClassName="ItemSearchDetailRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="ItemID" msprop:Generator_ColumnVarNameInTable="columnItemID" msprop:Generator_ColumnPropNameInRow="ItemID" msprop:Generator_ColumnPropNameInTable="ItemIDColumn" msprop:Generator_UserColumnName="ItemID" type="xs:int" /> <xs:element name="ItemID" msprop:Generator_ColumnVarNameInTable="columnItemID" msprop:Generator_ColumnPropNameInRow="ItemID" msprop:Generator_ColumnPropNameInTable="ItemIDColumn" msprop:Generator_UserColumnName="ItemID" type="xs:int" />
@@ -4516,7 +4734,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="PackListDet" msprop:Generator_TableClassName="PackListDetDataTable" msprop:Generator_TableVarName="tablePackListDet" msprop:Generator_RowChangedName="PackListDetRowChanged" msprop:Generator_TablePropName="PackListDet" msprop:Generator_RowDeletingName="PackListDetRowDeleting" msprop:Generator_RowChangingName="PackListDetRowChanging" msprop:Generator_RowEvHandlerName="PackListDetRowChangeEventHandler" msprop:Generator_RowDeletedName="PackListDetRowDeleted" msprop:Generator_RowClassName="PackListDetRow" msprop:Generator_UserTableName="PackListDet" msprop:Generator_RowEvArgName="PackListDetRowChangeEvent"> <xs:element name="PackListDet" msprop:Generator_TableClassName="PackListDetDataTable" msprop:Generator_TableVarName="tablePackListDet" msprop:Generator_TablePropName="PackListDet" msprop:Generator_RowDeletingName="PackListDetRowDeleting" msprop:Generator_RowChangingName="PackListDetRowChanging" msprop:Generator_RowEvHandlerName="PackListDetRowChangeEventHandler" msprop:Generator_RowDeletedName="PackListDetRowDeleted" msprop:Generator_UserTableName="PackListDet" msprop:Generator_RowChangedName="PackListDetRowChanged" msprop:Generator_RowEvArgName="PackListDetRowChangeEvent" msprop:Generator_RowClassName="PackListDetRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="PackListID" msprop:Generator_ColumnVarNameInTable="columnPackListID" msprop:Generator_ColumnPropNameInRow="PackListID" msprop:Generator_ColumnPropNameInTable="PackListIDColumn" msprop:Generator_UserColumnName="PackListID" type="xs:int" /> <xs:element name="PackListID" msprop:Generator_ColumnVarNameInTable="columnPackListID" msprop:Generator_ColumnPropNameInRow="PackListID" msprop:Generator_ColumnPropNameInTable="PackListIDColumn" msprop:Generator_UserColumnName="PackListID" type="xs:int" />
@@ -4579,7 +4797,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="PackLog" msprop:Generator_TableClassName="PackLogDataTable" msprop:Generator_TableVarName="tablePackLog" msprop:Generator_RowChangedName="PackLogRowChanged" msprop:Generator_TablePropName="PackLog" msprop:Generator_RowDeletingName="PackLogRowDeleting" msprop:Generator_RowChangingName="PackLogRowChanging" msprop:Generator_RowEvHandlerName="PackLogRowChangeEventHandler" msprop:Generator_RowDeletedName="PackLogRowDeleted" msprop:Generator_RowClassName="PackLogRow" msprop:Generator_UserTableName="PackLog" msprop:Generator_RowEvArgName="PackLogRowChangeEvent"> <xs:element name="PackLog" msprop:Generator_TableClassName="PackLogDataTable" msprop:Generator_TableVarName="tablePackLog" msprop:Generator_TablePropName="PackLog" msprop:Generator_RowDeletingName="PackLogRowDeleting" msprop:Generator_RowChangingName="PackLogRowChanging" msprop:Generator_RowEvHandlerName="PackLogRowChangeEventHandler" msprop:Generator_RowDeletedName="PackLogRowDeleted" msprop:Generator_UserTableName="PackLog" msprop:Generator_RowChangedName="PackLogRowChanged" msprop:Generator_RowEvArgName="PackLogRowChangeEvent" msprop:Generator_RowClassName="PackLogRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="PLogID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnPLogID" msprop:Generator_ColumnPropNameInRow="PLogID" msprop:Generator_ColumnPropNameInTable="PLogIDColumn" msprop:Generator_UserColumnName="PLogID" type="xs:int" /> <xs:element name="PLogID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnPLogID" msprop:Generator_ColumnPropNameInRow="PLogID" msprop:Generator_ColumnPropNameInTable="PLogIDColumn" msprop:Generator_UserColumnName="PLogID" type="xs:int" />
@@ -4624,7 +4842,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="PackCheck" msprop:Generator_TableClassName="PackCheckDataTable" msprop:Generator_TableVarName="tablePackCheck" msprop:Generator_RowChangedName="PackCheckRowChanged" msprop:Generator_TablePropName="PackCheck" msprop:Generator_RowDeletingName="PackCheckRowDeleting" msprop:Generator_RowChangingName="PackCheckRowChanging" msprop:Generator_RowEvHandlerName="PackCheckRowChangeEventHandler" msprop:Generator_RowDeletedName="PackCheckRowDeleted" msprop:Generator_RowClassName="PackCheckRow" msprop:Generator_UserTableName="PackCheck" msprop:Generator_RowEvArgName="PackCheckRowChangeEvent"> <xs:element name="PackCheck" msprop:Generator_TableClassName="PackCheckDataTable" msprop:Generator_TableVarName="tablePackCheck" msprop:Generator_TablePropName="PackCheck" msprop:Generator_RowDeletingName="PackCheckRowDeleting" msprop:Generator_RowChangingName="PackCheckRowChanging" msprop:Generator_RowEvHandlerName="PackCheckRowChangeEventHandler" msprop:Generator_RowDeletedName="PackCheckRowDeleted" msprop:Generator_UserTableName="PackCheck" msprop:Generator_RowChangedName="PackCheckRowChanged" msprop:Generator_RowEvArgName="PackCheckRowChangeEvent" msprop:Generator_RowClassName="PackCheckRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="CartID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnCartID" msprop:Generator_ColumnPropNameInRow="CartID" msprop:Generator_ColumnPropNameInTable="CartIDColumn" msprop:Generator_UserColumnName="CartID" type="xs:int" minOccurs="0" /> <xs:element name="CartID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnCartID" msprop:Generator_ColumnPropNameInRow="CartID" msprop:Generator_ColumnPropNameInTable="CartIDColumn" msprop:Generator_UserColumnName="CartID" type="xs:int" minOccurs="0" />
@@ -4650,7 +4868,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="OKIB" msprop:Generator_TableClassName="OKIBDataTable" msprop:Generator_TableVarName="tableOKIB" msprop:Generator_TablePropName="OKIB" msprop:Generator_RowDeletingName="OKIBRowDeleting" msprop:Generator_RowChangingName="OKIBRowChanging" msprop:Generator_RowEvHandlerName="OKIBRowChangeEventHandler" msprop:Generator_RowDeletedName="OKIBRowDeleted" msprop:Generator_UserTableName="OKIB" msprop:Generator_RowChangedName="OKIBRowChanged" msprop:Generator_RowEvArgName="OKIBRowChangeEvent" msprop:Generator_RowClassName="OKIBRow"> <xs:element name="OKIB" msprop:Generator_TableClassName="OKIBDataTable" msprop:Generator_TableVarName="tableOKIB" msprop:Generator_RowChangedName="OKIBRowChanged" msprop:Generator_TablePropName="OKIB" msprop:Generator_RowDeletingName="OKIBRowDeleting" msprop:Generator_RowChangingName="OKIBRowChanging" msprop:Generator_RowEvHandlerName="OKIBRowChangeEventHandler" msprop:Generator_RowDeletedName="OKIBRowDeleted" msprop:Generator_RowClassName="OKIBRow" msprop:Generator_UserTableName="OKIB" msprop:Generator_RowEvArgName="OKIBRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="ItemID" msprop:Generator_ColumnVarNameInTable="columnItemID" msprop:Generator_ColumnPropNameInRow="ItemID" msprop:Generator_ColumnPropNameInTable="ItemIDColumn" msprop:Generator_UserColumnName="ItemID" type="xs:int" /> <xs:element name="ItemID" msprop:Generator_ColumnVarNameInTable="columnItemID" msprop:Generator_ColumnPropNameInRow="ItemID" msprop:Generator_ColumnPropNameInTable="ItemIDColumn" msprop:Generator_UserColumnName="ItemID" type="xs:int" />
@@ -4743,7 +4961,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="OKIB_Sum" msprop:Generator_TableClassName="OKIB_SumDataTable" msprop:Generator_TableVarName="tableOKIB_Sum" msprop:Generator_RowChangedName="OKIB_SumRowChanged" msprop:Generator_TablePropName="OKIB_Sum" msprop:Generator_RowDeletingName="OKIB_SumRowDeleting" msprop:Generator_RowChangingName="OKIB_SumRowChanging" msprop:Generator_RowEvHandlerName="OKIB_SumRowChangeEventHandler" msprop:Generator_RowDeletedName="OKIB_SumRowDeleted" msprop:Generator_RowClassName="OKIB_SumRow" msprop:Generator_UserTableName="OKIB_Sum" msprop:Generator_RowEvArgName="OKIB_SumRowChangeEvent"> <xs:element name="OKIB_Sum" msprop:Generator_TableClassName="OKIB_SumDataTable" msprop:Generator_TableVarName="tableOKIB_Sum" msprop:Generator_TablePropName="OKIB_Sum" msprop:Generator_RowDeletingName="OKIB_SumRowDeleting" msprop:Generator_RowChangingName="OKIB_SumRowChanging" msprop:Generator_RowEvHandlerName="OKIB_SumRowChangeEventHandler" msprop:Generator_RowDeletedName="OKIB_SumRowDeleted" msprop:Generator_UserTableName="OKIB_Sum" msprop:Generator_RowChangedName="OKIB_SumRowChanged" msprop:Generator_RowEvArgName="OKIB_SumRowChangeEvent" msprop:Generator_RowClassName="OKIB_SumRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="BinID" msprop:Generator_ColumnVarNameInTable="columnBinID" msprop:Generator_ColumnPropNameInRow="BinID" msprop:Generator_ColumnPropNameInTable="BinIDColumn" msprop:Generator_UserColumnName="BinID" type="xs:int" /> <xs:element name="BinID" msprop:Generator_ColumnVarNameInTable="columnBinID" msprop:Generator_ColumnPropNameInRow="BinID" msprop:Generator_ColumnPropNameInTable="BinIDColumn" msprop:Generator_UserColumnName="BinID" type="xs:int" />
@@ -4806,7 +5024,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="OKOI" msprop:Generator_TableClassName="OKOIDataTable" msprop:Generator_TableVarName="tableOKOI" msprop:Generator_RowChangedName="OKOIRowChanged" msprop:Generator_TablePropName="OKOI" msprop:Generator_RowDeletingName="OKOIRowDeleting" msprop:Generator_RowChangingName="OKOIRowChanging" msprop:Generator_RowEvHandlerName="OKOIRowChangeEventHandler" msprop:Generator_RowDeletedName="OKOIRowDeleted" msprop:Generator_RowClassName="OKOIRow" msprop:Generator_UserTableName="OKOI" msprop:Generator_RowEvArgName="OKOIRowChangeEvent"> <xs:element name="OKOI" msprop:Generator_TableClassName="OKOIDataTable" msprop:Generator_TableVarName="tableOKOI" msprop:Generator_TablePropName="OKOI" msprop:Generator_RowDeletingName="OKOIRowDeleting" msprop:Generator_RowChangingName="OKOIRowChanging" msprop:Generator_RowEvHandlerName="OKOIRowChangeEventHandler" msprop:Generator_RowDeletedName="OKOIRowDeleted" msprop:Generator_UserTableName="OKOI" msprop:Generator_RowChangedName="OKOIRowChanged" msprop:Generator_RowEvArgName="OKOIRowChangeEvent" msprop:Generator_RowClassName="OKOIRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="OtherItemID" msprop:Generator_ColumnVarNameInTable="columnOtherItemID" msprop:Generator_ColumnPropNameInRow="OtherItemID" msprop:Generator_ColumnPropNameInTable="OtherItemIDColumn" msprop:Generator_UserColumnName="OtherItemID" type="xs:int" /> <xs:element name="OtherItemID" msprop:Generator_ColumnVarNameInTable="columnOtherItemID" msprop:Generator_ColumnPropNameInRow="OtherItemID" msprop:Generator_ColumnPropNameInTable="OtherItemIDColumn" msprop:Generator_UserColumnName="OtherItemID" type="xs:int" />
@@ -4865,7 +5083,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="OKOI_sum" msprop:Generator_TableClassName="OKOI_sumDataTable" msprop:Generator_TableVarName="tableOKOI_sum" msprop:Generator_RowChangedName="OKOI_sumRowChanged" msprop:Generator_TablePropName="OKOI_sum" msprop:Generator_RowDeletingName="OKOI_sumRowDeleting" msprop:Generator_RowChangingName="OKOI_sumRowChanging" msprop:Generator_RowEvHandlerName="OKOI_sumRowChangeEventHandler" msprop:Generator_RowDeletedName="OKOI_sumRowDeleted" msprop:Generator_RowClassName="OKOI_sumRow" msprop:Generator_UserTableName="OKOI_sum" msprop:Generator_RowEvArgName="OKOI_sumRowChangeEvent"> <xs:element name="OKOI_sum" msprop:Generator_TableClassName="OKOI_sumDataTable" msprop:Generator_TableVarName="tableOKOI_sum" msprop:Generator_TablePropName="OKOI_sum" msprop:Generator_RowDeletingName="OKOI_sumRowDeleting" msprop:Generator_RowChangingName="OKOI_sumRowChanging" msprop:Generator_RowEvHandlerName="OKOI_sumRowChangeEventHandler" msprop:Generator_RowDeletedName="OKOI_sumRowDeleted" msprop:Generator_UserTableName="OKOI_sum" msprop:Generator_RowChangedName="OKOI_sumRowChanged" msprop:Generator_RowEvArgName="OKOI_sumRowChangeEvent" msprop:Generator_RowClassName="OKOI_sumRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="OtherItemID" msprop:Generator_ColumnVarNameInTable="columnOtherItemID" msprop:Generator_ColumnPropNameInRow="OtherItemID" msprop:Generator_ColumnPropNameInTable="OtherItemIDColumn" msprop:Generator_UserColumnName="OtherItemID" type="xs:int" /> <xs:element name="OtherItemID" msprop:Generator_ColumnVarNameInTable="columnOtherItemID" msprop:Generator_ColumnPropNameInRow="OtherItemID" msprop:Generator_ColumnPropNameInTable="OtherItemIDColumn" msprop:Generator_UserColumnName="OtherItemID" type="xs:int" />
@@ -4914,7 +5132,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="Pack2Cart" msprop:Generator_TableClassName="Pack2CartDataTable" msprop:Generator_TableVarName="tablePack2Cart" msprop:Generator_TablePropName="Pack2Cart" msprop:Generator_RowDeletingName="Pack2CartRowDeleting" msprop:Generator_RowChangingName="Pack2CartRowChanging" msprop:Generator_RowEvHandlerName="Pack2CartRowChangeEventHandler" msprop:Generator_RowDeletedName="Pack2CartRowDeleted" msprop:Generator_UserTableName="Pack2Cart" msprop:Generator_RowChangedName="Pack2CartRowChanged" msprop:Generator_RowEvArgName="Pack2CartRowChangeEvent" msprop:Generator_RowClassName="Pack2CartRow"> <xs:element name="Pack2Cart" msprop:Generator_TableClassName="Pack2CartDataTable" msprop:Generator_TableVarName="tablePack2Cart" msprop:Generator_RowChangedName="Pack2CartRowChanged" msprop:Generator_TablePropName="Pack2Cart" msprop:Generator_RowDeletingName="Pack2CartRowDeleting" msprop:Generator_RowChangingName="Pack2CartRowChanging" msprop:Generator_RowEvHandlerName="Pack2CartRowChangeEventHandler" msprop:Generator_RowDeletedName="Pack2CartRowDeleted" msprop:Generator_RowClassName="Pack2CartRow" msprop:Generator_UserTableName="Pack2Cart" msprop:Generator_RowEvArgName="Pack2CartRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="PackListID" msprop:Generator_ColumnVarNameInTable="columnPackListID" msprop:Generator_ColumnPropNameInRow="PackListID" msprop:Generator_ColumnPropNameInTable="PackListIDColumn" msprop:Generator_UserColumnName="PackListID" type="xs:int" /> <xs:element name="PackListID" msprop:Generator_ColumnVarNameInTable="columnPackListID" msprop:Generator_ColumnPropNameInRow="PackListID" msprop:Generator_ColumnPropNameInTable="PackListIDColumn" msprop:Generator_UserColumnName="PackListID" type="xs:int" />
@@ -4953,7 +5171,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="CartIRK" msprop:Generator_TableClassName="CartIRKDataTable" msprop:Generator_TableVarName="tableCartIRK" msprop:Generator_RowChangedName="CartIRKRowChanged" msprop:Generator_TablePropName="CartIRK" msprop:Generator_RowDeletingName="CartIRKRowDeleting" msprop:Generator_RowChangingName="CartIRKRowChanging" msprop:Generator_RowEvHandlerName="CartIRKRowChangeEventHandler" msprop:Generator_RowDeletedName="CartIRKRowDeleted" msprop:Generator_RowClassName="CartIRKRow" msprop:Generator_UserTableName="CartIRK" msprop:Generator_RowEvArgName="CartIRKRowChangeEvent"> <xs:element name="CartIRK" msprop:Generator_TableClassName="CartIRKDataTable" msprop:Generator_TableVarName="tableCartIRK" msprop:Generator_TablePropName="CartIRK" msprop:Generator_RowDeletingName="CartIRKRowDeleting" msprop:Generator_RowChangingName="CartIRKRowChanging" msprop:Generator_RowEvHandlerName="CartIRKRowChangeEventHandler" msprop:Generator_RowDeletedName="CartIRKRowDeleted" msprop:Generator_UserTableName="CartIRK" msprop:Generator_RowChangedName="CartIRKRowChanged" msprop:Generator_RowEvArgName="CartIRKRowChangeEvent" msprop:Generator_RowClassName="CartIRKRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="OrderExtCode" msprop:Generator_ColumnVarNameInTable="columnOrderExtCode" msprop:Generator_ColumnPropNameInRow="OrderExtCode" msprop:Generator_ColumnPropNameInTable="OrderExtCodeColumn" msprop:Generator_UserColumnName="OrderExtCode" minOccurs="0"> <xs:element name="OrderExtCode" msprop:Generator_ColumnVarNameInTable="columnOrderExtCode" msprop:Generator_ColumnPropNameInRow="OrderExtCode" msprop:Generator_ColumnPropNameInTable="OrderExtCodeColumn" msprop:Generator_UserColumnName="OrderExtCode" minOccurs="0">
@@ -5006,7 +5224,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="FileValidation" msprop:Generator_TableClassName="FileValidationDataTable" msprop:Generator_TableVarName="tableFileValidation" msprop:Generator_RowChangedName="FileValidationRowChanged" msprop:Generator_TablePropName="FileValidation" msprop:Generator_RowDeletingName="FileValidationRowDeleting" msprop:Generator_RowChangingName="FileValidationRowChanging" msprop:Generator_RowEvHandlerName="FileValidationRowChangeEventHandler" msprop:Generator_RowDeletedName="FileValidationRowDeleted" msprop:Generator_RowClassName="FileValidationRow" msprop:Generator_UserTableName="FileValidation" msprop:Generator_RowEvArgName="FileValidationRowChangeEvent"> <xs:element name="FileValidation" msprop:Generator_TableClassName="FileValidationDataTable" msprop:Generator_TableVarName="tableFileValidation" msprop:Generator_TablePropName="FileValidation" msprop:Generator_RowDeletingName="FileValidationRowDeleting" msprop:Generator_RowChangingName="FileValidationRowChanging" msprop:Generator_RowEvHandlerName="FileValidationRowChangeEventHandler" msprop:Generator_RowDeletedName="FileValidationRowDeleted" msprop:Generator_UserTableName="FileValidation" msprop:Generator_RowChangedName="FileValidationRowChanged" msprop:Generator_RowEvArgName="FileValidationRowChangeEvent" msprop:Generator_RowClassName="FileValidationRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="ItemExtCode" msprop:Generator_ColumnVarNameInTable="columnItemExtCode" msprop:Generator_ColumnPropNameInRow="ItemExtCode" msprop:Generator_ColumnPropNameInTable="ItemExtCodeColumn" msprop:Generator_UserColumnName="ItemExtCode"> <xs:element name="ItemExtCode" msprop:Generator_ColumnVarNameInTable="columnItemExtCode" msprop:Generator_ColumnPropNameInRow="ItemExtCode" msprop:Generator_ColumnPropNameInTable="ItemExtCodeColumn" msprop:Generator_UserColumnName="ItemExtCode">
@@ -5023,7 +5241,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="SheetsPreview" msprop:Generator_TableClassName="SheetsPreviewDataTable" msprop:Generator_TableVarName="tableSheetsPreview" msprop:Generator_TablePropName="SheetsPreview" msprop:Generator_RowDeletingName="SheetsPreviewRowDeleting" msprop:Generator_RowChangingName="SheetsPreviewRowChanging" msprop:Generator_RowEvHandlerName="SheetsPreviewRowChangeEventHandler" msprop:Generator_RowDeletedName="SheetsPreviewRowDeleted" msprop:Generator_UserTableName="SheetsPreview" msprop:Generator_RowChangedName="SheetsPreviewRowChanged" msprop:Generator_RowEvArgName="SheetsPreviewRowChangeEvent" msprop:Generator_RowClassName="SheetsPreviewRow"> <xs:element name="SheetsPreview" msprop:Generator_TableClassName="SheetsPreviewDataTable" msprop:Generator_TableVarName="tableSheetsPreview" msprop:Generator_RowChangedName="SheetsPreviewRowChanged" msprop:Generator_TablePropName="SheetsPreview" msprop:Generator_RowDeletingName="SheetsPreviewRowDeleting" msprop:Generator_RowChangingName="SheetsPreviewRowChanging" msprop:Generator_RowEvHandlerName="SheetsPreviewRowChangeEventHandler" msprop:Generator_RowDeletedName="SheetsPreviewRowDeleted" msprop:Generator_RowClassName="SheetsPreviewRow" msprop:Generator_UserTableName="SheetsPreview" msprop:Generator_RowEvArgName="SheetsPreviewRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="SheetID" msprop:Generator_ColumnVarNameInTable="columnSheetID" msprop:Generator_ColumnPropNameInRow="SheetID" msprop:Generator_ColumnPropNameInTable="SheetIDColumn" msprop:Generator_UserColumnName="SheetID" type="xs:int" /> <xs:element name="SheetID" msprop:Generator_ColumnVarNameInTable="columnSheetID" msprop:Generator_ColumnPropNameInRow="SheetID" msprop:Generator_ColumnPropNameInTable="SheetIDColumn" msprop:Generator_UserColumnName="SheetID" type="xs:int" />
@@ -5036,7 +5254,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="OrderListTree" msprop:Generator_TableClassName="OrderListTreeDataTable" msprop:Generator_TableVarName="tableOrderListTree" msprop:Generator_TablePropName="OrderListTree" msprop:Generator_RowDeletingName="OrderListTreeRowDeleting" msprop:Generator_RowChangingName="OrderListTreeRowChanging" msprop:Generator_RowEvHandlerName="OrderListTreeRowChangeEventHandler" msprop:Generator_RowDeletedName="OrderListTreeRowDeleted" msprop:Generator_UserTableName="OrderListTree" msprop:Generator_RowChangedName="OrderListTreeRowChanged" msprop:Generator_RowEvArgName="OrderListTreeRowChangeEvent" msprop:Generator_RowClassName="OrderListTreeRow"> <xs:element name="OrderListTree" msprop:Generator_TableClassName="OrderListTreeDataTable" msprop:Generator_TableVarName="tableOrderListTree" msprop:Generator_RowChangedName="OrderListTreeRowChanged" msprop:Generator_TablePropName="OrderListTree" msprop:Generator_RowDeletingName="OrderListTreeRowDeleting" msprop:Generator_RowChangingName="OrderListTreeRowChanging" msprop:Generator_RowEvHandlerName="OrderListTreeRowChangeEventHandler" msprop:Generator_RowDeletedName="OrderListTreeRowDeleted" msprop:Generator_RowClassName="OrderListTreeRow" msprop:Generator_UserTableName="OrderListTree" msprop:Generator_RowEvArgName="OrderListTreeRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <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="BatchID" msprop:Generator_ColumnVarNameInTable="columnBatchID" msprop:Generator_ColumnPropNameInRow="BatchID" msprop:Generator_ColumnPropNameInTable="BatchIDColumn" msprop:Generator_UserColumnName="BatchID" type="xs:int" />
@@ -5058,7 +5276,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="Places" msprop:Generator_TableClassName="PlacesDataTable" msprop:Generator_TableVarName="tablePlaces" msprop:Generator_TablePropName="Places" msprop:Generator_RowDeletingName="PlacesRowDeleting" msprop:Generator_RowChangingName="PlacesRowChanging" msprop:Generator_RowEvHandlerName="PlacesRowChangeEventHandler" msprop:Generator_RowDeletedName="PlacesRowDeleted" msprop:Generator_UserTableName="Places" msprop:Generator_RowChangedName="PlacesRowChanged" msprop:Generator_RowEvArgName="PlacesRowChangeEvent" msprop:Generator_RowClassName="PlacesRow"> <xs:element name="Places" msprop:Generator_TableClassName="PlacesDataTable" msprop:Generator_TableVarName="tablePlaces" msprop:Generator_RowChangedName="PlacesRowChanged" msprop:Generator_TablePropName="Places" msprop:Generator_RowDeletingName="PlacesRowDeleting" msprop:Generator_RowChangingName="PlacesRowChanging" msprop:Generator_RowEvHandlerName="PlacesRowChangeEventHandler" msprop:Generator_RowDeletedName="PlacesRowDeleted" msprop:Generator_RowClassName="PlacesRow" msprop:Generator_UserTableName="Places" msprop:Generator_RowEvArgName="PlacesRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="PlaceCod" msprop:Generator_ColumnVarNameInTable="columnPlaceCod" msprop:Generator_ColumnPropNameInRow="PlaceCod" msprop:Generator_ColumnPropNameInTable="PlaceCodColumn" msprop:Generator_UserColumnName="PlaceCod"> <xs:element name="PlaceCod" msprop:Generator_ColumnVarNameInTable="columnPlaceCod" msprop:Generator_ColumnPropNameInRow="PlaceCod" msprop:Generator_ColumnPropNameInTable="PlaceCodColumn" msprop:Generator_UserColumnName="PlaceCod">
@@ -5086,7 +5304,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="StatusLog" msprop:Generator_TableClassName="StatusLogDataTable" msprop:Generator_TableVarName="tableStatusLog" msprop:Generator_TablePropName="StatusLog" msprop:Generator_RowDeletingName="StatusLogRowDeleting" msprop:Generator_RowChangingName="StatusLogRowChanging" msprop:Generator_RowEvHandlerName="StatusLogRowChangeEventHandler" msprop:Generator_RowDeletedName="StatusLogRowDeleted" msprop:Generator_UserTableName="StatusLog" msprop:Generator_RowChangedName="StatusLogRowChanged" msprop:Generator_RowEvArgName="StatusLogRowChangeEvent" msprop:Generator_RowClassName="StatusLogRow"> <xs:element name="StatusLog" msprop:Generator_TableClassName="StatusLogDataTable" msprop:Generator_TableVarName="tableStatusLog" msprop:Generator_RowChangedName="StatusLogRowChanged" msprop:Generator_TablePropName="StatusLog" msprop:Generator_RowDeletingName="StatusLogRowDeleting" msprop:Generator_RowChangingName="StatusLogRowChanging" msprop:Generator_RowEvHandlerName="StatusLogRowChangeEventHandler" msprop:Generator_RowDeletedName="StatusLogRowDeleted" msprop:Generator_RowClassName="StatusLogRow" msprop:Generator_UserTableName="StatusLog" msprop:Generator_RowEvArgName="StatusLogRowChangeEvent">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="PlaceCod" msprop:Generator_ColumnVarNameInTable="columnPlaceCod" msprop:Generator_ColumnPropNameInRow="PlaceCod" msprop:Generator_ColumnPropNameInTable="PlaceCodColumn" msprop:Generator_UserColumnName="PlaceCod"> <xs:element name="PlaceCod" msprop:Generator_ColumnVarNameInTable="columnPlaceCod" msprop:Generator_ColumnPropNameInRow="PlaceCod" msprop:Generator_ColumnPropNameInTable="PlaceCodColumn" msprop:Generator_UserColumnName="PlaceCod">
@@ -5123,7 +5341,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="StatusDecode" msprop:Generator_TableClassName="StatusDecodeDataTable" msprop:Generator_TableVarName="tableStatusDecode" msprop:Generator_RowChangedName="StatusDecodeRowChanged" msprop:Generator_TablePropName="StatusDecode" msprop:Generator_RowDeletingName="StatusDecodeRowDeleting" msprop:Generator_RowChangingName="StatusDecodeRowChanging" msprop:Generator_RowEvHandlerName="StatusDecodeRowChangeEventHandler" msprop:Generator_RowDeletedName="StatusDecodeRowDeleted" msprop:Generator_RowClassName="StatusDecodeRow" msprop:Generator_UserTableName="StatusDecode" msprop:Generator_RowEvArgName="StatusDecodeRowChangeEvent"> <xs:element name="StatusDecode" msprop:Generator_TableClassName="StatusDecodeDataTable" msprop:Generator_TableVarName="tableStatusDecode" msprop:Generator_TablePropName="StatusDecode" msprop:Generator_RowDeletingName="StatusDecodeRowDeleting" msprop:Generator_RowChangingName="StatusDecodeRowChanging" msprop:Generator_RowEvHandlerName="StatusDecodeRowChangeEventHandler" msprop:Generator_RowDeletedName="StatusDecodeRowDeleted" msprop:Generator_UserTableName="StatusDecode" msprop:Generator_RowChangedName="StatusDecodeRowChanged" msprop:Generator_RowEvArgName="StatusDecodeRowChangeEvent" msprop:Generator_RowClassName="StatusDecodeRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="Station" msprop:Generator_ColumnVarNameInTable="columnStation" msprop:Generator_ColumnPropNameInRow="Station" msprop:Generator_ColumnPropNameInTable="StationColumn" msprop:Generator_UserColumnName="Station"> <xs:element name="Station" msprop:Generator_ColumnVarNameInTable="columnStation" msprop:Generator_ColumnPropNameInRow="Station" msprop:Generator_ColumnPropNameInTable="StationColumn" msprop:Generator_UserColumnName="Station">
@@ -5157,7 +5375,7 @@ SELECT AppName, ManifestUrl, IsAuth, LocalRepo, PackName, LicenseKey FROM Update
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="UpdMan" msprop:Generator_TableClassName="UpdManDataTable" msprop:Generator_TableVarName="tableUpdMan" msprop:Generator_RowChangedName="UpdManRowChanged" msprop:Generator_TablePropName="UpdMan" msprop:Generator_RowDeletingName="UpdManRowDeleting" msprop:Generator_RowChangingName="UpdManRowChanging" msprop:Generator_RowEvHandlerName="UpdManRowChangeEventHandler" msprop:Generator_RowDeletedName="UpdManRowDeleted" msprop:Generator_RowClassName="UpdManRow" msprop:Generator_UserTableName="UpdMan" msprop:Generator_RowEvArgName="UpdManRowChangeEvent"> <xs:element name="UpdMan" msprop:Generator_TableClassName="UpdManDataTable" msprop:Generator_TableVarName="tableUpdMan" msprop:Generator_TablePropName="UpdMan" msprop:Generator_RowDeletingName="UpdManRowDeleting" msprop:Generator_RowChangingName="UpdManRowChanging" msprop:Generator_RowEvHandlerName="UpdManRowChangeEventHandler" msprop:Generator_RowDeletedName="UpdManRowDeleted" msprop:Generator_UserTableName="UpdMan" msprop:Generator_RowChangedName="UpdManRowChanged" msprop:Generator_RowEvArgName="UpdManRowChangeEvent" msprop:Generator_RowClassName="UpdManRow">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="AppName" msprop:Generator_ColumnVarNameInTable="columnAppName" msprop:Generator_ColumnPropNameInRow="AppName" msprop:Generator_ColumnPropNameInTable="AppNameColumn" msprop:Generator_UserColumnName="AppName"> <xs:element name="AppName" msprop:Generator_ColumnVarNameInTable="columnAppName" msprop:Generator_ColumnPropNameInRow="AppName" msprop:Generator_ColumnPropNameInTable="AppNameColumn" msprop:Generator_UserColumnName="AppName">
@@ -5199,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">
@@ -5366,21 +5619,30 @@ 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>
<msdata:Relationship name="FK_ItemList_Materials1" msdata:parent="Materials" msdata:child="ItemList" msdata:parentkey="MatID" msdata:childkey="MatID" msprop:Generator_UserChildTable="ItemList" msprop:Generator_ChildPropName="GetItemListRows" msprop:Generator_UserRelationName="FK_ItemList_Materials1" msprop:Generator_RelationVarName="relationFK_ItemList_Materials1" msprop:Generator_UserParentTable="Materials" msprop:Generator_ParentPropName="MaterialsRow" /> <msdata:Relationship name="FK_ItemList_Materials1" msdata:parent="Materials" msdata:child="ItemList" msdata:parentkey="MatID" msdata:childkey="MatID" msprop:Generator_UserChildTable="ItemList" msprop:Generator_ChildPropName="GetItemListRows" msprop:Generator_UserRelationName="FK_ItemList_Materials1" msprop:Generator_ParentPropName="MaterialsRow" msprop:Generator_RelationVarName="relationFK_ItemList_Materials1" msprop:Generator_UserParentTable="Materials" />
<msdata:Relationship name="FK_OffOrd2Item_OfflineOrderList" msdata:parent="OfflineOrderList" msdata:child="OffOrd2Item" msdata:parentkey="OrdID" msdata:childkey="OrdID" msprop:Generator_UserChildTable="OffOrd2Item" msprop:Generator_ChildPropName="GetOffOrd2ItemRows" msprop:Generator_UserRelationName="FK_OffOrd2Item_OfflineOrderList" msprop:Generator_RelationVarName="relationFK_OffOrd2Item_OfflineOrderList" msprop:Generator_UserParentTable="OfflineOrderList" msprop:Generator_ParentPropName="OfflineOrderListRow" /> <msdata:Relationship name="FK_OffOrd2Item_OfflineOrderList" msdata:parent="OfflineOrderList" msdata:child="OffOrd2Item" msdata:parentkey="OrdID" msdata:childkey="OrdID" msprop:Generator_UserChildTable="OffOrd2Item" msprop:Generator_ChildPropName="GetOffOrd2ItemRows" msprop:Generator_UserRelationName="FK_OffOrd2Item_OfflineOrderList" msprop:Generator_ParentPropName="OfflineOrderListRow" msprop:Generator_RelationVarName="relationFK_OffOrd2Item_OfflineOrderList" msprop:Generator_UserParentTable="OfflineOrderList" />
<msdata:Relationship name="FK_ItemList_KitList" msdata:parent="KitList" msdata:child="ItemList" msdata:parentkey="KitID" msdata:childkey="KitID" msprop:Generator_UserChildTable="ItemList" msprop:Generator_ChildPropName="GetItemListRows" msprop:Generator_UserRelationName="FK_ItemList_KitList" msprop:Generator_RelationVarName="relationFK_ItemList_KitList" msprop:Generator_UserParentTable="KitList" msprop:Generator_ParentPropName="KitListRow" /> <msdata:Relationship name="FK_ItemList_KitList" msdata:parent="KitList" msdata:child="ItemList" msdata:parentkey="KitID" msdata:childkey="KitID" msprop:Generator_UserChildTable="ItemList" msprop:Generator_ChildPropName="GetItemListRows" msprop:Generator_UserRelationName="FK_ItemList_KitList" msprop:Generator_ParentPropName="KitListRow" msprop:Generator_RelationVarName="relationFK_ItemList_KitList" msprop:Generator_UserParentTable="KitList" />
<msdata:Relationship name="FK_Nesting_ItemList" msdata:parent="ItemList" msdata:child="Nesting" msdata:parentkey="ItemID" msdata:childkey="ItemID" msprop:Generator_UserChildTable="Nesting" msprop:Generator_ChildPropName="GetNestingRows" msprop:Generator_UserRelationName="FK_Nesting_ItemList" msprop:Generator_RelationVarName="relationFK_Nesting_ItemList" msprop:Generator_UserParentTable="ItemList" msprop:Generator_ParentPropName="ItemListRow" /> <msdata:Relationship name="FK_Nesting_ItemList" msdata:parent="ItemList" msdata:child="Nesting" msdata:parentkey="ItemID" msdata:childkey="ItemID" msprop:Generator_UserChildTable="Nesting" msprop:Generator_ChildPropName="GetNestingRows" msprop:Generator_UserRelationName="FK_Nesting_ItemList" msprop:Generator_ParentPropName="ItemListRow" msprop:Generator_RelationVarName="relationFK_Nesting_ItemList" msprop:Generator_UserParentTable="ItemList" />
<msdata:Relationship name="FK_KitList_Carts" msdata:parent="Carts" msdata:child="KitList" msdata:parentkey="CartID" msdata:childkey="CartID" msprop:Generator_UserChildTable="KitList" msprop:Generator_ChildPropName="GetKitListRows" msprop:Generator_UserRelationName="FK_KitList_Carts" msprop:Generator_RelationVarName="relationFK_KitList_Carts" msprop:Generator_UserParentTable="Carts" msprop:Generator_ParentPropName="CartsRow" /> <msdata:Relationship name="FK_KitList_Carts" msdata:parent="Carts" msdata:child="KitList" msdata:parentkey="CartID" msdata:childkey="CartID" msprop:Generator_UserChildTable="KitList" msprop:Generator_ChildPropName="GetKitListRows" msprop:Generator_UserRelationName="FK_KitList_Carts" msprop:Generator_ParentPropName="CartsRow" msprop:Generator_RelationVarName="relationFK_KitList_Carts" msprop:Generator_UserParentTable="Carts" />
<msdata:Relationship name="FK_KitList_OrderList" msdata:parent="OrderList" msdata:child="KitList" msdata:parentkey="OrdID" msdata:childkey="OrdID" msprop:Generator_UserChildTable="KitList" msprop:Generator_ChildPropName="GetKitListRows" msprop:Generator_UserRelationName="FK_KitList_OrderList" msprop:Generator_RelationVarName="relationFK_KitList_OrderList" msprop:Generator_UserParentTable="OrderList" msprop:Generator_ParentPropName="OrderListRow" /> <msdata:Relationship name="FK_KitList_OrderList" msdata:parent="OrderList" msdata:child="KitList" msdata:parentkey="OrdID" msdata:childkey="OrdID" msprop:Generator_UserChildTable="KitList" msprop:Generator_ChildPropName="GetKitListRows" msprop:Generator_UserRelationName="FK_KitList_OrderList" msprop:Generator_ParentPropName="OrderListRow" msprop:Generator_RelationVarName="relationFK_KitList_OrderList" msprop:Generator_UserParentTable="OrderList" />
<msdata:Relationship name="FK_OffOrd2Item_ItemList" msdata:parent="ItemList" msdata:child="OffOrd2Item" msdata:parentkey="ItemID" msdata:childkey="ItemID" msprop:Generator_UserChildTable="OffOrd2Item" msprop:Generator_ChildPropName="GetOffOrd2ItemRows" msprop:Generator_UserRelationName="FK_OffOrd2Item_ItemList" msprop:Generator_RelationVarName="relationFK_OffOrd2Item_ItemList" msprop:Generator_UserParentTable="ItemList" msprop:Generator_ParentPropName="ItemListRow" /> <msdata:Relationship name="FK_OffOrd2Item_ItemList" msdata:parent="ItemList" msdata:child="OffOrd2Item" msdata:parentkey="ItemID" msdata:childkey="ItemID" msprop:Generator_UserChildTable="OffOrd2Item" msprop:Generator_ChildPropName="GetOffOrd2ItemRows" msprop:Generator_UserRelationName="FK_OffOrd2Item_ItemList" msprop:Generator_ParentPropName="ItemListRow" msprop:Generator_RelationVarName="relationFK_OffOrd2Item_ItemList" msprop:Generator_UserParentTable="ItemList" />
<msdata:Relationship name="FK_BinList_Bins" msdata:parent="Bins" msdata:child="BinList" msdata:parentkey="BinID" msdata:childkey="BinID" msprop:Generator_UserChildTable="BinList" msprop:Generator_ChildPropName="GetBinListRows" msprop:Generator_UserRelationName="FK_BinList_Bins" msprop:Generator_RelationVarName="relationFK_BinList_Bins" msprop:Generator_UserParentTable="Bins" msprop:Generator_ParentPropName="BinsRow" /> <msdata:Relationship name="FK_BinList_Bins" msdata:parent="Bins" msdata:child="BinList" msdata:parentkey="BinID" msdata:childkey="BinID" msprop:Generator_UserChildTable="BinList" msprop:Generator_ChildPropName="GetBinListRows" msprop:Generator_UserRelationName="FK_BinList_Bins" msprop:Generator_ParentPropName="BinsRow" msprop:Generator_RelationVarName="relationFK_BinList_Bins" msprop:Generator_UserParentTable="Bins" />
<msdata:Relationship name="FK_BinList_ItemList" msdata:parent="ItemList" msdata:child="BinList" msdata:parentkey="ItemID" msdata:childkey="ItemID" msprop:Generator_UserChildTable="BinList" msprop:Generator_ChildPropName="GetBinListRows" msprop:Generator_UserRelationName="FK_BinList_ItemList" msprop:Generator_RelationVarName="relationFK_BinList_ItemList" msprop:Generator_UserParentTable="ItemList" msprop:Generator_ParentPropName="ItemListRow" /> <msdata:Relationship name="FK_BinList_ItemList" msdata:parent="ItemList" msdata:child="BinList" msdata:parentkey="ItemID" msdata:childkey="ItemID" msprop:Generator_UserChildTable="BinList" msprop:Generator_ChildPropName="GetBinListRows" msprop:Generator_UserRelationName="FK_BinList_ItemList" msprop:Generator_ParentPropName="ItemListRow" msprop:Generator_RelationVarName="relationFK_BinList_ItemList" msprop:Generator_UserParentTable="ItemList" />
<msdata:Relationship name="FK_Order2FinalKit_FinalKit" msdata:parent="FinalKit" msdata:child="Order2FinalKit" msdata:parentkey="FinalKitID" msdata:childkey="FinalKitID" msprop:Generator_UserChildTable="Order2FinalKit" msprop:Generator_ChildPropName="GetOrder2FinalKitRows" msprop:Generator_UserRelationName="FK_Order2FinalKit_FinalKit" msprop:Generator_ParentPropName="FinalKitRow" msprop:Generator_RelationVarName="relationFK_Order2FinalKit_FinalKit" msprop:Generator_UserParentTable="FinalKit" /> <msdata:Relationship name="FK_Order2FinalKit_FinalKit" msdata:parent="FinalKit" msdata:child="Order2FinalKit" msdata:parentkey="FinalKitID" msdata:childkey="FinalKitID" msprop:Generator_UserChildTable="Order2FinalKit" msprop:Generator_ChildPropName="GetOrder2FinalKitRows" msprop:Generator_UserRelationName="FK_Order2FinalKit_FinalKit" msprop:Generator_RelationVarName="relationFK_Order2FinalKit_FinalKit" msprop:Generator_UserParentTable="FinalKit" msprop:Generator_ParentPropName="FinalKitRow" />
<msdata:Relationship name="FK_Order2FinalKit_OrderList" msdata:parent="OrderList" msdata:child="Order2FinalKit" msdata:parentkey="OrdID" msdata:childkey="OrdID" msprop:Generator_UserChildTable="Order2FinalKit" msprop:Generator_ChildPropName="GetOrder2FinalKitRows" msprop:Generator_UserRelationName="FK_Order2FinalKit_OrderList" msprop:Generator_ParentPropName="OrderListRow" msprop:Generator_RelationVarName="relationFK_Order2FinalKit_OrderList" msprop:Generator_UserParentTable="OrderList" /> <msdata:Relationship name="FK_Order2FinalKit_OrderList" msdata:parent="OrderList" msdata:child="Order2FinalKit" msdata:parentkey="OrdID" msdata:childkey="OrdID" msprop:Generator_UserChildTable="Order2FinalKit" msprop:Generator_ChildPropName="GetOrder2FinalKitRows" msprop:Generator_UserRelationName="FK_Order2FinalKit_OrderList" msprop:Generator_RelationVarName="relationFK_Order2FinalKit_OrderList" msprop:Generator_UserParentTable="OrderList" msprop:Generator_ParentPropName="OrderListRow" />
<msdata:Relationship name="FK_StatusLog_Places" msdata:parent="Places" msdata:child="StatusLog" msdata:parentkey="PlaceCod" msdata:childkey="PlaceCod" msprop:Generator_UserChildTable="StatusLog" msprop:Generator_ChildPropName="GetStatusLogRows" msprop:Generator_UserRelationName="FK_StatusLog_Places" msprop:Generator_ParentPropName="PlacesRow" msprop:Generator_RelationVarName="relationFK_StatusLog_Places" msprop:Generator_UserParentTable="Places" /> <msdata:Relationship name="FK_StatusLog_Places" msdata:parent="Places" msdata:child="StatusLog" msdata:parentkey="PlaceCod" msdata:childkey="PlaceCod" msprop:Generator_UserChildTable="StatusLog" msprop:Generator_ChildPropName="GetStatusLogRows" msprop:Generator_UserRelationName="FK_StatusLog_Places" msprop:Generator_RelationVarName="relationFK_StatusLog_Places" msprop:Generator_UserParentTable="Places" msprop:Generator_ParentPropName="PlacesRow" />
</xs:appinfo> </xs:appinfo>
</xs:annotation> </xs:annotation>
</xs:schema> </xs:schema>
+57 -54
View File
@@ -4,52 +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="1" X="325" Y="437" Height="381" Width="261" 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="2" X="576" Y="958" 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="42" X="246" Y="908" 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="12" 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="41" 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="40" 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="10" 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="39" 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="38" 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="37" 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="11" 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="36" 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="35" 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="34" 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="33" 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="32" 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="31" 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="30" 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="29" 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="28" 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="27" 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="26" 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="25" 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="24" 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="23" 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="22" 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="21" 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="20" 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="19" 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="18" 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="17" 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="16" 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="15" 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="5" 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="14" 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="9" 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="13" 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="8" 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="3" 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="6" 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="4" 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="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="53" LineWidth="11"> <Connector ID="DesignRelation:FK_ItemList_Materials1" ZOrder="56" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>1189</X> <X>1189</X>
@@ -61,7 +64,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_OffOrd2Item_OfflineOrderList" ZOrder="52" LineWidth="11"> <Connector ID="DesignRelation:FK_OffOrd2Item_OfflineOrderList" ZOrder="55" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>1028</X> <X>1028</X>
@@ -73,7 +76,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_ItemList_KitList" ZOrder="51" LineWidth="11"> <Connector ID="DesignRelation:FK_ItemList_KitList" ZOrder="54" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>828</X> <X>828</X>
@@ -85,7 +88,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_Nesting_ItemList" ZOrder="50" LineWidth="11"> <Connector ID="DesignRelation:FK_Nesting_ItemList" ZOrder="53" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>1116</X> <X>1116</X>
@@ -101,7 +104,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_KitList_Carts" ZOrder="48" LineWidth="11"> <Connector ID="DesignRelation:FK_KitList_Carts" ZOrder="51" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>721</X> <X>721</X>
@@ -113,7 +116,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_KitList_OrderList" ZOrder="49" LineWidth="11"> <Connector ID="DesignRelation:FK_KitList_OrderList" ZOrder="52" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>482</X> <X>482</X>
@@ -125,7 +128,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_OffOrd2Item_ItemList" ZOrder="45" LineWidth="11"> <Connector ID="DesignRelation:FK_OffOrd2Item_ItemList" ZOrder="48" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>1113</X> <X>1113</X>
@@ -137,7 +140,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_BinList_Bins" ZOrder="47" LineWidth="11"> <Connector ID="DesignRelation:FK_BinList_Bins" ZOrder="50" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>1364</X> <X>1364</X>
@@ -149,7 +152,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_BinList_ItemList" ZOrder="46" LineWidth="11"> <Connector ID="DesignRelation:FK_BinList_ItemList" ZOrder="49" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>1153</X> <X>1153</X>
@@ -161,7 +164,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_Order2FinalKit_FinalKit" ZOrder="44" LineWidth="11"> <Connector ID="DesignRelation:FK_Order2FinalKit_FinalKit" ZOrder="47" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>115</X> <X>115</X>
@@ -173,7 +176,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_Order2FinalKit_OrderList" ZOrder="43" LineWidth="11"> <Connector ID="DesignRelation:FK_Order2FinalKit_OrderList" ZOrder="46" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>284</X> <X>284</X>
@@ -185,7 +188,7 @@
</Point> </Point>
</RoutePoints> </RoutePoints>
</Connector> </Connector>
<Connector ID="DesignRelation:FK_StatusLog_Places" ZOrder="7" LineWidth="11"> <Connector ID="DesignRelation:FK_StatusLog_Places" ZOrder="11" LineWidth="11">
<RoutePoints> <RoutePoints>
<Point> <Point>
<X>1042</X> <X>1042</X>
+11 -5
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.UnloadStatsTableAdapter taUS;
public DS_AppTableAdapters.UpdManTableAdapter taUpdMan; public DS_AppTableAdapters.UpdManTableAdapter taUpdMan;
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,16 +207,18 @@ 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()
{ {
string connString = memLayer.ML.CRS("NKC_WFConnectionString"); string connString = memLayer.ML.confReadString("NKC_WFConnectionString");
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.3.2.0" newVersion="1.3.2.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>
+9 -8
View File
@@ -3,15 +3,15 @@
<package id="AIM" version="1.1.0" targetFramework="net462" /> <package id="AIM" version="1.1.0" targetFramework="net462" />
<package id="AjaxControlToolkit" version="20.1.0" targetFramework="net462" /> <package id="AjaxControlToolkit" version="20.1.0" targetFramework="net462" />
<package id="Crc32C.NET" version="1.0.5.0" targetFramework="net462" /> <package id="Crc32C.NET" version="1.0.5.0" targetFramework="net462" />
<package id="DnsClient" version="1.4.0" targetFramework="net462" /> <package id="DnsClient" version="1.5.0" targetFramework="net462" />
<package id="Microsoft.Bcl.AsyncInterfaces" version="5.0.0" targetFramework="net462" /> <package id="Microsoft.Bcl.AsyncInterfaces" version="5.0.0" targetFramework="net462" />
<package id="Microsoft.NETCore.Platforms" version="5.0.2" targetFramework="net462" /> <package id="Microsoft.NETCore.Platforms" version="5.0.2" targetFramework="net462" />
<package id="Microsoft.ReportViewer.Runtime.Common" version="12.0.2402.15" targetFramework="net462" /> <package id="Microsoft.ReportViewer.Runtime.Common" version="12.0.2402.15" targetFramework="net462" />
<package id="Microsoft.ReportViewer.Runtime.WinForms" version="12.0.2402.15" targetFramework="net462" /> <package id="Microsoft.ReportViewer.Runtime.WinForms" version="12.0.2402.15" targetFramework="net462" />
<package id="MongoDB.Bson" version="2.12.4" targetFramework="net462" /> <package id="MongoDB.Bson" version="2.13.1" targetFramework="net462" />
<package id="MongoDB.Driver" version="2.12.4" targetFramework="net462" /> <package id="MongoDB.Driver" version="2.13.1" targetFramework="net462" />
<package id="MongoDB.Driver.Core" version="2.12.4" targetFramework="net462" /> <package id="MongoDB.Driver.Core" version="2.13.1" targetFramework="net462" />
<package id="MongoDB.Libmongocrypt" version="1.2.1" targetFramework="net462" /> <package id="MongoDB.Libmongocrypt" version="1.2.2" 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.10" targetFramework="net462" />
@@ -20,9 +20,9 @@
<package id="SharpCompress" version="0.28.3" targetFramework="net462" /> <package id="SharpCompress" version="0.28.3" 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.4" targetFramework="net462" /> <package id="StackExchange.Redis" version="2.2.62" targetFramework="net462" />
<package id="SteamWare" version="5.1.2107.759" targetFramework="net462" /> <package id="SteamWare" version="5.1.2108.1911" targetFramework="net462" />
<package id="SteamWare.Logger" version="5.1.2107.759" 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" />
@@ -40,4 +40,5 @@
<package id="System.Text.Encoding.CodePages" version="5.0.0" targetFramework="net462" /> <package id="System.Text.Encoding.CodePages" version="5.0.0" targetFramework="net462" />
<package id="System.Threading.Channels" version="5.0.0" targetFramework="net462" /> <package id="System.Threading.Channels" version="5.0.0" targetFramework="net462" />
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net462" /> <package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net462" />
<package id="System.ValueTuple" version="4.5.0" targetFramework="net462" />
</packages> </packages>
+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>
+22 -7
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>
@@ -110,15 +115,10 @@ namespace NKC_SDK
/// Tipo di processing richiesto /// Tipo di processing richiesto
/// 1 = stima /// 1 = stima
/// 2 = nesting /// 2 = nesting
/// 3 = stima extended
/// </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
} }
@@ -341,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
} }
@@ -747,7 +757,7 @@ namespace NKC_SDK
/// <summary> /// <summary>
/// Codice ITEM esterno da cliente (HFA) /// Codice ITEM esterno da cliente (HFA)
/// </summary> /// </summary>
public string PartExtCode { get; set; } public string PartExtCode { get; set; } = "";
/// <summary> /// <summary>
/// Cod ITEM di NKC /// Cod ITEM di NKC
@@ -759,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
+15 -8
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
} }
} }
+316 -282
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;
@@ -136,6 +137,8 @@ namespace NKC_WF.Controllers
* - è 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)
*
*************************************************/ *************************************************/
if (batchProcAnsw.OrderType == oType.BatchRequest) if (batchProcAnsw.OrderType == oType.BatchRequest)
{ {
@@ -146,139 +149,151 @@ namespace NKC_WF.Controllers
// deserializzo come BatchreqIniziale (stima) // deserializzo come BatchreqIniziale (stima)
nestReplyBatchInitial rispStima = JsonConvert.DeserializeObject<nestReplyBatchInitial>(content); nestReplyBatchInitial rispStima = JsonConvert.DeserializeObject<nestReplyBatchInitial>(content);
// 2020.01.16 salvo su mongoDb la risposta... // verifica preliminare che il batch possa accettare la risposta
ComLib.man.saveEstAnsw(rispStima); var currBatchStatus = ComLib.BStatus(rispStima.BatchID);
if (currBatchStatus != BatchStatus.EstimationRequested)
// recupero info sul batch / KIT specifico x capire se sia di tipo "validation"
bool isValidation = false;
bool isTesting = false;
var tabOrd = DLMan.taOL.getByBatch(rispStima.BatchID);
if (tabOrd.Count > 0)
{ {
isValidation = tabOrd[0].OrdType == "V"; string message = $"Impossibile processing risposta da EgtNest | ProcType: {batchProcAnsw.ProcType} | BatchID: {rispStima.BatchID} | stato: {currBatchStatus}";
isTesting = tabOrd[0].OrdType == "T"; logger.lg.scriviLog(message, tipoLog.ERROR);
// registro KO
answ = "KO";
} }
// calcolo status del batch... else
switch (rispStima.ProcessStatus)
{ {
case procStatus.waiting: // 2020.01.16 salvo su mongoDb la risposta...
case procStatus.running: ComLib.man.saveEstAnsw(rispStima);
bStatus = 1;
break;
case procStatus.completed: // recupero info sul batch / KIT specifico x capire se sia di tipo "validation"
if (isValidation || isTesting) bool isValidation = false;
{ bool isTesting = false;
bool pdfOk = true; var tabOrd = DLMan.taOL.getByBatch(rispStima.BatchID);
// se richiesto CheckPDF if (tabOrd.Count > 0)
if (memLayer.ML.CRB("checkPdfPathTV")) {
isValidation = tabOrd[0].OrdType == "V";
isTesting = tabOrd[0].OrdType == "T";
}
// calcolo status del batch...
switch (rispStima.ProcessStatus)
{
case procStatus.waiting:
case procStatus.running:
bStatus = 1;
break;
case procStatus.completed:
if (isValidation || isTesting)
{ {
// verifico PDF, se NON OK --> errore bool pdfOk = true;
string pdfPath = ""; // se richiesto CheckPDF
foreach (var item in rispStima.PartList) if (memLayer.ML.CRB("checkPdfPathTV"))
{ {
pdfOk = pdfOk && ComLib.checkPdfExistAccessible(item, out pdfPath); // verifico PDF, se NON OK --> errore
if (!pdfOk) string pdfPath = "";
foreach (var item in rispStima.PartList)
{ {
// codice è B.xxx dove xxx = BatchID pdfOk = pdfOk && ComLib.checkPdfExistAccessible(item, out pdfPath);
DLMan.taEL.insertQuery(DateTime.Now, "Check PDF path", $"B.{rispStima.BatchID}", $"{rispStima.BatchID}.{item.PartExtCode}", $"Error: PDF file not found: {pdfPath}"); if (!pdfOk)
{
// codice è B.xxx dove xxx = BatchID
DLMan.taEL.insertQuery(DateTime.Now, "Check PDF path", $"B.{rispStima.BatchID}", $"{rispStima.BatchID}.{item.PartExtCode}", $"Error: PDF file not found: {pdfPath}");
}
} }
} }
}
// se non OK --> registro errore... // se non OK --> registro errore...
if (!pdfOk) if (!pdfOk)
{ {
bStatus = 9; bStatus = 9;
} }
// verifico se il tempo di procesisng stimato sia > minimo... // verifico se il tempo di procesisng stimato sia > minimo...
else if (rispStima.EstimatedWorktime > memLayer.ML.CRI("minValidEstSec")) else if (rispStima.EstimatedWorktime > memLayer.ML.CRI("minValidEstSec"))
{ {
bStatus = 10; bStatus = 10;
}
else
{
bStatus = 9;
}
} }
else else
{
bStatus = 2;
}
break;
case procStatus.accepted:
bStatus = 5;
break;
case procStatus.refused:
if (isValidation || isTesting)
{ {
bStatus = 9; bStatus = 9;
} }
} else
else {
{ bStatus = 6;
bStatus = 2; }
} break;
break;
case procStatus.accepted: case procStatus.error:
bStatus = 5; if (isValidation || isTesting)
break; {
bStatus = 9;
}
else
{
bStatus = 7;
}
break;
case procStatus.refused: case procStatus.aborted:
if (isValidation || isTesting) default:
{ if (isValidation || isTesting)
bStatus = 9; {
} bStatus = 9;
else }
{ else
bStatus = 6; {
} bStatus = 0;
break; }
break;
case procStatus.error: }
if (isValidation || isTesting) // SALVO info riguardo al batch running
{ DLMan.taBL.updateStatus(rispStima.BatchID, bStatus, rispStima.EnvNum, (decimal)rispStima.EstimatedWorktime / 60);
bStatus = 9; // salvo update elenco ITEMS
} ComLib.updatePartsFromNesting(rispStima.PartList);
else // aggiorno cadPath x items che non abbiano valorizzato...
{ string dxfFolder = memLayer.ML.CRS("drawingFolder");
bStatus = 7; if (isTesting)
}
break;
case procStatus.aborted:
default:
if (isValidation || isTesting)
{
bStatus = 9;
}
else
{
bStatus = 0;
}
break;
}
// SALVO info riguardo al batch running
DLMan.taBL.updateStatus(rispStima.BatchID, bStatus, rispStima.EnvNum, (decimal)rispStima.EstimatedWorktime / 60);
// salvo update elenco ITEMS
ComLib.updatePartsFromNesting(rispStima.PartList);
// aggiorno cadPath x items che non abbiano valorizzato...
string dxfFolder = memLayer.ML.CRS("drawingFolder");
if (isTesting)
{
dxfFolder = memLayer.ML.CRS("fileTestFolder");
}
string cadBasePath = $"{memLayer.ML.CRS("nestBasePath")}{dxfFolder}/";
DLMan.taIL.updateCadPath(cadBasePath, rispStima.BatchID, false);
// verifico IN CASO di validazione andata a buon fine --> valorizzo tabella!
if (bStatus > 7)
{
if (isValidation)
{ {
// recupero ordine da batch dxfFolder = memLayer.ML.CRS("fileTestFolder");
if (tabOrd.Count > 0) }
string cadBasePath = $"{memLayer.ML.CRS("nestBasePath")}{dxfFolder}/";
DLMan.taIL.updateCadPath(cadBasePath, rispStima.BatchID, false);
// verifico IN CASO di validazione andata a buon fine --> valorizzo tabella!
if (bStatus > 7)
{
if (isValidation)
{ {
DLMan.taIV.upsertQuery(tabOrd[0].OrderExtCode, rispStima.BatchID, bStatus, rispStima.EstimatedWorktime); // recupero ordine da batch
} if (tabOrd.Count > 0)
} {
else if (isTesting) DLMan.taIV.upsertQuery(tabOrd[0].OrderExtCode, rispStima.BatchID, bStatus, rispStima.EstimatedWorktime);
{ }
// recupero ordine da batch }
if (tabOrd.Count > 0) else if (isTesting)
{ {
DLMan.taFV.upsertQuery(tabOrd[0].OrderExtCode, rispStima.BatchID, bStatus, rispStima.EstimatedWorktime); // recupero ordine da batch
if (tabOrd.Count > 0)
{
DLMan.taFV.upsertQuery(tabOrd[0].OrderExtCode, rispStima.BatchID, bStatus, rispStima.EstimatedWorktime);
}
} }
} }
// registro OK
answ = "OK";
} }
// registro OK
answ = "OK";
} }
// stima "extended" x splitting // stima "extended" x splitting
else if (batchProcAnsw.ProcType == 3) else if (batchProcAnsw.ProcType == 3)
@@ -286,124 +301,141 @@ namespace NKC_WF.Controllers
int bStatus = 0; int bStatus = 0;
// deserializzo come BatchreqIniziale (stima) // deserializzo come BatchreqIniziale (stima)
nestReplyBatchExtEst rispStima = JsonConvert.DeserializeObject<nestReplyBatchExtEst>(content); nestReplyBatchExtEst rispStima = JsonConvert.DeserializeObject<nestReplyBatchExtEst>(content);
// verifica preliminare che il batch possa accettare la risposta
// salvo su mongoDb la risposta... var currBatchStatus = ComLib.BStatus(rispStima.BatchID);
ComLib.man.saveExtEstAnsw(rispStima); if (currBatchStatus != BatchStatus.EstimationRequested)
// recupero info sul batch / KIT specifico x capire se sia di tipo "validation"
bool isValidation = false;
bool isTesting = false;
var tabOrd = DLMan.taOL.getByBatch(rispStima.BatchID);
if (tabOrd.Count > 0)
{ {
isValidation = tabOrd[0].OrdType == "V"; string message = $"Impossibile processing risposta da EgtNest | ProcType: {batchProcAnsw.ProcType} | BatchID: {rispStima.BatchID} | stato: {currBatchStatus}";
isTesting = tabOrd[0].OrdType == "T"; logger.lg.scriviLog(message, tipoLog.ERROR);
// registro KO
answ = "KO";
} }
// calcolo status del batch... else
switch (rispStima.ProcessStatus)
{ {
case procStatus.waiting: // salvo su mongoDb la risposta...
case procStatus.running: ComLib.man.saveExtEstAnsw(rispStima);
bStatus = 1;
break;
case procStatus.completed: // recupero info sul batch / KIT specifico x capire se sia di tipo "validation"
if (isValidation || isTesting) bool isValidation = false;
{ bool isTesting = false;
bool pdfOk = true; var tabOrd = DLMan.taOL.getByBatch(rispStima.BatchID);
// se richiesto CheckPDF if (tabOrd.Count > 0)
if (memLayer.ML.CRB("checkPdfPathTV")) {
isValidation = tabOrd[0].OrdType == "V";
isTesting = tabOrd[0].OrdType == "T";
}
// calcolo status del batch...
switch (rispStima.ProcessStatus)
{
case procStatus.waiting:
case procStatus.running:
bStatus = 1;
break;
case procStatus.completed:
if (isValidation || isTesting)
{ {
// verifico PDF, se NON OK --> errore bool pdfOk = true;
string pdfPath = ""; // se richiesto CheckPDF
foreach (var item in rispStima.PartList) if (memLayer.ML.CRB("checkPdfPathTV"))
{ {
pdfOk = pdfOk && ComLib.checkPdfExistAccessible(item, out pdfPath); // verifico PDF, se NON OK --> errore
if (!pdfOk) string pdfPath = "";
foreach (var item in rispStima.PartList)
{ {
// codice è B.xxx dove xxx = BatchID pdfOk = pdfOk && ComLib.checkPdfExistAccessible(item, out pdfPath);
DLMan.taEL.insertQuery(DateTime.Now, "Check PDF path", $"B.{rispStima.BatchID}", $"{rispStima.BatchID}.{item.PartExtCode}", $"Error: PDF file not found: {pdfPath}"); if (!pdfOk)
{
// codice è B.xxx dove xxx = BatchID
DLMan.taEL.insertQuery(DateTime.Now, "Check PDF path", $"B.{rispStima.BatchID}", $"{rispStima.BatchID}.{item.PartExtCode}", $"Error: PDF file not found: {pdfPath}");
}
} }
} }
}
// se non OK --> registro errore... // se non OK --> registro errore...
if (!pdfOk) if (!pdfOk)
{ {
bStatus = 9; bStatus = 9;
} }
// verifico se il tempo di procesisng stimato sia > minimo... // verifico se il tempo di procesisng stimato sia > minimo...
else if (rispStima.EstimatedWorktime > memLayer.ML.CRI("minValidEstSec")) else if (rispStima.EstimatedWorktime > memLayer.ML.CRI("minValidEstSec"))
{ {
bStatus = 10; bStatus = 10;
}
else
{
bStatus = 9;
}
} }
else else
{
bStatus = 2;
}
break;
case procStatus.accepted:
bStatus = 5;
break;
case procStatus.refused:
if (isValidation || isTesting)
{ {
bStatus = 9; bStatus = 9;
} }
} else
else {
{ bStatus = 6;
bStatus = 2; }
} break;
break;
case procStatus.accepted: case procStatus.error:
bStatus = 5; if (isValidation || isTesting)
break; {
bStatus = 9;
}
else
{
bStatus = 7;
}
break;
case procStatus.refused: case procStatus.aborted:
if (isValidation || isTesting) default:
{ if (isValidation || isTesting)
bStatus = 9; {
} bStatus = 9;
else }
{ else
bStatus = 6; {
} bStatus = 0;
break; }
break;
}
// SALVO info riguardo al batch running
DLMan.taBL.updateStatus(rispStima.BatchID, bStatus, rispStima.EnvNum, (decimal)rispStima.EstimatedWorktime / 60);
// salvo update elenco ITEMS
if (rispStima.PartList != null && rispStima.PartList.Count > 0)
{
ComLib.updatePartsFromNesting(rispStima.PartList);
}
case procStatus.error: // aggiorno la risposta dei tempi di esecuzione (+ NUM cart/part) degli ordini x permettere aggiustamenti
if (isValidation || isTesting) if (rispStima.EstOrderList != null && rispStima.EstOrderList.Count > 0)
{ {
bStatus = 9; ComLib.updateExtEstimFromNesting(rispStima.BatchID, rispStima.EstOrderList);
} }
else
{
bStatus = 7;
}
break;
case procStatus.aborted: // aggiorno cadPath x items che non abbiano valorizzato...
default: string dxfFolder = memLayer.ML.CRS("drawingFolder");
if (isValidation || isTesting) if (isTesting)
{ {
bStatus = 9; dxfFolder = memLayer.ML.CRS("fileTestFolder");
} }
else string cadBasePath = $"{memLayer.ML.CRS("nestBasePath")}{dxfFolder}/";
{ DLMan.taIL.updateCadPath(cadBasePath, rispStima.BatchID, false);
bStatus = 0; // registro OK
} answ = "OK";
break;
} }
// SALVO info riguardo al batch running
DLMan.taBL.updateStatus(rispStima.BatchID, bStatus, rispStima.EnvNum, (decimal)rispStima.EstimatedWorktime / 60);
// salvo update elenco ITEMS
ComLib.updatePartsFromNesting(rispStima.PartList);
// aggiorno la risposta dei tempi di esecuzione (+ NUM cart/part) degli ordini x permettere aggiustamenti
ComLib.updateExtEstimFromNesting(rispStima.BatchID, rispStima.EstOrderList);
// aggiorno cadPath x items che non abbiano valorizzato...
string dxfFolder = memLayer.ML.CRS("drawingFolder");
if (isTesting)
{
dxfFolder = memLayer.ML.CRS("fileTestFolder");
}
string cadBasePath = $"{memLayer.ML.CRS("nestBasePath")}{dxfFolder}/";
DLMan.taIL.updateCadPath(cadBasePath, rispStima.BatchID, false);
// registro OK
answ = "OK";
} }
// nesting // nesting
else if (batchProcAnsw.ProcType == 2) else if (batchProcAnsw.ProcType == 2)
@@ -411,84 +443,86 @@ namespace NKC_WF.Controllers
// deserializzo come BatchreqFinale // deserializzo come BatchreqFinale
nestReplyBatchFinal rispNest = JsonConvert.DeserializeObject<nestReplyBatchFinal>(content); nestReplyBatchFinal rispNest = JsonConvert.DeserializeObject<nestReplyBatchFinal>(content);
// 2020.01.16 salvo su mongoDb la risposta... // verifica preliminare che il batch possa accettare la risposta
ComLib.man.saveNestAnsw(rispNest); var currBatchStatus = ComLib.BStatus(rispNest.BatchID);
if (currBatchStatus != BatchStatus.NestRequested)
// calcolo status del batch...
int bStatus = 2;
switch (rispNest.ProcessStatus)
{ {
case procStatus.waiting: string message = $"Impossibile processing risposta da EgtNest | ProcType: {batchProcAnsw.ProcType} | BatchID: {rispNest.BatchID} | stato: {currBatchStatus}";
case procStatus.running: logger.lg.scriviLog(message, tipoLog.ERROR);
bStatus = 3; // registro KO
break; answ = "KO";
case procStatus.completed:
bStatus = 4;
break;
case procStatus.accepted:
bStatus = 5;
break;
case procStatus.refused:
bStatus = 6;
break;
case procStatus.error:
bStatus = 7;
break;
case procStatus.aborted:
default:
bStatus = 2;
break;
} }
// aggiorno il resto SOLO SE status == completo... else
if (rispNest.ProcessStatus == procStatus.completed || rispNest.ProcessStatus == procStatus.error)
{ {
// resetto le precedenti elaborazioni: elimino dati child MA NON il batch... // 2020.01.16 salvo su mongoDb la risposta...
DLMan.taBL.resetTree(rispNest.BatchID); ComLib.man.saveNestAnsw(rispNest);
// SALVO info riguardo al batch completato
DLMan.taBL.updateStatus(rispNest.BatchID, bStatus, rispNest.EnvNum, (decimal)rispNest.EstimatedWorktime / 60);
// salvo info riguardo ai vari Bunk / Sheets / Items...
ComLib.updateBunksFromNesting(rispNest.BatchID, rispNest.BunkList);
// salvo info x CART & BINS previsti
ComLib.updateBinsFromNesting(rispNest.BatchID, rispNest.BinList);
ComLib.updateCartsFromNesting(rispNest.BatchID, rispNest.CartList);
#if false // calcolo status del batch...
// NKC2: se è un batch ti dipo descendant int bStatus = 2;
if (ComLib.BType(rispNest.BatchID) == BatchType.Descendant) switch (rispNest.ProcessStatus)
{ {
// verifico se ce ne siano altri NON validati (ma splitted) case procStatus.waiting:
var tabDesc = ComLib.BatchOtherDescendant(rispNest.BatchID); case procStatus.running:
if (tabDesc != null && tabDesc.Count > 0) bStatus = 3;
{ break;
// ciclo x tutte le righe che NON fossero con nesting effettuato
foreach (var item in tabDesc)
{
// se c'è qualcosa da processare lo richiede
if (item.STATUS == 2)
{
// invio il PRIMO batch descendant
ComLib.sendBatchReq(item.BatchID, "Nesting", 2, false);
// registro su DB nesting iniziato...
DLMan.taBL.updateStatus(item.BatchID, (int)BatchStatus.NestRequested, "", -1);
isSplitReq = true;
// esco
break;
}
// se non ha trovato nulla --> prova update Batch Ancestor...
}
}
}
#endif
isSplitReq = ComLib.checkSendBatchSplit(rispNest.BatchID);
}
// registro OK case procStatus.completed:
answ = "OK"; bStatus = 4;
break;
case procStatus.accepted:
bStatus = 5;
break;
case procStatus.refused:
bStatus = 6;
break;
case procStatus.error:
bStatus = 7;
break;
case procStatus.aborted:
default:
bStatus = 2;
break;
}
// aggiorno il resto SOLO SE status == completo...
if (rispNest.ProcessStatus == procStatus.completed || rispNest.ProcessStatus == procStatus.error)
{
// resetto le precedenti elaborazioni: elimino dati child MA NON il batch...
DLMan.taBL.resetTree(rispNest.BatchID);
// SALVO info riguardo al batch completato
DLMan.taBL.updateStatus(rispNest.BatchID, bStatus, rispNest.EnvNum, (decimal)rispNest.EstimatedWorktime / 60);
// salvo info riguardo ai vari Bunk / Sheets / Items...
if (rispNest.BunkList != null && rispNest.BunkList.Count > 0)
{
ComLib.updateBunksFromNesting(rispNest.BatchID, rispNest.BunkList);
}
// salvo info x CART & BINS previsti
if (rispNest.BinList != null && rispNest.BinList.Count > 0)
{
ComLib.updateBinsFromNesting(rispNest.BatchID, rispNest.BinList);
}
if (rispNest.CartList != null && rispNest.CartList.Count > 0)
{
ComLib.updateCartsFromNesting(rispNest.BatchID, rispNest.CartList);
}
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
answ = "OK";
}
} }
} }
else if (batchProcAnsw.OrderType == oType.OfflineOrder) else if (batchProcAnsw.OrderType == oType.OfflineOrder)
@@ -542,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";
} }
+4 -8
View File
@@ -62,7 +62,7 @@ namespace NKC_WF.Controllers
} }
else else
{ {
answ = ComLib.prodGetBunk(id); answ = ComLib.prodGetBunk(id, CodPost);
} }
} }
catch catch
@@ -154,14 +154,10 @@ namespace NKC_WF.Controllers
foreach (var item in currBunk.SheetList) foreach (var item in currBunk.SheetList)
{ {
DLMan.taSHL.updateDate(item.SheetId, item.Printing.DtStart, item.Printing.DtEnd, item.Machining.DtStart, item.Machining.DtEnd, item.Unloading.DtStart, item.Unloading.DtEnd, (int)item.Status); DLMan.taSHL.updateDate(item.SheetId, item.Printing.DtStart, item.Printing.DtEnd, item.Machining.DtStart, item.Machining.DtEnd, item.Unloading.DtStart, item.Unloading.DtEnd, (int)item.Status);
// verifico SE SIA AVVENUTO CON SUCCESSO lo step di lavorazione... // SE machining completato --> status a LAVORATO!
if (item.Machining.Success) if (item.Machining.DtEnd != null)
{ {
// SE machining completato --> status a LAVORATO! DLMan.taIL.updateSheetStatus(item.SheetId, 1, "PROD");
if (item.Machining.DtEnd != null)
{
DLMan.taIL.updateSheetStatus(item.SheetId, 1, "PROD");
}
} }
} }
} }
+9 -85
View File
@@ -42,22 +42,20 @@ namespace NKC_WF.Controllers
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
[HttpGet] [HttpGet]
public List<MachineStatData> Get() public MachineStatData Get()
{ {
List<MachineStatData> answ = new List<MachineStatData>(); MachineStatData answ = new MachineStatData();
try try
{ {
answ = ComLib.prodMachStateDataGet(); answ = ComLib.prodMachStateDataGet(machine);
} }
catch catch
{ } { }
// se vuoto metto 1 finto... // se vuoto metto 1 finto...
if (answ.Count == 0) if (answ == null)
{ {
var demoItem = new MachineStatData(); answ = new MachineStatData() { Machine = machine };
demoItem.Records.Add(new MachineStatRecord());
answ.Add(demoItem);
} }
return answ; return answ;
@@ -72,14 +70,10 @@ namespace NKC_WF.Controllers
[HttpGet] [HttpGet]
public MachineStatData Get(string id) public MachineStatData Get(string id)
{ {
MachineStatData answ = new MachineStatData(); MachineStatData answ = new MachineStatData() { Machine = id };
try try
{ {
var listState = ComLib.prodMachStateDataGet(); answ = ComLib.prodMachStateDataGet(id);
if (listState != null && listState.Count > 0)
{
answ = listState.Where(x => x.Machine == id).FirstOrDefault();
}
} }
catch catch
{ } { }
@@ -103,82 +97,12 @@ namespace NKC_WF.Controllers
* *
**************************************/ **************************************/
#if false
/// <summary>
/// Processa una chiamata POST per l'invio in blocco
/// POST: api/Bunk
/// </summary>
/// <returns></returns>
[HttpPost]
public string Post()
{
int BunkId = 0;
int BatchId = 0;
string answ = "";
// questa classe è derivata da Controller.Response... x cui recupero lo stream in altro modo...
string content = "";
System.Web.HttpContext.Current.Request.InputStream.Position = 0;
using (var reader = new StreamReader(System.Web.HttpContext.Current.Request.InputStream, System.Text.Encoding.UTF8, true, 4096, true))
{
content = reader.ReadToEnd();
}
//Rest
System.Web.HttpContext.Current.Request.InputStream.Position = 0;
// procedo a deserializzare in blocco l'oggetto...
try
{
// deserializzo.
SheetWorkList sheetUpdated = JsonConvert.DeserializeObject<SheetWorkList>(content);
if (sheetUpdated != null)
{
// 2020.01.16 salvo su mongoDb la risposta...
ComLib.man.saveProdAnsw(sheetUpdated);
if (sheetUpdated.SheetList != null)
{
foreach (var currSheet in sheetUpdated.SheetList)
{
// se non nullo...
if (currSheet != null)
{
DLMan.taSHL.updateDate(currSheet.SheetId, currSheet.Printing.DtStart, currSheet.Printing.DtEnd, currSheet.Machining.DtStart, currSheet.Machining.DtEnd, currSheet.Unloading.DtStart, currSheet.Unloading.DtEnd, (int)currSheet.Status);
// SE machining completato --> status a LAVORATO x item!
if (currSheet.Machining.DtEnd != null)
{
// hard coded su multiax
DLMan.taIL.updateSheetStatus(currSheet.SheetId, 1, "WRK001");
}
// segnalo avanzamento su redis x pagina unload
ComLib.advaceSheetRevByBunk(currSheet.BunkId);
BunkId = currSheet.BunkId;
answ = "OK";
}
}
}
var tabBunks = DLMan.taSTL.getByKey(BunkId);
if (tabBunks.Count > 0)
{
BatchId = tabBunks[0].BatchID;
}
// ricalcolo stato BUNK
ComLib.updateBatchPosition(BatchId);
// INVALIDO eventuale valore BUNK in REDIS...
ComLib.resetRedisBunkData(machine);
}
}
catch
{
answ = "NO";
}
return answ;
}
#endif
/// <summary> /// <summary>
/// Effettua la chiamata di update x un set di dati delle macchine /// Effettua la chiamata di update x un set di dati delle macchine
/// </summary> /// </summary>
/// <param name="MSDUpdated">Oggetto con macchina + Elenco record da aggiornare</param> /// <param name="updatedInfo">Oggetto con macchina + Elenco record da aggiornare</param>
// PUT: api/Sheet/5 // PUT: api/Sheet
[HttpPut] [HttpPut]
public void Put(MachineStatData updatedInfo) public void Put(MachineStatData updatedInfo)
{ {
+10 -14
View File
@@ -33,7 +33,7 @@ namespace NKC_WF.Controllers
public SheetWorkList Get() public SheetWorkList Get()
{ {
// fisso su machcina 1 // fisso su machcina 1
string machineName = "WRK001"; string machineName = "NE02";
SheetWorkList answ = null; SheetWorkList answ = null;
try try
{ {
@@ -45,8 +45,8 @@ namespace NKC_WF.Controllers
} }
/// <summary> /// <summary>
/// Ottengo elenco specifico dato cod MACCHINA /// Ottengo elenco specifico dato cod MACCHINA (es NE01)
/// GET: api/Sheet/WRK001 /// GET: api/Sheet/NE01
/// </summary> /// </summary>
/// <param name="id"></param> /// <param name="id"></param>
/// <returns></returns> /// <returns></returns>
@@ -121,7 +121,7 @@ namespace NKC_WF.Controllers
if (currSheet.Machining.DtEnd != null) if (currSheet.Machining.DtEnd != null)
{ {
// hard coded su multiax // hard coded su multiax
DLMan.taIL.updateSheetStatus(currSheet.SheetId, 1, "WRK001"); DLMan.taIL.updateSheetStatus(currSheet.SheetId, 1, sheetUpdated.Machine);
} }
// segnalo avanzamento su redis x pagina unload // segnalo avanzamento su redis x pagina unload
ComLib.advaceSheetRevByBunk(currSheet.BunkId); ComLib.advaceSheetRevByBunk(currSheet.BunkId);
@@ -152,7 +152,7 @@ namespace NKC_WF.Controllers
/// Effettua la chiamata di update x SINGOLO foglio /// Effettua la chiamata di update x SINGOLO foglio
/// </summary> /// </summary>
/// <param name="sheetUpdated">Oggetto con Elenco fogli da aggiornare</param> /// <param name="sheetUpdated">Oggetto con Elenco fogli da aggiornare</param>
// PUT: api/Sheet/machine_ID /// PUT: api/Sheet/machine_ID
[HttpPut] [HttpPut]
public void Put(SheetWorkList sheetUpdated) public void Put(SheetWorkList sheetUpdated)
{ {
@@ -174,15 +174,11 @@ namespace NKC_WF.Controllers
if (currSheet != null) if (currSheet != null)
{ {
DLMan.taSHL.updateDate(currSheet.SheetId, currSheet.Printing.DtStart, currSheet.Printing.DtEnd, currSheet.Machining.DtStart, currSheet.Machining.DtEnd, currSheet.Unloading.DtStart, currSheet.Unloading.DtEnd, (int)currSheet.Status); DLMan.taSHL.updateDate(currSheet.SheetId, currSheet.Printing.DtStart, currSheet.Printing.DtEnd, currSheet.Machining.DtStart, currSheet.Machining.DtEnd, currSheet.Unloading.DtStart, currSheet.Unloading.DtEnd, (int)currSheet.Status);
// verifico SE SIA AVVENUTO CON SUCCESSO lo step di lavorazione... // SE machining completato --> status a LAVORATO!
if (currSheet.Machining.Success) if (currSheet.Machining.DtEnd != null)
{ {
// SE machining completato --> status a LAVORATO! // hard coded su multiax
if (currSheet.Machining.DtEnd != null) DLMan.taIL.updateSheetStatus(currSheet.SheetId, 1, sheetUpdated.Machine);
{
// hard coded su multiax
DLMan.taIL.updateSheetStatus(currSheet.SheetId, 1, machine);
}
} }
// segnalo avanzamento su redis x pagina unload // segnalo avanzamento su redis x pagina unload
ComLib.advaceSheetRevByBunk(currSheet.BunkId); ComLib.advaceSheetRevByBunk(currSheet.BunkId);
@@ -199,7 +195,7 @@ namespace NKC_WF.Controllers
// ricalcolo stato BUNK // ricalcolo stato BUNK
ComLib.updateBatchPosition(BatchId); ComLib.updateBatchPosition(BatchId);
// INVALIDO eventuale valore BUNK in REDIS... // INVALIDO eventuale valore BUNK in REDIS...
ComLib.resetRedisBunkData(machine); ComLib.resetRedisBunkData(sheetUpdated.Machine);
} }
} }
+1 -1
View File
@@ -103,7 +103,7 @@ namespace NKC_WF.Controllers
/// GET api/SheetStats/5 /// GET api/SheetStats/5
/// </summary> /// </summary>
/// <param name="id">BatchID</param> /// <param name="id">BatchID</param>
/// <param name="maxHour">num max ore da mostrare</param> /// <param name="MaxHour">num max ore da mostrare</param>
/// <returns></returns> /// <returns></returns>
public List<chartJsTSerie> Get(int id, int MaxHour) public List<chartJsTSerie> Get(int id, int MaxHour)
{ {
+28 -25
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>
@@ -66,8 +66,8 @@
<Reference Include="Crc32C.NET, Version=1.0.5.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="Crc32C.NET, Version=1.0.5.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\Crc32C.NET.1.0.5.0\lib\net20\Crc32C.NET.dll</HintPath> <HintPath>..\packages\Crc32C.NET.1.0.5.0\lib\net20\Crc32C.NET.dll</HintPath>
</Reference> </Reference>
<Reference Include="DnsClient, Version=1.4.0.0, Culture=neutral, PublicKeyToken=4574bb5573c51424, processorArchitecture=MSIL"> <Reference Include="DnsClient, Version=1.5.0.0, Culture=neutral, PublicKeyToken=4574bb5573c51424, processorArchitecture=MSIL">
<HintPath>..\packages\DnsClient.1.4.0\lib\net45\DnsClient.dll</HintPath> <HintPath>..\packages\DnsClient.1.5.0\lib\net45\DnsClient.dll</HintPath>
</Reference> </Reference>
<Reference Include="Elmah, Version=1.2.14706.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="Elmah, Version=1.2.14706.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\elmah.corelibrary.1.2.2\lib\Elmah.dll</HintPath> <HintPath>..\packages\elmah.corelibrary.1.2.2\lib\Elmah.dll</HintPath>
@@ -91,23 +91,23 @@
<Reference Include="Microsoft.Web.RedisSessionStateProvider, Version=4.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> <Reference Include="Microsoft.Web.RedisSessionStateProvider, Version=4.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Web.RedisSessionStateProvider.4.0.1\lib\net462\Microsoft.Web.RedisSessionStateProvider.dll</HintPath> <HintPath>..\packages\Microsoft.Web.RedisSessionStateProvider.4.0.1\lib\net462\Microsoft.Web.RedisSessionStateProvider.dll</HintPath>
</Reference> </Reference>
<Reference Include="MongoDB.Bson, Version=2.12.4.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="MongoDB.Bson, Version=2.13.1.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\MongoDB.Bson.2.12.4\lib\net452\MongoDB.Bson.dll</HintPath> <HintPath>..\packages\MongoDB.Bson.2.13.1\lib\net452\MongoDB.Bson.dll</HintPath>
</Reference> </Reference>
<Reference Include="MongoDB.Driver, Version=2.12.4.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="MongoDB.Driver, Version=2.13.1.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\MongoDB.Driver.2.12.4\lib\net452\MongoDB.Driver.dll</HintPath> <HintPath>..\packages\MongoDB.Driver.2.13.1\lib\net452\MongoDB.Driver.dll</HintPath>
</Reference> </Reference>
<Reference Include="MongoDB.Driver.Core, Version=2.12.4.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.12.4\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.1.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="MongoDB.Libmongocrypt, Version=1.2.3.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\MongoDB.Libmongocrypt.1.2.1\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,20 +118,20 @@
<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>
</Reference> </Reference>
<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.4\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.2107.759, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="SteamWare, Version=5.1.2109.1713, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\SteamWare.5.1.2107.759\lib\net462\SteamWare.dll</HintPath> <HintPath>..\packages\SteamWare.5.1.2109.1713\lib\net462\SteamWare.dll</HintPath>
</Reference> </Reference>
<Reference Include="SteamWare.Logger, Version=5.1.2107.759, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="SteamWare.Logger, Version=5.1.2109.1713, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\SteamWare.Logger.5.1.2107.759\lib\net462\SteamWare.Logger.dll</HintPath> <HintPath>..\packages\SteamWare.Logger.5.1.2109.1713\lib\net462\SteamWare.Logger.dll</HintPath>
</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>
@@ -207,6 +207,9 @@
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath> <HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
</Reference> </Reference>
<Reference Include="System.Transactions" /> <Reference Include="System.Transactions" />
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
</Reference>
<Reference Include="System.Web.Extensions" /> <Reference Include="System.Web.Extensions" />
<Reference Include="System.Web.Helpers, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> <Reference Include="System.Web.Helpers, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebPages.3.2.7\lib\net45\System.Web.Helpers.dll</HintPath> <HintPath>..\packages\Microsoft.AspNet.WebPages.3.2.7\lib\net45\System.Web.Helpers.dll</HintPath>
@@ -1891,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>
@@ -1919,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.1\build\MongoDB.Libmongocrypt.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\MongoDB.Libmongocrypt.1.2.1\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.12.4\build\MongoDB.Driver.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\MongoDB.Driver.Core.2.12.4\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.
@@ -1948,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.1\build\MongoDB.Libmongocrypt.targets" Condition="Exists('..\packages\MongoDB.Libmongocrypt.1.2.1\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.12.4\build\MongoDB.Driver.Core.targets" Condition="Exists('..\packages\MongoDB.Driver.Core.2.12.4\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>
+48 -3
View File
@@ -1,6 +1,6 @@
[ [
{ {
"name": "queueUnloadBin", "name": "queueUnloadBinNE01",
"template": "Bin.rdlc", "template": "Bin.rdlc",
"printerName": "Microsoft Print to PDF", "printerName": "Microsoft Print to PDF",
"deviceInfoParam": { "deviceInfoParam": {
@@ -15,7 +15,37 @@
} }
}, },
{ {
"name": "queueUnloadCart", "name": "queueUnloadBinNE02",
"template": "Bin.rdlc",
"printerName": "Microsoft Print to PDF",
"deviceInfoParam": {
"OutputFormat": "EMF",
"PageHeight": "11in",
"PageWidth": "8.5in",
"MarginLeft": "0.5in",
"MarginRight": "0.5in",
"MarginTop": "0.5in",
"MarginBottom": "0.5in",
"xmlParam": "<DeviceInfo><OutputFormat>EMF</OutputFormat><PageWidth>8.5in</PageWidth><PageHeight>11in</PageHeight><MarginTop>0.5in</MarginTop><MarginLeft>0.5in</MarginLeft><MarginRight>0.5in</MarginRight><MarginBottom>0.5in</MarginBottom></DeviceInfo>"
}
},
{
"name": "queueUnloadCartNE01",
"template": "Cart.rdlc",
"printerName": "Microsoft Print to PDF",
"deviceInfoParam": {
"OutputFormat": "EMF",
"PageHeight": "11in",
"PageWidth": "8.5in",
"MarginLeft": "0.5in",
"MarginRight": "0.5in",
"MarginTop": "0.5in",
"MarginBottom": "0.5in",
"xmlParam": "<DeviceInfo><OutputFormat>EMF</OutputFormat><PageWidth>8.5in</PageWidth><PageHeight>11in</PageHeight><MarginTop>0.5in</MarginTop><MarginLeft>0.5in</MarginLeft><MarginRight>0.5in</MarginRight><MarginBottom>0.5in</MarginBottom></DeviceInfo>"
}
},
{
"name": "queueUnloadCartNE02",
"template": "Cart.rdlc", "template": "Cart.rdlc",
"printerName": "Microsoft Print to PDF", "printerName": "Microsoft Print to PDF",
"deviceInfoParam": { "deviceInfoParam": {
@@ -75,7 +105,22 @@
} }
}, },
{ {
"name": "queuePart", "name": "queuePartNE01",
"template": "Part.rdlc",
"printerName": "Microsoft Print to PDF",
"deviceInfoParam": {
"OutputFormat": "EMF",
"PageHeight": "2in",
"PageWidth": "4.09in",
"MarginLeft": "0in",
"MarginRight": "0in",
"MarginTop": "0in",
"MarginBottom": "0in",
"xmlParam": "<DeviceInfo><OutputFormat>EMF</OutputFormat><PageWidth>4.09in</PageWidth><PageHeight>2in</PageHeight><MarginTop>0in</MarginTop><MarginLeft>0in</MarginLeft><MarginRight>0in</MarginRight><MarginBottom>0in</MarginBottom></DeviceInfo>"
}
},
{
"name": "queuePartNE02",
"template": "Part.rdlc", "template": "Part.rdlc",
"printerName": "Microsoft Print to PDF", "printerName": "Microsoft Print to PDF",
"deviceInfoParam": { "deviceInfoParam": {
+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>
+13 -10
View File
@@ -28,7 +28,7 @@
<sessionState mode="Custom" customProvider="MySessionStateStore"> <sessionState mode="Custom" customProvider="MySessionStateStore">
<providers> <providers>
<add name="MySessionStateStore" type="Microsoft.Web.Redis.RedisSessionStateProvider" host="127.0.0.1" accessKey="" ssl="false" <add name="MySessionStateStore" type="Microsoft.Web.Redis.RedisSessionStateProvider" host="127.0.0.1" accessKey="" ssl="false"
applicationName="NKC" databaseId="0" timeout="120"/> applicationName="NKC" databaseId="2" timeout="480"/>
</providers> </providers>
</sessionState> </sessionState>
<httpModules> <httpModules>
@@ -59,6 +59,7 @@
<add key="copyRight" value="Egaltech &amp; Steamware "/> <add key="copyRight" value="Egaltech &amp; Steamware "/>
<add key="authSenzaDominio" value="true"/> <add key="authSenzaDominio" value="true"/>
<add key="_safePages" value="Test#Home#Default"/> <add key="_safePages" value="Test#Home#Default"/>
<add key="_righeDataGridAnagr" value="20"/>
<add key="BaseUrl" value="http://IIS02/NKC"/> <add key="BaseUrl" value="http://IIS02/NKC"/>
<!--Updater area--> <!--Updater area-->
<add key="downloadPath" value="c:\Steamware\installers\"/> <add key="downloadPath" value="c:\Steamware\installers\"/>
@@ -77,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="0"/> <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"/>
@@ -376,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"/>
@@ -392,7 +395,7 @@
</dependentAssembly> </dependentAssembly>
<dependentAssembly> <dependentAssembly>
<assemblyIdentity name="DnsClient" publicKeyToken="4574bb5573c51424" culture="neutral"/> <assemblyIdentity name="DnsClient" publicKeyToken="4574bb5573c51424" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-1.3.2.0" newVersion="1.3.2.0"/> <bindingRedirect oldVersion="0.0.0.0-1.5.0.0" newVersion="1.5.0.0"/>
</dependentAssembly> </dependentAssembly>
<dependentAssembly> <dependentAssembly>
<assemblyIdentity name="System.Security.Cryptography.Pkcs" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/> <assemblyIdentity name="System.Security.Cryptography.Pkcs" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
@@ -469,11 +472,11 @@
</location> </location>
<system.codedom> <system.codedom>
<compilers> <compilers>
<compiler extension=".cs" language="c#;cs;csharp" warningLevel="4" compilerOptions="/langversion:7.0 /nowarn:1659;1699;1701;612;618" <compiler extension=".cs" language="c#;cs;csharp" warningLevel="4" compilerOptions="/langversion:7.0 /nowarn:1659;1699;1701;612;618"
type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=3.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=3.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<compiler extension=".vb" language="vb;vbs;visualbasic;vbscript" warningLevel="4" <compiler extension=".vb" language="vb;vbs;visualbasic;vbscript" warningLevel="4"
compilerOptions="/langversion:default /nowarn:41008,40000,40008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+" compilerOptions="/langversion:default /nowarn:41008,40000,40008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+"
type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=3.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=3.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</compilers> </compilers>
</system.codedom> </system.codedom>
</configuration> </configuration>
@@ -44,5 +44,6 @@
<asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="original_{0}" SelectMethod="getByStack" TypeName="AppData.DS_AppTableAdapters.SheetListTableAdapter"> <asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="original_{0}" SelectMethod="getByStack" TypeName="AppData.DS_AppTableAdapters.SheetListTableAdapter">
<SelectParameters> <SelectParameters>
<asp:ControlParameter ControlID="hfStackID" DefaultValue="0" Name="StackID" PropertyName="Value" Type="Int32" /> <asp:ControlParameter ControlID="hfStackID" DefaultValue="0" Name="StackID" PropertyName="Value" Type="Int32" />
<asp:Parameter Name="Machine" DefaultValue="" />
</SelectParameters> </SelectParameters>
</asp:ObjectDataSource> </asp:ObjectDataSource>
+32 -32
View File
@@ -1,44 +1,44 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <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
{ {
public partial class cmp_BP_sheetList public partial class cmp_BP_sheetList
{ {
/// <summary> /// <summary>
/// Controllo hfStackID. /// hfStackID 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.HiddenField hfStackID; protected global::System.Web.UI.WebControls.HiddenField hfStackID;
/// <summary> /// <summary>
/// Controllo grView. /// grView 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.GridView grView; protected global::System.Web.UI.WebControls.GridView grView;
/// <summary> /// <summary>
/// Controllo ods. /// ods 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.ObjectDataSource ods; protected global::System.Web.UI.WebControls.ObjectDataSource ods;
} }
} }
+2
View File
@@ -5,6 +5,7 @@
<asp:HiddenField runat="server" ID="hfStatus" /> <asp:HiddenField runat="server" ID="hfStatus" />
<asp:HiddenField runat="server" ID="hfStatusEnd" /> <asp:HiddenField runat="server" ID="hfStatusEnd" />
<asp:HiddenField ID="hfBatchID" runat="server" /> <asp:HiddenField ID="hfBatchID" runat="server" />
<asp:HiddenField ID="hfMachine" runat="server" />
<asp:FormView ID="frmView" runat="server" Width="100%" DataKeyNames="SheetID" DataSourceID="ods"> <asp:FormView ID="frmView" runat="server" Width="100%" DataKeyNames="SheetID" DataSourceID="ods">
<ItemTemplate> <ItemTemplate>
<div runat="server" id="divBlock" class='<%# "row small alert border-thick px-0 " + getCss(Eval("ShStatus")) %>' role="alert"> <div runat="server" id="divBlock" class='<%# "row small alert border-thick px-0 " + getCss(Eval("ShStatus")) %>' role="alert">
@@ -83,5 +84,6 @@
<asp:ControlParameter ControlID="hfBatchID" DefaultValue="0" Name="BatchID" PropertyName="Value" Type="Int32" /> <asp:ControlParameter ControlID="hfBatchID" DefaultValue="0" Name="BatchID" PropertyName="Value" Type="Int32" />
<asp:ControlParameter ControlID="hfStatus" DefaultValue="-1" Name="ShStatusStart" PropertyName="Value" Type="Int32" /> <asp:ControlParameter ControlID="hfStatus" DefaultValue="-1" Name="ShStatusStart" PropertyName="Value" Type="Int32" />
<asp:ControlParameter ControlID="hfStatusEnd" DefaultValue="-1" Name="ShStatusEnd" PropertyName="Value" Type="Int32" /> <asp:ControlParameter ControlID="hfStatusEnd" DefaultValue="-1" Name="ShStatusEnd" PropertyName="Value" Type="Int32" />
<asp:ControlParameter ControlID="hfMachine" DefaultValue="" Name="Machine" PropertyName="Value" Type="String" />
</SelectParameters> </SelectParameters>
</asp:ObjectDataSource> </asp:ObjectDataSource>
@@ -54,6 +54,18 @@ namespace NKC_WF.WebUserControls
} }
} }
public string MachineSel
{
get
{
return hfMachine.Value;
}
set
{
hfMachine.Value = value;
}
}
public string getCss(object _status) public string getCss(object _status)
{ {
string answ = ""; string answ = "";
+33 -22
View File
@@ -1,59 +1,70 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <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
{
public partial class cmp_ML_ShDet { public partial class cmp_ML_ShDet
{
/// <summary> /// <summary>
/// Controllo hfStatus. /// hfStatus 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.HiddenField hfStatus; protected global::System.Web.UI.WebControls.HiddenField hfStatus;
/// <summary> /// <summary>
/// Controllo hfStatusEnd. /// hfStatusEnd 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.HiddenField hfStatusEnd; protected global::System.Web.UI.WebControls.HiddenField hfStatusEnd;
/// <summary> /// <summary>
/// Controllo hfBatchID. /// hfBatchID 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.HiddenField hfBatchID; protected global::System.Web.UI.WebControls.HiddenField hfBatchID;
/// <summary> /// <summary>
/// Controllo frmView. /// hfMachine 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.HiddenField hfMachine;
/// <summary>
/// frmView 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.FormView frmView; protected global::System.Web.UI.WebControls.FormView frmView;
/// <summary> /// <summary>
/// Controllo ods. /// ods 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.ObjectDataSource ods; protected global::System.Web.UI.WebControls.ObjectDataSource ods;
} }
@@ -69,7 +69,7 @@ namespace NKC_WF.WebUserControls
string baseCurr = memLayer.ML.CRS("servBasePath").ToLower(); string baseCurr = memLayer.ML.CRS("servBasePath").ToLower();
try try
{ {
var tabSheets = DLMan.taSHL.getBySheetId(SheetId); var tabSheets = DLMan.taSHL.getBySheetId(SheetId, "");
if (tabSheets.Count > 0) if (tabSheets.Count > 0)
{ {
filename = tabSheets[0].DrawFilePath.ToLower().Replace(baseOrig, baseCurr); filename = tabSheets[0].DrawFilePath.ToLower().Replace(baseOrig, baseCurr);
+4 -3
View File
@@ -1,6 +1,7 @@
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_MachSem.ascx.cs" Inherits="NKC_WF.WebUserControls.cmp_MachSem" %> <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_MachSem.ascx.cs" Inherits="NKC_WF.WebUserControls.cmp_MachSem" %>
<asp:HiddenField runat="server" ID="hfMachine" Value="NE00" /> <asp:HiddenField runat="server" ID="hfMachine" Value="NE00" />
<asp:HiddenField runat="server" ID="hfShowSemap" Value="true" />
<asp:HiddenField runat="server" ID="hfMachClass" Value="light" /> <asp:HiddenField runat="server" ID="hfMachClass" Value="light" />
<asp:HiddenField runat="server" ID="hfStat01" Value="N.A." /> <asp:HiddenField runat="server" ID="hfStat01" Value="N.A." />
<asp:HiddenField runat="server" ID="hfStat02" Value="N.A." /> <asp:HiddenField runat="server" ID="hfStat02" Value="N.A." />
@@ -25,16 +26,16 @@
<asp:Timer ID="timerLoad" runat="server" Interval="2000" OnTick="timerLoad_Tick"></asp:Timer> <asp:Timer ID="timerLoad" runat="server" Interval="2000" OnTick="timerLoad_Tick"></asp:Timer>
<div class="row small py-0" runat="server" id="divRuntime"> <div class="row small py-0" runat="server" id="divRuntime">
<div class="col-2 pr-0"> <div class="col-2 pr-0">
<asp:LinkButton runat="server" ID="lbtReset" class="btn btn-info btn-block text-center" OnClick="lbtReset_Click"><i class="fa fa-refresh" aria-hidden="true"></i>&nbsp;<%: hfMachine.Value %></asp:LinkButton> <asp:LinkButton runat="server" ID="lbtReset" class="btn btn-info btn-block text-center" OnClick="lbtReset_Click"><i class="fa fa-refresh" aria-hidden="true"></i>&nbsp;<%: hfMachine.Value %>&nbsp;<i class="fa fa-link text-success" aria-hidden="true" runat="server" id="icnLiveOk"></i> <i class="fa fa-chain-broken text-danger" aria-hidden="true" runat="server" id="icnLiveKo"></i></asp:LinkButton>
</div> </div>
<div class="col-10"> <div class="col-10">
<div class="d-flex text-center"> <div class="d-flex text-center">
<div class="py-1 px-2 table-<%: hfCss01.Value %> flex-fill"> <div class="py-1 px-2 bg-<%: hfCss01.Value %> flex-fill">
<b><i class="fa fa-qrcode" aria-hidden="true"></i>&nbsp;<%: traduci("print") %>&nbsp;|&nbsp;<%: hfCode01.Value %></b><div class="small"> <b><i class="fa fa-qrcode" aria-hidden="true"></i>&nbsp;<%: traduci("print") %>&nbsp;|&nbsp;<%: hfCode01.Value %></b><div class="small">
<%: hfStat01.Value %> <%: hfStat01.Value %>
</div> </div>
</div> </div>
<div class="py-1 px-2 table-<%: hfCss02.Value %> flex-fill"> <div class="py-1 px-2 bg-<%: hfCss02.Value %> flex-fill mx-1">
<b><i class="fa fa-cogs" aria-hidden="true"></i>&nbsp;<%: traduci("CNC") %>&nbsp;|&nbsp;<%: hfCode02.Value %></b><div class="small"> <b><i class="fa fa-cogs" aria-hidden="true"></i>&nbsp;<%: traduci("CNC") %>&nbsp;|&nbsp;<%: hfCode02.Value %></b><div class="small">
<%: hfStat02.Value %> <%: hfStat02.Value %>
</div> </div>
+36 -6
View File
@@ -52,6 +52,22 @@ namespace NKC_WF.WebUserControls
} }
} }
public bool showSemaphore
{
get
{
bool answ = false;
bool.TryParse(hfShowSemap.Value, out answ);
return answ;
}
set
{
hfShowSemap.Value = $"{value}";
upnlTitle.Visible = value;
}
}
#endregion Public Properties #endregion Public Properties
#region Private Methods #region Private Methods
@@ -65,16 +81,15 @@ namespace NKC_WF.WebUserControls
lbtReset.Attributes.Add("class", $"btn btn-block text-center btn-{hfMachClass.Value}"); lbtReset.Attributes.Add("class", $"btn btn-block text-center btn-{hfMachClass.Value}");
} }
private DS_App.StatusDecodeRow getState(List<NKC_SDK.MachineStatData> currState, string name) private DS_App.StatusDecodeRow getState(NKC_SDK.MachineStatData currState, string station)
{ {
// recupero dati // recupero dati
DS_App.StatusDecodeRow thisState = null; DS_App.StatusDecodeRow thisState = null;
try try
{ {
var currInfo = currState.Where(x => x.Machine == currMachine).FirstOrDefault(); if (currState != null)
if (currInfo != null)
{ {
var lastState = currInfo.Records.Where(x => x.Station == name).OrderByDescending(x => x.DtRecord).FirstOrDefault(); var lastState = currState.Records.Where(x => x.Station == station).OrderByDescending(x => x.DtRecord).FirstOrDefault();
if (lastState == null) if (lastState == null)
{ {
// aggiungo ND // aggiungo ND
@@ -82,7 +97,7 @@ namespace NKC_WF.WebUserControls
else else
{ {
// verifico la decodifica x ognuno // verifico la decodifica x ognuno
thisState = ComLib.checkStationDecode(name, lastState.Code); thisState = ComLib.checkStationDecode(station, lastState.Code);
} }
} }
} }
@@ -111,6 +126,10 @@ namespace NKC_WF.WebUserControls
hfMachine.Value = currMachine; hfMachine.Value = currMachine;
checkVisibility(); checkVisibility();
lbtReset.DataBind(); lbtReset.DataBind();
if (!Page.IsPostBack)
{
doUpdate();
}
} }
protected void timerLoad_Tick(object sender, EventArgs e) protected void timerLoad_Tick(object sender, EventArgs e)
@@ -136,7 +155,7 @@ namespace NKC_WF.WebUserControls
hfStat03.Value = "UNKNOWN"; hfStat03.Value = "UNKNOWN";
// leggo da redis lo status // leggo da redis lo status
var currState = ComLib.prodMachStateDataGet(); var currState = ComLib.prodMachStateDataGet(currMachine);
// traduco! // traduco!
DS_App.StatusDecodeRow state01 = getState(currState, "PRINTER"); DS_App.StatusDecodeRow state01 = getState(currState, "PRINTER");
@@ -162,6 +181,17 @@ namespace NKC_WF.WebUserControls
hfCss03.Value = state03.Css; hfCss03.Value = state03.Css;
hfStat03.Value = state03.Descript; hfStat03.Value = state03.Descript;
} }
icnLiveOk.Visible = false;
icnLiveKo.Visible = false;
if (ComLib.getMachLiveStatus(currMachine))
{
icnLiveOk.Visible = true;
}
else
{
icnLiveKo.Visible = true;
}
} }
#endregion Public Methods #endregion Public Methods
+27
View File
@@ -23,6 +23,15 @@ namespace NKC_WF.WebUserControls
/// </remarks> /// </remarks>
protected global::System.Web.UI.WebControls.HiddenField hfMachine; protected global::System.Web.UI.WebControls.HiddenField hfMachine;
/// <summary>
/// hfShowSemap 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 hfShowSemap;
/// <summary> /// <summary>
/// hfMachClass control. /// hfMachClass control.
/// </summary> /// </summary>
@@ -166,5 +175,23 @@ namespace NKC_WF.WebUserControls
/// To modify move field declaration from designer file to code-behind file. /// To modify move field declaration from designer file to code-behind file.
/// </remarks> /// </remarks>
protected global::System.Web.UI.WebControls.LinkButton lbtReset; protected global::System.Web.UI.WebControls.LinkButton lbtReset;
/// <summary>
/// icnLiveOk control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlGenericControl icnLiveOk;
/// <summary>
/// icnLiveKo control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlGenericControl icnLiveKo;
} }
} }
+2 -2
View File
@@ -19,7 +19,7 @@
<asp:LinkButton runat="server" ID="lbtSendEstim" CssClass="btn btn-sm btn-block btn-info" <asp:LinkButton runat="server" ID="lbtSendEstim" CssClass="btn btn-sm btn-block btn-info"
OnClick="lbtSendEstim_Click" OnClick="lbtSendEstim_Click"
OnClientClick='<%# SteamWare.jsUtils.getCBE("ConfirmStartEstim") %>' OnClientClick='<%# SteamWare.jsUtils.getCBE("ConfirmStartEstim") %>'
Visible='<%# (checkStatus(Eval("Status"), NKC_SDK.BatchStatus.Errors) || checkStatus(Eval("Status"), NKC_SDK.BatchStatus.Imported)) && canStartNew %>'><%# traduci("SendToEstim") %></asp:LinkButton> Visible='<%# (checkStatus(Eval("Status"), NKC_SDK.BatchStatus.Imported) || checkStatus(Eval("Status"), NKC_SDK.BatchStatus.Errors)) && canStartNew %>'><%# traduci("SendToEstim") %></asp:LinkButton>
<asp:LinkButton runat="server" ID="lbtStopEstim" CssClass="btn btn-sm btn-block btn-dark" <asp:LinkButton runat="server" ID="lbtStopEstim" CssClass="btn btn-sm btn-block btn-dark"
OnClick="lbtStopEstim_Click" OnClick="lbtStopEstim_Click"
OnClientClick='<%# SteamWare.jsUtils.getCBE("ConfirmStopEstim") %>' OnClientClick='<%# SteamWare.jsUtils.getCBE("ConfirmStopEstim") %>'
@@ -27,7 +27,7 @@
<asp:LinkButton runat="server" ID="lbtSendNesting" CssClass="btn btn-sm btn-block btn-warning" <asp:LinkButton runat="server" ID="lbtSendNesting" CssClass="btn btn-sm btn-block btn-warning"
OnClick="lbtSendNesting_Click" OnClick="lbtSendNesting_Click"
OnClientClick='<%# SteamWare.jsUtils.getCBE("ConfirmStartNest") %>' OnClientClick='<%# SteamWare.jsUtils.getCBE("ConfirmStartNest") %>'
Visible='<%# checkStatus(Eval("Status"), NKC_SDK.BatchStatus.EstimationDone) && !checkType(Eval("BatchType"), NKC_SDK.BatchType.Descendant) && canStartNew %>'><%# traduci("SendToNest") %></asp:LinkButton> Visible='<%# checkStatus(Eval("Status"), NKC_SDK.BatchStatus.EstimationDone) && !checkType(Eval("BatchType"), NKC_SDK.BatchType.Descendant) && canStartNew && isSplitted %>'><%# traduci("SendToNest") %></asp:LinkButton>
<asp:LinkButton runat="server" ID="lbtStopNesting" CssClass="btn btn-sm btn-block btn-dark" <asp:LinkButton runat="server" ID="lbtStopNesting" CssClass="btn btn-sm btn-block btn-dark"
OnClick="lbtStopNesting_Click" OnClick="lbtStopNesting_Click"
OnClientClick='<%# SteamWare.jsUtils.getCBE("ConfirmStopNest") %>' OnClientClick='<%# SteamWare.jsUtils.getCBE("ConfirmStopNest") %>'
+58 -35
View File
@@ -87,6 +87,14 @@ namespace NKC_WF.WebUserControls
raiseEvent(); raiseEvent();
} }
/// <summary>
/// Verifica se il batch sia stato splittato
/// </summary>
public bool isSplitted
{
get => cmp_batchDetailSplit.isSplitted;
}
/// <summary> /// <summary>
/// Riporta nesting a stato ESTIMATED /// Riporta nesting a stato ESTIMATED
/// </summary> /// </summary>
@@ -96,7 +104,7 @@ namespace NKC_WF.WebUserControls
{ {
// ri-assegnazione ordini/kit a batch ancestor // ri-assegnazione ordini/kit a batch ancestor
DLMan.taOLT.setBatchSplit(BatchId, false); DLMan.taOLT.setBatchSplit(BatchId, false);
// registro accettazione Nesting // registro reset Nesting
DLMan.taBL.refuseNesting(BatchId, DLMan.CodSoggCurrUser); DLMan.taBL.refuseNesting(BatchId, DLMan.CodSoggCurrUser);
raiseEvent(); raiseEvent();
} }
@@ -107,11 +115,38 @@ namespace NKC_WF.WebUserControls
ComLib.sendMaterials(); ComLib.sendMaterials();
ComLib.sendBatchReq(BatchId, "Estimation", 3, false, 0); ComLib.sendBatchReq(BatchId, "Estimation", 3, false, 0);
// ri-assegnazione ordini/kit a batch ancestor
if (BatchIsAncestor)
{
DLMan.taOLT.setBatchSplit(BatchId, false);
// registro reset Nesting
DLMan.taBL.refuseNesting(BatchId, DLMan.CodSoggCurrUser);
// resetto i batch child a 0 se presenti
resetChildBatch();
// elimino gli orderExtTree
DLMan.taOLT.deleteByBatch(BatchId);
}
// registro su DB nesting iniziato... // registro su DB nesting iniziato...
DLMan.taBL.updateStatus(BatchId, (int)BatchStatus.EstimationRequested, "", 0); DLMan.taBL.updateStatus(BatchId, (int)BatchStatus.EstimationRequested, "", 0);
raiseEvent(); raiseEvent();
} }
private void resetChildBatch()
{
var tabDesc = ComLib.BatchDescendant(BatchId);
if (tabDesc != null && tabDesc.Count > 0)
{
foreach (var item in tabDesc)
{
DLMan.taBL.updateStatus(item.BatchID, (int)BatchStatus.Imported, "", -1);
// elimino order tree eventuale...
DLMan.taOLT.deleteByBatch(item.BatchID);
}
}
}
protected void lbtSendNesting_Click(object sender, EventArgs e) protected void lbtSendNesting_Click(object sender, EventArgs e)
{ {
// invia a redis a a richiesta... // invia a redis a a richiesta...
@@ -121,40 +156,6 @@ namespace NKC_WF.WebUserControls
{ {
// effettuo VERA ri-assegnazione ordini/kit a nuovi batch // effettuo VERA ri-assegnazione ordini/kit a nuovi batch
DLMan.taOLT.setBatchSplit(BatchId, true); DLMan.taOLT.setBatchSplit(BatchId, true);
#if false
// invio il PRIMO batch descendant
var tabDesc = ComLib.BatchDescendant(BatchId);
if (tabDesc != null && tabDesc.Count > 0)
{
bool batchSent = false;
// ciclo fino a trovare un batch VALIDO (= contiene ordini)
foreach (var item in tabDesc)
{
// 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)
{
//--> approvo direttamente e passo al successivo...
if (tabItems.Count == 0)
{
// registro su DB batch DISCARDED (NON HA PEZZI...)
DLMan.taBL.updateStatus(item.BatchID, (int)BatchStatus.Discarded, "", -1);
}
// --> invio batch
else
{
ComLib.sendBatchReq(item.BatchID, "Nesting", 2, false);
// registro su DB nesting iniziato...
DLMan.taBL.updateStatus(item.BatchID, (int)BatchStatus.NestRequested, "", -1);
batchSent = true;
}
}
if (batchSent)
break;
}
}
#endif
bool fatto = ComLib.checkSendBatchSplit(BatchId); bool fatto = ComLib.checkSendBatchSplit(BatchId);
} }
else else
@@ -174,6 +175,10 @@ namespace NKC_WF.WebUserControls
ComLib.resetBatchReq(); ComLib.resetBatchReq();
// registro su DB nesting iniziato... // registro su DB nesting iniziato...
DLMan.taBL.updateStatus(BatchId, (int)BatchStatus.Imported, "", -1); DLMan.taBL.updateStatus(BatchId, (int)BatchStatus.Imported, "", -1);
if (BatchIsAncestor)
{
resetChildBatch();
}
raiseEvent(); raiseEvent();
} }
@@ -183,11 +188,29 @@ namespace NKC_WF.WebUserControls
ComLib.resetBatchReq(); ComLib.resetBatchReq();
// registro su DB nesting iniziato... // registro su DB nesting iniziato...
DLMan.taBL.updateStatus(BatchId, (int)BatchStatus.EstimationDone, "", -1); DLMan.taBL.updateStatus(BatchId, (int)BatchStatus.EstimationDone, "", -1);
if (BatchIsAncestor)
{
var tabDesc = ComLib.BatchDescendant(BatchId);
if (tabDesc != null && tabDesc.Count > 0)
{
foreach (var item in tabDesc)
{
DLMan.taBL.updateStatus(item.BatchID, (int)BatchStatus.EstimationDone, "", -1);
}
}
}
raiseEvent(); raiseEvent();
} }
protected void Page_Load(object sender, EventArgs e) protected void Page_Load(object sender, EventArgs e)
{ {
cmp_batchDetailSplit.eh_doReset += Cmp_batchDetailSplit_eh_doReset;
}
private void Cmp_batchDetailSplit_eh_doReset(object sender, EventArgs e)
{
frmView.DataBind();
fixDisplayDesc();
} }
/// <summary> /// <summary>
@@ -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))
{ {
@@ -188,8 +188,12 @@ namespace NKC_WF.WebUserControls
{ {
// ordino le medie // ordino le medie
workRatio.Sort(); workRatio.Sort();
// elimino le + basse quanti materiali ci sono... // controllo di averne + di 1...
workRatio.RemoveRange(0, materialsList.Count); if (workRatio.Count > materialsList.Count * 2)
{
// elimino le + basse quanti materiali ci sono...
workRatio.RemoveRange(0, materialsList.Count);
}
double avgRatio = workRatio.Average(); double avgRatio = workRatio.Average();
double minRatio = workRatio.Min(); double minRatio = workRatio.Min();
double maxRatio = workRatio.Max(); double maxRatio = workRatio.Max();
@@ -254,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
} }
} }
@@ -20,6 +20,7 @@
<asp:HiddenField runat="server" ID="hfNeedSave" /> <asp:HiddenField runat="server" ID="hfNeedSave" />
<asp:HiddenField runat="server" ID="hfLastRatio" /> <asp:HiddenField runat="server" ID="hfLastRatio" />
<asp:HiddenField runat="server" ID="hfFullTime" /> <asp:HiddenField runat="server" ID="hfFullTime" />
<asp:HiddenField runat="server" ID="hfIsSplit" Value="false" />
<asp:TextBox runat="server" ID="txtRatio" TextMode="Range" CssClass="form-control-range" AutoPostBack="true" OnTextChanged="txtRatio_TextChanged" /> <asp:TextBox runat="server" ID="txtRatio" TextMode="Range" CssClass="form-control-range" AutoPostBack="true" OnTextChanged="txtRatio_TextChanged" />
</div> </div>
<div class="col-1 font-weight-bold"> <div class="col-1 font-weight-bold">
@@ -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
@@ -178,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
@@ -209,6 +214,11 @@ namespace NKC_WF.WebUserControls
{ {
// imposto colore btn ROSSO... // imposto colore btn ROSSO...
baseCssClass = "btn btn-danger btn-block"; baseCssClass = "btn btn-danger btn-block";
isSplitted = false;
}
else
{
isSplitted = true;
} }
lbtBalance.CssClass = txtRatio.Visible ? baseCssClass : baseCssClass + " disabled"; lbtBalance.CssClass = txtRatio.Visible ? baseCssClass : baseCssClass + " disabled";
cmp_orderExtListNE01.Visible = txtRatio.Visible; cmp_orderExtListNE01.Visible = txtRatio.Visible;
@@ -508,6 +518,7 @@ namespace NKC_WF.WebUserControls
rebalanceOrder(); rebalanceOrder();
fixChildBatch(); fixChildBatch();
checkDisplayMode(); checkDisplayMode();
raiseReset();
} }
#endregion Public Methods #endregion Public Methods
@@ -68,6 +68,15 @@ namespace NKC_WF.WebUserControls
/// </remarks> /// </remarks>
protected global::System.Web.UI.WebControls.HiddenField hfFullTime; protected global::System.Web.UI.WebControls.HiddenField hfFullTime;
/// <summary>
/// hfIsSplit 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 hfIsSplit;
/// <summary> /// <summary>
/// txtRatio control. /// txtRatio control.
/// </summary> /// </summary>
@@ -10,16 +10,15 @@
<asp:Label runat="server" ID="lblBatchType" ToolTip='<%# tooltipByType(Eval("BatchType")) %>'><span style="font-size: 1.3em;"><i class='<%# cssIconByType(Eval("BatchType")) %>'></i></span>&nbsp;&nbsp;<b><%# Eval("Takt") %></b></asp:Label> <asp:Label runat="server" ID="lblBatchType" ToolTip='<%# tooltipByType(Eval("BatchType")) %>'><span style="font-size: 1.3em;"><i class='<%# cssIconByType(Eval("BatchType")) %>'></i></span>&nbsp;&nbsp;<b><%# Eval("Takt") %></b></asp:Label>
</div> </div>
<div class="col-3 text-right"> <div class="col-3 text-right">
# KIT/Parts: <b><%# Eval("NumOrders") %>/<%# Eval("NumItems") %></b> # KIT/Parts: <b><%# Eval("NumOrders") %>/<%# Eval("NumItems") %></b></div>
</div>
<div class="col-3 text-right"> <div class="col-3 text-right">
Estim.Time: <b><%# Eval("TotalTime","{0:N2}") %></b> min Estim.Time: <b><%# Eval("TotalTime","{0:N2}") %></b> min
</div> </div>
</div> </div>
<div class="row "> <div class="row ">
<div class="col-4 text-right"> <div class="col-4 text-right">
<asp:HyperLink runat="server" ID="hlShowErr" NavigateUrl='<%# $"../site/ErrorsLog?PUID=B.{Eval("BatchID")}" %>' CssClass="text-warning" Visible='<%# Eval("NumErrPre").ToString()!="0" %>' Target="_blank" ToolTip="Show errors"><i class="fa fa-exclamation-triangle" aria-hidden="true"></i> <%# $"{Eval("Errors")} (tot: {Eval("NumErrPre")} err)" %></asp:HyperLink> <asp:HyperLink runat="server" ID="hlShowErr01" NavigateUrl='<%# $"../site/ErrorsLog?PUID=B.{Eval("BatchID")}" %>' CssClass="text-warning" Visible='<%# Eval("NumErrPre").ToString()!="0" %>' Target="_blank" ToolTip="Show errors"><i class="fa fa-exclamation-triangle" aria-hidden="true"></i> <%# $"{Eval("Errors")} (tot: {Eval("NumErrPre")} err)" %></asp:HyperLink>
<asp:HyperLink runat="server" ID="HyperLink1" NavigateUrl='<%# $"../site/ErrorsLog?PUID={Eval("EnvNum")}" %>' CssClass="text-danger" Visible='<%# Eval("NumErr").ToString()!="0" %>' Target="_blank" ToolTip="Show errors"><i class="fa fa-exclamation-triangle" aria-hidden="true"></i> <%# $"{Eval("Errors")} (tot: {Eval("NumErr")} err)" %></asp:HyperLink> <asp:HyperLink runat="server" ID="hlShowErr02" NavigateUrl='<%# $"../site/ErrorsLog?PUID={Eval("EnvNum")}" %>' CssClass="text-danger" Visible='<%# Eval("NumErr").ToString()!="0" %>' Target="_blank" ToolTip="Show errors"><i class="fa fa-exclamation-triangle" aria-hidden="true"></i> <%# $"{Eval("Errors")} (tot: {Eval("NumErr")} err)" %></asp:HyperLink>
</div> </div>
<div class="col-8 text-left"> <div class="col-8 text-left">
<div class="d-flex"> <div class="d-flex">
@@ -204,6 +204,19 @@ namespace NKC_WF.WebUserControls
#region Protected Methods #region Protected Methods
public bool showSplit
{
get
{
return chkShowSplit.Checked;
}
set
{
chkShowSplit.Checked = value;
}
}
protected void chkShowSplit_CheckedChanged(object sender, EventArgs e) protected void chkShowSplit_CheckedChanged(object sender, EventArgs e)
{ {
// deseleziono... // deseleziono...
+41 -16
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">
<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>
@@ -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})";
}
} }
} }
@@ -811,7 +811,7 @@ namespace NKC_WF.WebUserControls
protected void lbtResetSel_Click(object sender, EventArgs e) protected void lbtResetSel_Click(object sender, EventArgs e)
{ {
var tabSheet = DLMan.taSHL.getByItemID(itemIdSelected); var tabSheet = DLMan.taSHL.getByItemID(itemIdSelected, PlaceCod);
if (tabSheet.Count == 1) if (tabSheet.Count == 1)
{ {
resetShowData(); resetShowData();
@@ -858,7 +858,7 @@ namespace NKC_WF.WebUserControls
{ {
// FORSE 5/5?!? // FORSE 5/5?!?
DataLayer DLMan = new DataLayer(); DataLayer DLMan = new DataLayer();
var sheetList = DLMan.taSHL.getByMLStatus(PackListID, 3, 5); var sheetList = DLMan.taSHL.getByMLStatus(PackListID, 3, 5, PlaceCod);
if (sheetList.Count > 0) if (sheetList.Count > 0)
{ {
SheetID = sheetList[0].SheetID; SheetID = sheetList[0].SheetID;
@@ -66,7 +66,7 @@ namespace NKC_WF.WebUserControls
{ {
// FORSE 5/5?!? // FORSE 5/5?!?
DataLayer DLMan = new DataLayer(); DataLayer DLMan = new DataLayer();
var sheetList = DLMan.taSHL.getByMLStatus(PackListID, 3, 5); var sheetList = DLMan.taSHL.getByMLStatus(PackListID, 3, 5, MachineSel);
if (sheetList.Count > 0) if (sheetList.Count > 0)
{ {
SheetID = sheetList[0].SheetID; SheetID = sheetList[0].SheetID;
+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
} }
} }
@@ -6,6 +6,7 @@
<asp:HiddenField runat="server" ID="hfBatchID" /> <asp:HiddenField runat="server" ID="hfBatchID" />
<asp:HiddenField runat="server" ID="hfMachineSel" />
<div class="row"> <div class="row">
<div class="col-12 col-lg-6"> <div class="col-12 col-lg-6">
<uc1:cmp_MU_bins runat="server" ID="cmp_MU_bins" ShowQr="false" ShowPrint="true" /> <uc1:cmp_MU_bins runat="server" ID="cmp_MU_bins" ShowQr="false" ShowPrint="true" />
+24 -2
View File
@@ -11,11 +11,26 @@ namespace NKC_WF.WebUserControls
{ {
protected void Page_Load(object sender, EventArgs e) protected void Page_Load(object sender, EventArgs e)
{ {
if(!Page.IsPostBack) if (!Page.IsPostBack)
{ {
} }
} }
/// <summary>
/// Macchina selezionata
/// </summary>
public string MachineSel
{
get
{
return hfMachineSel.Value;
}
set
{
hfMachineSel.Value = value;
cmp_MU_bins.MachineSel = value;
cmp_MU_carts.MachineSel = value;
}
}
/// <summary> /// <summary>
/// BatchId corrente... /// BatchId corrente...
/// </summary> /// </summary>
@@ -26,6 +41,13 @@ namespace NKC_WF.WebUserControls
hfBatchID.Value = value.ToString(); hfBatchID.Value = value.ToString();
cmp_MU_bins.BatchId = value; cmp_MU_bins.BatchId = value;
cmp_MU_carts.BatchId = value; cmp_MU_carts.BatchId = value;
// calcolo macchina
var tabBL = DLMan.taBL.getByKey(value);
if (tabBL != null && tabBL.Count > 0)
{
var rigaBL = tabBL[0];
MachineSel = rigaBL.PlaceCod;
}
} }
get get
{ {
+23 -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.WebUserControls namespace NKC_WF.WebUserControls
@@ -15,29 +15,38 @@ namespace NKC_WF.WebUserControls
{ {
/// <summary> /// <summary>
/// Controllo hfBatchID. /// hfBatchID 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.HiddenField hfBatchID; protected global::System.Web.UI.WebControls.HiddenField hfBatchID;
/// <summary> /// <summary>
/// Controllo cmp_MU_bins. /// hfMachineSel 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.HiddenField hfMachineSel;
/// <summary>
/// cmp_MU_bins control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks> /// </remarks>
protected global::NKC_WF.WebUserControls.cmp_MU_bins cmp_MU_bins; protected global::NKC_WF.WebUserControls.cmp_MU_bins cmp_MU_bins;
/// <summary> /// <summary>
/// Controllo cmp_MU_carts. /// cmp_MU_carts 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_MU_carts cmp_MU_carts; protected global::NKC_WF.WebUserControls.cmp_MU_carts cmp_MU_carts;
} }
+1 -53
View File
@@ -2,10 +2,9 @@
<%@ Register Src="~/WebUserControls/cmp_ItemDet.ascx" TagPrefix="uc1" TagName="cmp_ItemDet" %> <%@ Register Src="~/WebUserControls/cmp_ItemDet.ascx" TagPrefix="uc1" TagName="cmp_ItemDet" %>
<div class="card text-center border-primary" style="width: 100%;"> <div class="card text-center border-primary" style="width: 100%;">
<asp:HiddenField runat="server" ID="hfNum" /> <asp:HiddenField runat="server" ID="hfNum" />
<asp:HiddenField ID="hfMachine" runat="server" Value="0" />
<asp:HiddenField ID="hfCountDown" runat="server" Value="0" /> <asp:HiddenField ID="hfCountDown" runat="server" Value="0" />
<asp:HiddenField ID="hfBatchId" runat="server" Value="0" /> <asp:HiddenField ID="hfBatchId" runat="server" Value="0" />
<asp:HiddenField ID="hfSheetId" runat="server" Value="0" /> <asp:HiddenField ID="hfSheetId" runat="server" Value="0" />
@@ -35,57 +34,6 @@
<div runat="server" id="divImg" class="col-12"> <div runat="server" id="divImg" class="col-12">
<asp:Image runat="server" ID="imgQrMain" CssClass="img-fluid" /> <asp:Image runat="server" ID="imgQrMain" CssClass="img-fluid" />
</div> </div>
<%--<div class="col-12">
<script src="//mozilla.github.io/pdf.js/build/pdf.js"></script>
<script>
function loadPdf() {
var url = '<%: lblPdf.Text %>';
//var url = '../temp/119752.pdf';
// Loaded via <script> tag, create shortcut to access PDF.js exports.
var pdfjsLib = window['pdfjs-dist/build/pdf'];
// The workerSrc property shall be specified.
pdfjsLib.GlobalWorkerOptions.workerSrc = '//mozilla.github.io/pdf.js/build/pdf.worker.js';
// Asynchronous download of PDF
var loadingTask = pdfjsLib.getDocument(url);
loadingTask.promise.then(function (pdf) {
console.log('PDF loaded');
// Fetch the first page
var pageNumber = 1;
pdf.getPage(pageNumber).then(function (page) {
console.log('Page loaded');
var scale = 1.5;
var viewport = page.getViewport({ scale: scale });
// Prepare canvas using PDF page dimensions
var canvas = document.getElementById('<%: canvasPdf.ClientID %>');
var context = canvas.getContext('2d');
canvas.height = viewport.height;
canvas.width = viewport.width;
// Render PDF page into canvas context
var renderContext = {
canvasContext: context,
viewport: viewport
};
var renderTask = page.render(renderContext);
renderTask.promise.then(function () {
console.log('Page rendered');
});
});
}, function (reason) {
// PDF loading error
console.error(reason);
});
};
</script>
<canvas runat="server" id="canvasPdf"></canvas>
</div>--%>
</div> </div>
</div> </div>
</div> </div>
+14 -3
View File
@@ -17,9 +17,20 @@ namespace NKC_WF.WebUserControls
public partial class cmp_secScreen : BaseUserControl public partial class cmp_secScreen : BaseUserControl
{ {
/// <summary> /// <summary>
/// Codice macchina (HARD CODED x ora) /// Codice macchina
/// </summary> /// </summary>
protected string machine = "WRK001"; public string machine
{
get
{
return hfMachine.Value;
}
set
{
hfMachine.Value = value;
setCurrData();
}
}
public int countDown public int countDown
{ {
@@ -277,7 +288,7 @@ namespace NKC_WF.WebUserControls
private void setCurrData() private void setCurrData()
{ {
// recupero bunk corrente... // recupero bunk corrente...
DS_App.StackListRow currBunk = ComLib.getCurrBunk(); DS_App.StackListRow currBunk = ComLib.getCurrBunk(machine);
if (currBunk != null) if (currBunk != null)
{ {
DS_App.SheetListRow currSheet = ComLib.getCurrSheet(currBunk.BatchID, machine); DS_App.SheetListRow currSheet = ComLib.getCurrSheet(currBunk.BatchID, machine);
+59 -50
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,137 +15,146 @@ namespace NKC_WF.WebUserControls
{ {
/// <summary> /// <summary>
/// Controllo hfNum. /// hfNum 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.HiddenField hfNum; protected global::System.Web.UI.WebControls.HiddenField hfNum;
/// <summary> /// <summary>
/// Controllo hfCountDown. /// hfMachine 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.HiddenField hfMachine;
/// <summary>
/// hfCountDown 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.HiddenField hfCountDown; protected global::System.Web.UI.WebControls.HiddenField hfCountDown;
/// <summary> /// <summary>
/// Controllo hfBatchId. /// hfBatchId 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.HiddenField hfBatchId; protected global::System.Web.UI.WebControls.HiddenField hfBatchId;
/// <summary> /// <summary>
/// Controllo hfSheetId. /// hfSheetId 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.HiddenField hfSheetId; protected global::System.Web.UI.WebControls.HiddenField hfSheetId;
/// <summary> /// <summary>
/// Controllo hfItemPdf. /// hfItemPdf 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.HiddenField hfItemPdf; protected global::System.Web.UI.WebControls.HiddenField hfItemPdf;
/// <summary> /// <summary>
/// Controllo hfItemDtmx. /// hfItemDtmx 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.HiddenField hfItemDtmx; protected global::System.Web.UI.WebControls.HiddenField hfItemDtmx;
/// <summary> /// <summary>
/// Controllo hfItemCode. /// hfItemCode 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.HiddenField hfItemCode; protected global::System.Web.UI.WebControls.HiddenField hfItemCode;
/// <summary> /// <summary>
/// Controllo timerRefresh. /// timerRefresh 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 timerRefresh; protected global::System.Web.UI.Timer timerRefresh;
/// <summary> /// <summary>
/// Controllo hlShowCurrSheet. /// hlShowCurrSheet 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 hlShowCurrSheet; protected global::System.Web.UI.WebControls.HyperLink hlShowCurrSheet;
/// <summary> /// <summary>
/// Controllo lblNum. /// lblNum 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.Label lblNum; protected global::System.Web.UI.WebControls.Label lblNum;
/// <summary> /// <summary>
/// Controllo lblMessage. /// lblMessage 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.Label lblMessage; protected global::System.Web.UI.WebControls.Label lblMessage;
/// <summary> /// <summary>
/// Controllo cmp_ItemDet. /// cmp_ItemDet 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_ItemDet cmp_ItemDet; protected global::NKC_WF.WebUserControls.cmp_ItemDet cmp_ItemDet;
/// <summary> /// <summary>
/// Controllo hlPdfOpener. /// hlPdfOpener 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 hlPdfOpener; protected global::System.Web.UI.WebControls.HyperLink hlPdfOpener;
/// <summary> /// <summary>
/// Controllo divImg. /// divImg 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 divImg; protected global::System.Web.UI.HtmlControls.HtmlGenericControl divImg;
/// <summary> /// <summary>
/// Controllo imgQrMain. /// imgQrMain 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.Image imgQrMain; protected global::System.Web.UI.WebControls.Image imgQrMain;
} }
+1 -1
View File
@@ -61,7 +61,7 @@ namespace NKC_WF.WebUserControls
{ {
if (SheetId > 0) if (SheetId > 0)
{ {
var tabSheets = DLMan.taSHL.getBySheetId(SheetId); var tabSheets = DLMan.taSHL.getBySheetId(SheetId, "");
if (tabSheets.Count > 0) if (tabSheets.Count > 0)
{ {
filename = tabSheets[0].DrawFilePath.ToLower().Replace(baseOrig, baseCurr); filename = tabSheets[0].DrawFilePath.ToLower().Replace(baseOrig, baseCurr);
@@ -729,7 +729,7 @@ namespace NKC_WF.WebUserControls
protected void lbtResetSel_Click(object sender, EventArgs e) protected void lbtResetSel_Click(object sender, EventArgs e)
{ {
var tabSheet = DLMan.taSHL.getByItemID(itemIdSelected); var tabSheet = DLMan.taSHL.getByItemID(itemIdSelected, PlaceCod);
if (tabSheet.Count == 1) if (tabSheet.Count == 1)
{ {
resetShowData(); resetShowData();
@@ -836,7 +836,7 @@ namespace NKC_WF.WebUserControls
{ {
// FORSE 5/5?!? // FORSE 5/5?!?
DataLayer DLMan = new DataLayer(); DataLayer DLMan = new DataLayer();
var sheetList = DLMan.taSHL.getByMLStatus(BatchId, 3, 5); var sheetList = DLMan.taSHL.getByMLStatus(BatchId, 3, 5, PlaceCod);
if (sheetList.Count > 0) if (sheetList.Count > 0)
{ {
SheetID = sheetList[0].SheetID; SheetID = sheetList[0].SheetID;
@@ -2,12 +2,11 @@ using SteamWare;
using System; using System;
using System.Web.UI.WebControls; using System.Web.UI.WebControls;
namespace NKC_WF.WebUserControls namespace NKC_WF.WebUserControls
{ {
public partial class mod_lemmiVocab : ApplicationUserControl public partial class mod_lemmiVocab : ApplicationUserControl
{ {
#region protected #region Protected Methods
protected override void aggiornaControlliDataGL() protected override void aggiornaControlliDataGL()
{ {
@@ -39,6 +38,11 @@ namespace NKC_WF.WebUserControls
lblNumRec.Text = ""; lblNumRec.Text = "";
} }
} }
#endregion Protected Methods
#region Public Methods
/// <summary> /// <summary>
/// aggiorna i dati mostrati /// aggiorna i dati mostrati
/// </summary> /// </summary>
@@ -48,6 +52,6 @@ namespace NKC_WF.WebUserControls
grView.DataBind(); grView.DataBind();
} }
#endregion #endregion Public 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
} }
} }
+40 -39
View File
@@ -4,46 +4,47 @@
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server"> <head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title> <title></title>
</head> </head>
<body> <body>
<form id="form1" runat="server"> <form id="form1" runat="server">
<div> <div>
<asp:HiddenField ID="hfStackID" runat="server" /> <asp:HiddenField ID="hfStackID" runat="server" />
<asp:GridView runat="server" ID="grView" AutoGenerateColumns="False" DataKeyNames="SheetID" DataSourceID="ods" AllowSorting="false"> <asp:GridView runat="server" ID="grView" AutoGenerateColumns="False" DataKeyNames="SheetID" DataSourceID="ods" AllowSorting="false">
<EmptyDataTemplate> <EmptyDataTemplate>
No Record No Record
</EmptyDataTemplate> </EmptyDataTemplate>
<Columns> <Columns>
<asp:BoundField DataField="StackId" HeaderText="Bunk" ReadOnly="True" /> <asp:BoundField DataField="StackId" HeaderText="Bunk" ReadOnly="True" />
<asp:BoundField DataField="SheetIndex" HeaderText="Num" ReadOnly="True" /> <asp:BoundField DataField="SheetIndex" HeaderText="Num" ReadOnly="True" />
<asp:BoundField DataField="SheetId" HeaderText="Id" ReadOnly="True" /> <asp:BoundField DataField="SheetId" HeaderText="Id" ReadOnly="True" />
<asp:BoundField DataField="MatExtCode" HeaderText="MatExtCode" ReadOnly="True" /> <asp:BoundField DataField="MatExtCode" HeaderText="MatExtCode" ReadOnly="True" />
<asp:BoundField DataField="MatDesc" HeaderText="MatDesc" ReadOnly="True" /> <asp:BoundField DataField="MatDesc" HeaderText="MatDesc" ReadOnly="True" />
<asp:TemplateField HeaderText="Estim (min:sec)" SortExpression="WrkTimeEst"> <asp:TemplateField HeaderText="Estim (min:sec)" SortExpression="WrkTimeEst">
<ItemTemplate> <ItemTemplate>
<asp:Label ID="lblWrkTimeEst" runat="server" Text='<%# formatMinSec(Eval("WrkTimeEst", "{0:N0}")) %>'></asp:Label> <asp:Label ID="lblWrkTimeEst" runat="server" Text='<%# formatMinSec(Eval("WrkTimeEst", "{0:N0}")) %>'></asp:Label>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="CNC File" SortExpression="WrkTimeEst"> <asp:TemplateField HeaderText="CNC File" SortExpression="WrkTimeEst">
<ItemTemplate> <ItemTemplate>
<asp:Label ID="lblCncFilePath" runat="server" Text='<%# fixFilePath(Eval("CncFilePath")) %>'></asp:Label> <asp:Label ID="lblCncFilePath" runat="server" Text='<%# fixFilePath(Eval("CncFilePath")) %>'></asp:Label>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Draw File" SortExpression="WrkTimeEst"> <asp:TemplateField HeaderText="Draw File" SortExpression="WrkTimeEst">
<ItemTemplate> <ItemTemplate>
<asp:Label ID="lblDrawFilePath" runat="server" Text='<%# fixFilePath(Eval("DrawFilePath")) %>'></asp:Label> <asp:Label ID="lblDrawFilePath" runat="server" Text='<%# fixFilePath(Eval("DrawFilePath")) %>'></asp:Label>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
</Columns> </Columns>
</asp:GridView> </asp:GridView>
<asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="original_{0}" SelectMethod="getByStack" TypeName="AppData.DS_AppTableAdapters.SheetListTableAdapter"> <asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="original_{0}" SelectMethod="getByStack" TypeName="AppData.DS_AppTableAdapters.SheetListTableAdapter">
<SelectParameters> <SelectParameters>
<asp:ControlParameter ControlID="hfStackID" DefaultValue="0" Name="StackID" PropertyName="Value" Type="Int32" /> <asp:ControlParameter ControlID="hfStackID" DefaultValue="0" Name="StackID" PropertyName="Value" Type="Int32" />
</SelectParameters> <asp:Parameter Name="Machine" DefaultValue="" />
</asp:ObjectDataSource> </SelectParameters>
</div> </asp:ObjectDataSource>
</form> </div>
</form>
</body> </body>
</html> </html>
+40 -40
View File
@@ -1,53 +1,53 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <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
{ {
public partial class BunkDetail public partial class BunkDetail
{ {
/// <summary> /// <summary>
/// Controllo form1. /// form1 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.HtmlForm form1; protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary> /// <summary>
/// Controllo hfStackID. /// hfStackID 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.HiddenField hfStackID; protected global::System.Web.UI.WebControls.HiddenField hfStackID;
/// <summary> /// <summary>
/// Controllo grView. /// grView 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.GridView grView; protected global::System.Web.UI.WebControls.GridView grView;
/// <summary> /// <summary>
/// Controllo ods. /// ods 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.ObjectDataSource ods; protected global::System.Web.UI.WebControls.ObjectDataSource ods;
} }
} }
+12 -11
View File
@@ -8,7 +8,7 @@
<package id="bootstrap" version="4.6.0" targetFramework="net462" /> <package id="bootstrap" version="4.6.0" targetFramework="net462" />
<package id="Chart.js" version="2.9.3" targetFramework="net462" /> <package id="Chart.js" version="2.9.3" targetFramework="net462" />
<package id="Crc32C.NET" version="1.0.5.0" targetFramework="net462" /> <package id="Crc32C.NET" version="1.0.5.0" targetFramework="net462" />
<package id="DnsClient" version="1.4.0" targetFramework="net462" /> <package id="DnsClient" version="1.5.0" targetFramework="net462" />
<package id="elmah" version="1.2.2" targetFramework="net462" /> <package id="elmah" version="1.2.2" targetFramework="net462" />
<package id="elmah.corelibrary" version="1.2.2" targetFramework="net462" /> <package id="elmah.corelibrary" version="1.2.2" targetFramework="net462" />
<package id="FontAwesome" version="4.7.0" targetFramework="net462" /> <package id="FontAwesome" version="4.7.0" targetFramework="net462" />
@@ -39,28 +39,28 @@
<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" />
<package id="Modernizr" version="2.8.3" targetFramework="net462" /> <package id="Modernizr" version="2.8.3" targetFramework="net462" />
<package id="Moment.js" version="2.29.1" targetFramework="net462" /> <package id="Moment.js" version="2.29.1" targetFramework="net462" />
<package id="MongoDB.Bson" version="2.12.4" targetFramework="net462" /> <package id="MongoDB.Bson" version="2.13.1" targetFramework="net462" />
<package id="MongoDB.Driver" version="2.12.4" targetFramework="net462" /> <package id="MongoDB.Driver" version="2.13.1" targetFramework="net462" />
<package id="MongoDB.Driver.Core" version="2.12.4" targetFramework="net462" /> <package id="MongoDB.Driver.Core" version="2.13.1" targetFramework="net462" />
<package id="MongoDB.Libmongocrypt" version="1.2.1" 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.4" targetFramework="net462" /> <package id="StackExchange.Redis" version="2.2.62" targetFramework="net462" />
<package id="SteamWare" version="5.1.2107.759" targetFramework="net462" /> <package id="SteamWare" version="5.1.2109.1713" targetFramework="net462" />
<package id="SteamWare.Logger" version="5.1.2107.759" 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" />
@@ -78,5 +78,6 @@
<package id="System.Text.Encoding.CodePages" version="5.0.0" targetFramework="net462" /> <package id="System.Text.Encoding.CodePages" version="5.0.0" targetFramework="net462" />
<package id="System.Threading.Channels" version="5.0.0" targetFramework="net462" /> <package id="System.Threading.Channels" version="5.0.0" targetFramework="net462" />
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net462" /> <package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net462" />
<package id="System.ValueTuple" version="4.5.0" targetFramework="net462" />
<package id="WebGrease" version="1.6.0" targetFramework="net462" /> <package id="WebGrease" version="1.6.0" targetFramework="net462" />
</packages> </packages>
+204 -164
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,16 +62,46 @@ namespace NKC_WF.site
cmp_BP_sheetList.selIndex = value; cmp_BP_sheetList.selIndex = value;
} }
} }
/// <summary> /// <summary>
/// BunkId selezionato /// Chaive URL base x gestione sheet del batch corrente
/// </summary> /// </summary>
protected int SheetId protected string tabSheetKey
{
get => $"{memLayer.ML.redHash($"TabSheets")}:{BatchId}";
}
/// <summary>
/// Elenco fogli della gestione corrente
/// </summary>
protected DS_App.SheetListDataTable tabSheets
{ {
get get
{ {
return cmp_BP_sheetList.SheetIdSel; DS_App.SheetListDataTable answ = null;
string rawData = memLayer.ML.getRSV(tabSheetKey);
if (string.IsNullOrEmpty(rawData))
{
answ = DLMan.taSHL.getByBatch(BatchId, "");
tabSheets = answ;
}
else
{
answ = JsonConvert.DeserializeObject<DS_App.SheetListDataTable>(rawData);
}
return answ;
}
set
{
string rawData = "";
if (value.Count > 0)
{
rawData = JsonConvert.SerializeObject(value);
}
memLayer.ML.setRSV(tabSheetKey, rawData, 300);
} }
} }
/// <summary> /// <summary>
/// valore selezionato nello slider /// valore selezionato nello slider
/// </summary> /// </summary>
@@ -82,170 +116,26 @@ namespace NKC_WF.site
cmp_slider.selValue = value; cmp_slider.selValue = value;
} }
} }
#endregion Protected Properties
#region Public Properties
/// <summary> /// <summary>
/// Chaive URL base x gestione sheet del batch corrente /// Batch corrente...
/// </summary> /// </summary>
protected string tabSheetKey; public int BatchId
/// <summary>
/// Elenco fogli della gestione corrente
/// </summary>
protected DS_App.SheetListDataTable tabSheets
{ {
get get
{ {
DS_App.SheetListDataTable answ = null; int answ = memLayer.ML.QSI("BatchId");
string rawData = memLayer.ML.getRSV(tabSheetKey);
if (string.IsNullOrEmpty(rawData))
{
answ = DLMan.taSHL.getByBatch(BatchId);
tabSheets = answ;
}
else
{
answ = JsonConvert.DeserializeObject<DS_App.SheetListDataTable>(rawData);
}
return answ; return answ;
} }
set
{
string rawData = JsonConvert.SerializeObject(value);
memLayer.ML.setRSV(tabSheetKey, rawData, 60);
}
}
/// <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;
} }
#endregion Public Properties
private void doUpdate() #region Private Methods
{
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;
}
else
{
num++;
}
}
cmp_slider.selValue = num;
// update svg...
cmp_MU_svgViewer.SheetId = cmp_BP_sheetList.SheetIdSel;
}
private void Cmp_BP_bunkList_eh_doRefresh(object sender, EventArgs e) private void Cmp_BP_bunkList_eh_doRefresh(object sender, EventArgs e)
{ {
@@ -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
} }
} }
+23 -23
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,56 +15,56 @@ namespace NKC_WF.site
{ {
/// <summary> /// <summary>
/// Controllo hfCartID. /// hfCartID 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.HiddenField hfCartID; protected global::System.Web.UI.WebControls.HiddenField hfCartID;
/// <summary> /// <summary>
/// Controllo hlPartMIA. /// hlPartMIA 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 hlPartMIA; protected global::System.Web.UI.WebControls.HyperLink hlPartMIA;
/// <summary> /// <summary>
/// Controllo lbtPrint. /// lbtPrint 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 lbtPrint; protected global::System.Web.UI.WebControls.LinkButton lbtPrint;
/// <summary> /// <summary>
/// Controllo upnlCartSummary. /// upnlCartSummary 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 upnlCartSummary; protected global::System.Web.UI.UpdatePanel upnlCartSummary;
/// <summary> /// <summary>
/// Controllo timerMain. /// timerMain 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 timerMain; protected global::System.Web.UI.Timer timerMain;
/// <summary> /// <summary>
/// Controllo cmp_cartDetIRK. /// cmp_cartDetIRK 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_cartDetIRK cmp_cartDetIRK; protected global::NKC_WF.WebUserControls.cmp_cartDetIRK cmp_cartDetIRK;
} }
+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;
} }
+5
View File
@@ -25,10 +25,15 @@ namespace NKC_WF
cmp_stackLoading.doUpdate(); cmp_stackLoading.doUpdate();
int currBatchId = cmp_stackLoading.BatchIdCurr; int currBatchId = cmp_stackLoading.BatchIdCurr;
hfBatchID.Value = $"{currBatchId}"; hfBatchID.Value = $"{currBatchId}";
string machineSel = cmp_MachSem.currMachine;
cmp_ML_ShDet.BatchId = currBatchId; cmp_ML_ShDet.BatchId = currBatchId;
cmp_ML_ShDet1.BatchId = currBatchId; cmp_ML_ShDet1.BatchId = currBatchId;
cmp_ML_ShDet2.BatchId = currBatchId; cmp_ML_ShDet2.BatchId = currBatchId;
cmp_ML_ShDet3.BatchId = currBatchId; cmp_ML_ShDet3.BatchId = currBatchId;
cmp_ML_ShDet.MachineSel = machineSel;
cmp_ML_ShDet1.MachineSel = machineSel;
cmp_ML_ShDet2.MachineSel = machineSel;
cmp_ML_ShDet3.MachineSel = machineSel;
cmp_ML_ShDet.doUpdate(); cmp_ML_ShDet.doUpdate();
cmp_ML_ShDet1.doUpdate(); cmp_ML_ShDet1.doUpdate();
cmp_ML_ShDet2.doUpdate(); cmp_ML_ShDet2.doUpdate();
+7 -4
View File
@@ -104,12 +104,15 @@ namespace NKC_WF
get get
{ {
bool answ = false; bool answ = false;
try if (BatchId > 0)
{ {
answ = DLMan.taIL.getMissingByBatch(BatchId).Count > 0; try
{
answ = DLMan.taIL.getMissingByBatch(BatchId).Count > 0;
}
catch
{ }
} }
catch
{ }
return answ; return answ;
} }
} }
+1 -1
View File
@@ -10,7 +10,7 @@
<div class="card-body"> <div class="card-body">
<div class="row"> <div class="row">
<div class="col-12" runat="server" id="divFileList"> <div class="col-12" runat="server" id="divFileList">
<uc1:cmp_batchList runat="server" ID="cmp_batchList" listMode="FullHistory" /> <uc1:cmp_batchList runat="server" ID="cmp_batchList" listMode="FullHistory" showSplit="true" />
</div> </div>
</div> </div>
</div> </div>
+11 -11
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,20 +15,20 @@ namespace NKC_WF.site
{ {
/// <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
@@ -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>
+15 -3
View File
@@ -1,12 +1,24 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/SiteContent.master" AutoEventWireup="true" CodeBehind="SecondScreen.aspx.cs" Inherits="NKC_WF.SecondScreen" %> <%@ Page Title="" Language="C#" MasterPageFile="~/SiteContent.master" AutoEventWireup="true" CodeBehind="SecondScreen.aspx.cs" Inherits="NKC_WF.SecondScreen" %>
<%@ Register Src="~/WebUserControls/cmp_secScreen.ascx" TagPrefix="uc1" TagName="cmp_secScreen" %> <%@ Register Src="~/WebUserControls/cmp_secScreen.ascx" TagPrefix="uc1" TagName="cmp_secScreen" %>
<%@ Register Src="~/WebUserControls/cmp_MachSem.ascx" TagPrefix="uc1" TagName="cmp_MachSem" %>
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
<asp:UpdatePanel runat="server" ID="updPanelSecScreen" UpdateMode="Conditional"> <asp:Content ID="updMachSel" ContentPlaceHolderID="MainContent" runat="server">
<asp:UpdatePanel runat="server" ID="upnlCartSummary" UpdateMode="Conditional">
<ContentTemplate> <ContentTemplate>
<uc1:cmp_secScreen runat="server" ID="cmp_secScreen" /> <div class="row">
<div class="col-12">
<uc1:cmp_MachSem runat="server" ID="cmp_MachSem" />
</div>
</div>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
<div runat="server" id="divMain">
<asp:UpdatePanel runat="server" ID="updPanelSecScreen" UpdateMode="Conditional">
<ContentTemplate>
<uc1:cmp_secScreen runat="server" ID="cmp_secScreen" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
</asp:Content> </asp:Content>
+14 -1
View File
@@ -10,8 +10,21 @@ namespace NKC_WF
if (!Page.IsPostBack) if (!Page.IsPostBack)
{ {
((SiteContent)this.Master).showSearch = false; ((SiteContent)this.Master).showSearch = false;
forceRefresh();
}
}
private void forceRefresh()
{
// verifico CI SIA la macchina...
if (string.IsNullOrEmpty(cmp_MachSem.currMachine))
{
divMain.Visible = false;
}
else
{
divMain.Visible = true;
cmp_secScreen.machine = cmp_MachSem.currMachine;
} }
} }
} }
} }
+38 -11
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,20 +15,47 @@ namespace NKC_WF
{ {
/// <summary> /// <summary>
/// Controllo updPanelSecScreen. /// upnlCartSummary 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.UpdatePanel upnlCartSummary;
/// <summary>
/// cmp_MachSem control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::NKC_WF.WebUserControls.cmp_MachSem cmp_MachSem;
/// <summary>
/// divMain control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divMain;
/// <summary>
/// updPanelSecScreen 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.UpdatePanel updPanelSecScreen; protected global::System.Web.UI.UpdatePanel updPanelSecScreen;
/// <summary> /// <summary>
/// Controllo cmp_secScreen. /// cmp_secScreen 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_secScreen cmp_secScreen; protected global::NKC_WF.WebUserControls.cmp_secScreen cmp_secScreen;
} }
+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>
+2 -2
View File
@@ -11,7 +11,7 @@ set baseBranch=%1
set pushRemote=%2 set pushRemote=%2
git push . %baseBranch%:develop git push . %baseBranch%:develop
git push . %baseBranch%:master REM git push . %baseBranch%:master
git push . %baseBranch%:SDK git push . %baseBranch%:SDK
git push . %baseBranch%:report git push . %baseBranch%:report
git push . %baseBranch%:stable git push . %baseBranch%:stable
@@ -20,7 +20,7 @@ REM Faccio push remoto condizionale
if %pushRemote% GTR 0 ( git push gitlab.steamware %baseBranch%:%baseBranch% ) if %pushRemote% GTR 0 ( git push gitlab.steamware %baseBranch%:%baseBranch% )
if %pushRemote% GTR 0 ( git push gitlab.steamware %baseBranch%:develop ) if %pushRemote% GTR 0 ( git push gitlab.steamware %baseBranch%:develop )
if %pushRemote% GTR 1 ( git push gitlab.steamware %baseBranch%:SDK ) if %pushRemote% GTR 1 ( git push gitlab.steamware %baseBranch%:SDK )
if %pushRemote% GTR 1 ( git push gitlab.steamware %baseBranch%:master ) REM if %pushRemote% GTR 1 ( git push gitlab.steamware %baseBranch%:master )
if %pushRemote% GTR 2 ( git push gitlab.steamware %baseBranch%:stable ) if %pushRemote% GTR 2 ( git push gitlab.steamware %baseBranch%:stable )
if %pushRemote% GTR 2 ( git push gitlab.steamware %baseBranch%:report ) if %pushRemote% GTR 2 ( git push gitlab.steamware %baseBranch%:report )