diff --git a/GMW/GMW/Web.config b/GMW/GMW/Web.config index 85f645d9..5c8f2fa3 100644 --- a/GMW/GMW/Web.config +++ b/GMW/GMW/Web.config @@ -91,12 +91,16 @@ + + + + @@ -107,6 +111,10 @@ + + + + diff --git a/GMW/GMW/bin/GMW.dll b/GMW/GMW/bin/GMW.dll index b4ce4694..c6007ecc 100644 Binary files a/GMW/GMW/bin/GMW.dll and b/GMW/GMW/bin/GMW.dll differ diff --git a/GMW/GMW/bin/GMW_data.dll b/GMW/GMW/bin/GMW_data.dll index 7c8823dc..ce8ac84a 100644 Binary files a/GMW/GMW/bin/GMW_data.dll and b/GMW/GMW/bin/GMW_data.dll differ diff --git a/GMW/GMW/bin/SteamWare.XML b/GMW/GMW/bin/SteamWare.XML index 4d866de1..6809ec2a 100644 --- a/GMW/GMW/bin/SteamWare.XML +++ b/GMW/GMW/bin/SteamWare.XML @@ -4,3191 +4,5 @@ SteamWare - - - classe gesione log files applicazioni - - - - - directory base x logs - - - - - nome del file corrente - - - - - max mb di log da accumulare - - - - - singleton del logger - - - - - avvio del logger nella dir desiderata - - - - - avvio del logger nella dir desiderata - - - - - avvio del logger nella dir desiderata con il max di dati indicato - - - - - scrive sul file log di default il valore della variabile string passata su una riga... (tab delim?!?) - - testo iniziale del log - - - - - scrive un messaggio di log con etichetta pre - - testo messaggio - tipo di log da registrare (etichetta [...]) - - - - - fornisce il nome del file in cui loggare (ed eventualmente crea...) - - - - - provvede a verificare la dim della cartella dei log e cancella i + vecchi fino a restare a dim inferiori a _logMaxMb - - - - - fornisce il file + vecchio - - - - - - - tipo di log ammesso - - - - - informazioni di debug - - - - - errori - - - - - eccezioni nell'esecuzione try/catch - - - - - errori fatali - - - - - informazioni opzionali - - - - - log dei lemmi invocati per traduzione da vocabolario - - - - - fase di avvio componente - - - - - avvisi - - - - - classe di wrap verso i TableAdapter impiegati - - - - - metodo protected di avvio della classe - - - - - procedura di avvio dei tableAdapter - - - - - procedura di avvio dei tableAdapter - - - - - effettua setup dei connection strings da web.config delal singola applicazione - - - - - effettua setup dei connection strings da web.config delal singola applicazione - - - - - setup delle tabelle vocabolario - - - - - prende l'oggetto tabVocabolario in ram e lo trasforma in dictionary - - - - - - tableAdapter diritti - - - - - tableAdapter permessi - - - - - tableAdapter funzione - - - - - tableAdapter permessi2funzione - - - - - tableAdapter CdC - - - - - tableAdapter utenti - - - - - table adapter lingue - - - - - table adapter vocabolario - - - - - table adapter versione vocabolario - - - - - table adapter versione anagrafica - - - - - oggetto vocabolario organizzato come dizionario con chiave lang#lemma e valore la traduzione - - - - - resetta il vocabolario rileggendo i dati... - - - - - crea nel db corrente il lemma richiesto e lo valorizza come "--{0}--" - - - - - - - classe singleton x la gestione dei tableadapters - - - - - elenco lingue ammesse da vocabolario... - - - - - classe di gestione lettura - - - - - esegue parsing fornendo dati ed headers - - - - - - - - esegue parsing fornendo dati - - - - - - - esegue parsing fornendo dati come stream - - - - - - - esegue parsing fornendo dati come stream ed headers - - - - - - - - struttura di comando da input utente (es: via barcode) - - - - - definisce se il comando sia valido o no - - - - - testo da mostrare dato il comando - - - - - comando registrato - - - - - comando precedentemente inserito - - - - - descrizione del comando - - - - - descrizione del comando precedente - - - - - valore del comando - - - - - valore tradotto del comando - - - - - costruttore del metodo... - - - - - Base class for every user control in the application, containing some common - behaviour and utility methods. - It is not meant to be be used directly. - - - - - tipo id controllo con classi di base comune da cui derivare gli *.asmx - - - - - nome della pagina correntemente caricata - - - - - memorizza la pagina precedente (ovvero la corrente ma non da page-object ma in session... - - - - - stringa con CDC in (...) dei cdc abilitati (da permesso gerarchicamente a discendere...) - - - - - stringa con elenco CDC abilitati (da permesso gerarchicamente a discendere...) - - - - - tabella diritti - - - - - tabella di tutti i cdc - - - - - tipo di anagrafica usata - - - - - importo il tipo di vista del modulo - - - - - elenco testuale csv dei cdc accessibili all'utente (x filtri tipo IN(...)) - - - - - numero di righe standard x i datagrid - - - - - numero di righe standard x i datagrid di anagrafica - - - - - numero di righe standard x i datagrid lunghi - - - - - numero di righe standard x i datagrid medi - - - - - numero di righe standard x i datagrid su mezza pagina - - - - - numero di righe standard x i selettori popup - - - - - indirizzo email dell'admin applicativo cui vanno le email in caso di anomalie... - - - - - indirizzo email dell'applicativo da cui partono le email in caso di anomalie... - - - - - indirizzo server SMTP - - - - - elenco delle pagine "safe" ovvero da non autorizzare - da web.config - - - - - elenco delle pagine "common" ovvero da autorizzare ma senza bisogno diritti in anagrafica - da web.config - - - - - valore che determina se è possibile forzare impersonificazioen utente... - - - - - livello di log (1-->5) - - - - - dir di logging - - - - - MAIN: esecuzione al caricamento del modulo delle routines di controllo utente e creazione pagina - - - - - - - predisposizione dati x pagina da cache/database a seconda della disponibilità in cache o refresh (B.1.4) - - - - - popola gli oggetti e le labels... (B.1.6) - - - - - disegna la pagina: prima i controlli poi il datagrid - - - - - aggiunge i link x i selettori - - - - - sistema i vari controlli della pagina - - - - - aggiorna eventuali datalist e datagrid - - - - - sistema tutte le labels traducendo i lemmi nella lingua utente ed in inglese - - - - - calcola come percentuale la radio dividendo/divisore - - - - - - - - limita una stringa al numero max di caratteri imposto - - - - - - - - Reads data from a stream until the end is reached. The - data is returned as a byte array. An IOException is - thrown if any of the underlying IO calls fail. - - The stream to read data from - The initial buffer length - - - - converte una data in formato aaaammgg in stringa gg/mm/aaaa - - - - - - - converte una data in formato aaaammgg in stringa aaaa-mm-gg - - - - - - - converte una stringa in formato gg/mm/aaaa in stringa(intero data) in formato aaaammgg - - - - - - - converte una datetime in un intero tipo yyyymmddhhmmss - - - - - - - formatta la data in formato dateTime in una data formato italiano come stringa gg/mm/aaaa - - - - - - - invia un alert jscript con messaggio indicato... - - messaggio dell'alert da mandare - - - - scrive immediatamente sulla pagina web il messaggio di avanzamento... - - - - - - restituisce una scringa formattata in testa e coda x essere un corretto comando javascript - - - - - - - invio email senza log - - - - - - - - - - invio email con log - - - - - - - - - - caricamento dati applicazione da sessione (B.1.3) - - - - - setup datamanagers... - - - - - reset update del modulo corrente - - - - - (ri)carica i dataset del modulo - - - - - verifica se tutti i dataset richiesti sono disponibili i cache - - - - - - salva nella cache i dataset caricati - - - - - carica dalla cache i dataset necessari - - - - - legge i valori standard x dataset e parametri - - - - - leggi i parametri di configurazione standard dell'applicativo - - - - - genera la stringa dei cdc autorizzati dell'utente - - - - - legge il dataset dei CdC - - - - - caricamento dati user da sessione (B.1.1) - - - - - verifica che l'utente abbia almeno un permesso per la pagina corrente altrimenti redirect ad unauthorized - - - - - salva in variabile pagina il nome della pagina corrente - - - - - selezione delle posizioni cdc autorizzate come stringa di filtraggio su POSIZIONE LIKE, se non ce ne fossero redirige su unauthorized.aspx - - - - - - risponde alla domanda se l'utente abbia permesso tipo writable (S) nel permessi2funzione - - - - - - verifica la condizione booleana e formatta di conseguenza la stringa di filtraggio da accodare al filtro x CdC autorizzati - - condizione - tipo di eguaglianza - nome parametro - valore parametro - - - - - crea la stringa di filtraggio x data secondo modalità tipo inizio/fine/durante... - - - - - - crea la stringa di filtraggio x data secondo modalità tipo minoreUguale / uguale / maggioreUguale... - - - - - - verifica la condizione booleana e formatta di conseguenza la stringa di filtraggio tipo LIKE x i campi inseriti separati da # SE valParam !="" - - - - - - - - esegue la ricerca dei cdc nelle posizioni indicate dal filtro e restituisce elenco distinct degli stessi - - filtro con cui cercare i cdc (del tipo " (POSIZIONE LIKE 'T.1.2.3%') OR ... " - stringa di filtraggio ricostruita per l'elenco dei cdc fino a quel momento trovati - ultimo cdc trovato - cdc corrente - - - - - restituisce il cdc dell'utente data la sua matricola - - - - - - - restituisce l'utente AS dall'utente win - - - - - - - restituisce la descr del CdC - - - - - - - invia la stringa jscript di conferma pre-cancellazione - - - - - - restituisce la stringa del path corretto per l'immagine richiesta nel formato "~/images/{0}{1}" - - verrà usato x posizione {0}, tipo "view" - verrà usato x posizione {1}, tipo "_s.png" - - - - - restituisce la stringa del path corretto per l'immagine richiesta nel formato "~/images/{0}{1}" - - verrà usato x posizione {0}, tipo "view" - verrà usato x posizione {1}, tipo "_s.png" - tipo del file richiesto..." - - - - - effettua traduzione del lemma - - - - - - - effettua traduzione in inglese del lemma - - - - - - - definisce visibilità - - - - - - - effettua la registrazione degli eventi - - - - - effettua l'inserimento vero e proprio dell'evento letto dai valori in session x l'utente corrente... - - evento da loggare - valori originali - nuovi valori - filtro associato - - - - salva in sessione i valori indicati - - dictionary dei valori vecchi - dictionary dei valori nuovi - bool su abilitazione al log dell'oggetto - descrizione evento da loggare - filtro associato all'evento - restituisce il numero di elementi contenuti, -1 significa nessuna differenza... - - - - salva in sessione i valori per un oggetto che sta x essere eliminato - - dictionary dei valori vecchi - bool su abilitazione al log dell'oggetto - descrizione evento da loggare - filtro associato all'evento - restituisce il numero di elementi contenuti, -1 significa nessuna differenza... - - - - imposto il tipo di anagrafica del controlloS - - - - - variabile salvata in view state x la stringa di sorting - dg 2 - - - - - variabile salvata in view state x la stringa di sorting - dg 2 - - - - - legge e scrive in viewState la stringa di filtraggio... - - - - - variabile salvata in viewstate x la direzione del sorting - - - - - genera la stringa filtro x i cdc autorizzati x l'user - - - - - - tipo di vista del modulo - - - - - Summary description for selettori - - - - - - - - - - - - - - - carica i dati CdC se in cache o da TableAdapter - - - - - restituisce l'elenco di tutti i cdc - - - - - - restituisce l'elenco di tutti i cdc della gerarchia dell'utente - - - - - - Represents a strongly typed in-memory cache of data. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - classe di gestione dei db x creazione/update alla versione richiesta - - - - - oggetto connessione - - - - - stringa di connessione - - - - - dir che contiene gli script da eseguire... - - - - - formato del file SQL impiegato (nel senso di formato come iFormat del tipo "App_{0:0000}.sql" --> da App_0001.sql ad App_9999.sql) - - - - - avvio protected della classe - - - - - esegue gli script di sql di update dal file richiesto - - - - - - - - Aggiorna il db eseguendo gli script dalla versione di partenza a quella di arrivo - - NB: per definizione rev 0 = resetta svuotando DB, rev 1 crea tabelle iniziali, rev 2 inserisce i valori di default - - nome DB di cui cercare script - revisione di partenza - revisione di arrivo - timeout max per ogni operazione - - - - - verifica se il db indicato esiste o meno... - - - - - - - - crea il db indicato con i parametri di connessione specificati - - - - - - - - Represents a strongly typed in-memory cache of data. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - classe con funzioni specifiche di calcolo - - - - - inizializzazione classe - - - - - elenco dei caratteri base 36: 0..9A..Z - - - - - - converte da base di dimensione nBase a valore intero - - valore in formato nBase - base, max 36 (0..9A..Z) - - - - - metodo di accesso singleton - - - - - tipo di chart (2D/3D) - - - - - 2D - - - - - 3D - - - - - web control che disegna un grafico a torta - - - - - altezza di default - - - - - larghezza di default - - - - - padding di default - - - - - legenda visibile di default - - - - - soglia minima 5% per mostrare il dato - - - - - renderizza il contenuto - - - - - - disegna la leggenda html laterale... - - - - - - disegna piechart 2-dim - - - - - - disegna piechart 3d ellittica - - - - - - traduce la stringa colore in oggetto colore - - - - - - - converte intero a stringa esadecimale - - - - - - - converte stringa esadecimale a intero - - - - - - - tipo di grafico (2D/3D) - - - - - ampiezza del grafico - - - - - altezza del grafico - - - - - padding grafico/container - - - - - boolean se si debba mostrale la legenda - - - - - percentuale minima da mostrare - - - - - serie di dati (tipizzata) ma mostrare - - - - - testo associato al controllo - - - - - layer gestione vari tipi di memoria: cache, session... - - - - - lettore file configurazione - - - - - oggetto singleton x accesso al layer di memoria - - - - - classe gestione accessi a Session, cache, viewstate, configuration... - - - - - legge dalla config un valore bool - - - - - - - legge dalla config un valore string - - - - - - - legge dalla config un valore int - - - - - - - carica dalla sessione un dato di tipo object generico - - - - - - - carica dalla sessione un dato di tipo boolean (se vuoto false) - - - - - - - carica dalla sessione un dato di tipo string - - - - - - - carica dalla sessione un dato di tipo long - - - - - - - carica dalla sessione un dato di tipo int - - - - - - - inserisce in session un valore - - - - - - - salvo un valore come cookie - - - - - - - - restituisco un valore da cookie - - - - - - - inserisce in session un valore - - nome della variabile - valore associato - indica se debba sopravvivere ad update (inserita in elenco valSess2SurvUpd) - - - - - svuota una variabile dalla session - - - - - - restituisce true se è presente in session l'oggetto richiesto - - - - - - - carica dalla Cache un dato di tipo object generico - - - - - - - carica dalla Cachee un dato di tipo boolean (se vuoto false) - - - - - - - carica dalla Cachee un dato di tipo string - - - - - - - inserisce in Cache un valore - - nome della variabile - valore - - - - inserisce in Cache un valore e su richiesta regitra tra le tab in cache da svuotare on update.. - - nome della variabile - valore - da registrare come tabella da svuotare on update? - - - - - svuota una variabile dalla Cache - - - - - - restituisce true se è presente in cache l'oggetto richiesto - - - - - - - aggiunge la stringa corrente nel dictionary delle tabelle messe in cache e da aggiornare su comando update - - - - - - aggiunge la stringa corrente nel dictionary delle tabelle messe in session che vanno preservate da comando update (es: oggetto selezionato...) - - - - - - - forza lo svuotamento delel tabelle indicate come in cache... - - - - - elenco dictionary delle tab in cache da aggiornare con update svuotando da cache... - - - - - elenco dictionary dei valori in session da NON aggiornare con update... - - - - - classe gestione parametri deviceper stampa - - - - - creazione oggetto parametri per stampa - - - - - - - - - - - - formato output - - - - - altezza - - - - - larghezza - - - - - margine Sx - - - - - margine Dx - - - - - margine Top - - - - - margine Bottom - - - - - enumeratore modalità login - - - - - login AD normale - - - - - forza utente fornendo password - - - - - forza ad un utente standard scelto dall'elenco - - - - - enumeratore modalità scrittura tag siteMap - - - - - nodo di tipo iniziale - apertura - - - - - nodo di tipo foglia - - - - - nodo di tipo finale - chiusura - - - - - enumeratore tipi di anagrafica - - - - - tipo di anagrafica Brembo - - - - - tipo di anagrafica generica - - - - - tipo di vista del modulo - - - - - modalità selezione - - - - - modalità editing - - - - - tipologia di file immagine - - - - - formato gif (no alpha channel) - - - - - formato jpeg - - - - - formato png - - - - - tipo di immagini usate per le icone di comando in web applications - - - - - icona annulla (croce rossa) - - - - - icona approva (simbolo coccarda) - - - - - icona barcode in campo bianco - - - - - icona barcode in campo arancio - - - - - icona clona (magic wand) - - - - - icona converma (spunta verde) - - - - - icona elimina (cestino) - - - - - icona modifica (matita) - - - - - icona notepad (blocco note) - - - - - icona notepad + pdf (blocco note) - - - - - icona nuovo (segno +) - - - - - icona seleziona (lente) - - - - - icona semaforo giallo - - - - - icona semaforo rosso - - - - - icona semaforo verde - - - - - icona stampa (printer) - - - - - dimensione immagini usate per le icone di comando in web applications - - - - - formato piccolo - - - - - formato medio - - - - - formato grande - - - - - modalità di esecuzione applicativi - - - - - modalità normale - - - - - modalità debug - - - - - salvataggio di tutti i lemmi tradotti - - - - - definisce un intervalo di 2 date - - - - - data inizio - - - - - data fine - - - - - struttura orario ordinarie/strordinarie - - - - - ore ordinarie - - - - - ore straordinarie - - - - - classe di funzioni inerenti le date - - - - - inizializzazione empty - - - - - effettua l'operazione di intersezione tra 2 intervali di date restituendo ulteriore intervallo: NB se sono intervali disgiunti restituisce 9/9/9999 x inizio e fine - - - - - - - - oggetto mese precedente alla dataLilmite - - - - - - oggetto mese corrente fino alla dataLilmite - - - - - - confronta le date e restituisce true se le date sono nello stesso mese - - - - - - - - restituisce l'intervallo del giorno completo che comprende la data indicata - - - - - - - restituisce l'intervallo di N giorni fino alla data indicata - - - - - - - - restituisce l'intervallo della settimana corrente per la data indicata - - - - - - - restituisce l'intervallo del mese corrente per la data indicata - - - - - - - restituisce l'intervallo del mese che comprendela data indicata - - - - - - - restituisce l'intervallo dell'anno corrente per la data indicata - - - - - - - classe di gestione delle email - - - - - stringa nel nome DNS o dell'ip del server SMTP - - - - - metodo static per la gestione delle email - - - - - - metodo static per la gestione delle email - - - - - - - procedura invio email - - email mittente - email destinatario - oggetto dell'email - corpo del messaggio - - - - procedura invio email + scrittura in log! - - email mittente - email destinatario - oggetto dell'email - corpo del messaggio - - - - metodo singleton gestione email... - - - - - Tipo di comparazione, Binary == CaseSensitive, Text = insensitive - - - - - tipo controllo : binario - - - - - tipo controllo : text - - - - - Funzione di splitting compatibile con multi-character e multi-line - - - - - stringa da splittare - - - - - Delimiter con cui splittare - - - - - Costruttore dello Splitter - - - - - comparatore case sensitive - - - - - - - - comparatore case insensitive - - - - - - - - parte principale dello splitter - - stringa da splittare - delimitatore ricercato - true=il delimiter è un blocco unico, false=qualsiasi oggetto del delimiter fa split (come split base) - - 0 -> Binary=CaseSensitive, 1 -> Text=case insensitive - - - - - elimina dal nome file il tipo (desinenza) - - - - - - - Classe di metodi che estendono quelli base applicati alle string - - - - - Trasforma in MAIUSCOLo il primo carattere della stringa - - stringa da processare - stringa processata - - - - restituisce la stringa completa e corretta del filepath del server (anche con vDir) - - path relativo alla cartella iis dell'applicativo - path fisico tradotto - - - - effettua escape di stringhe di ricerca di tipo filtro per apici e altri caratteri non ammessi - - - - - - - fornisce dati di base per l'utente - - - - - fornisce cognome e nome utente formattati a partire dall'username e dalla tabella UTENTE - - - - - - - restituisce la riga completa dall'username richiesto - - - - - - - Represents a strongly typed in-memory cache of data. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - classe gestione utente: auth e permission/ruoli - versione GENERICA - - - - - cancella da session l'utente - - - - - carica la riga dati utente - - - - - Carica la tabella diritti dell'utente da db e salva in session - - - - - Carica la tabella diritti dell'utente da db e salva in session SOLO per il CDC indicato - - - - - - Effettua setup dei permessi una volta salvati i diritti - - - - - imposta la lingua utente dal valore della riga DB - - - - - costruisce la mappa del sito per l'utente - - - - - formatta un nodo in modo corretto dai dati indicati - - - - - - - - - inizializza la gestione utente... - - - - - traduce il lemma nella lingua dell'user corrente - - - - - - - traduce il lemma in inglese - - - - - - - traduce il lemma nella lingua dell'user e in inglese tra parentesi - - - - - - - LogOff utente con reset dati - - - - - - - - Procedura da chiamare DOPO aver messo in session i dati utente/dominio x caricare gli altri dati - - - - - - - - Procedura da chiamare DOPO aver messo in session i dati utente/dominio x caricare gli altri dati CON I DIRITTI SOLO per il CDC indicato - - - - - - - - - salva dati accessori quali il cdc dell'utente... - - - - - verifica nella tab diritti se l'utente abbia il right richiesto e fornisce bool in risposta - - - - - - - verifica le credenziali AD dell'utente... - - - - - - - - conta il numero di permessi utente per la pagina attuale e restituisce true se ne trova almeno 1 - - - - - - - verifica se il permesso utente per la pagina attuale sia write per almeno 1 diritto assegnato (restituisce true se ne trova almeno 1 con permessi2funzione.readwrite='S') - - - - - - - ricarica e ri-traduce la mappa sito per l'utente... - - - - - retituisce il nome apgina dai permessi utente - - - - - - restituisce cognome e nome di un utente dato username... - - username - - - - - restituisce cognome e nome di un utente data la matricola... - - matricola - - - - - restituisce cognome e nome di un utente dato username e dominio... - - username - dominio - - - - - restituisce cognome e nome di un utente dato username... - - username - - - - - restituisce cognome e nome di un utente dato username e dominio... - - username - dominio - - - - - restituisce cognome e nome di un utente dato username eventualmente comprensivo di dominio... - - {dominio\}userName - - - - - restituisce l'elenco delle funzioni abilitate dato modulo ed username partendo dalla radice dell'albero dei diritti - - - - - - - - restituisce l'elenco degli utenti dato i diritti che devono avere come modulo/funzione - - nome del modulo - nome della funzione - tabella utenti - - - - restituisce l'elenco delle email degli utenti dato i diritti che devono avere come modulo/funzione - - nome del modulo - nome della funzione - stringa di email separate da "," - - - - crea un nuovo utente con le credenziali indicate - - - - - - - - - - - - assegna il diritto all'utente indicato - - - - - - - - - - - toglier il diritto all'utente indicato - - - - - - - - - - - restituisce la tabella (per utente corrente) dei CDC abilitati per l'applicazione attuale da sessione (se non c'è salva...) - - modulo di cui si testano i diritti - - - - - versione statica della classe utente come singleton UtenTeSignletoN - - - - - restituisce la tabella diritti da session - - - - - tabella dei permessi utente - - - - - tabella dei permessi utente di tipo "WRITE" enabled - - - - - retituisce username AD - - - - - oggetto utente con metodi get/set - - - - - oggetto dominio con metodi get/set - - - - - oggetto modulo (applicazione) con metodi get/set - - - - - oggetto lingua utente con metodi get/set - - - - - oggetto runMode corrente - - - - - restituisce true se utente forzato da forceUser.aspx - - - - - restituisce i valori della riga utente da db - - - - - restituisce una stringa formattata con cognome, nome e matricola - - - - - restituisce una stringa della sigla dell'utente - - - - - restituisce una stringa formattata con cognome e nome - - - - - restituisce una stringa formattata con cognome - - - - - restituisce una stringa formattata con nome - - - - - fornisce un file XML della mappa del sito abilitato per l'utente... - - - - - è un boolean che indica se in session ci siano user/dominio e quindi utente autenticato in rpecedenza... - - - - - Accesso in lettura e scrittura al filesystem per gestione files upload e download - - - - - path di lavoro dei metodi leggi/scrivi - - - - - verifica esistenza directory ed eventualmente crea restituendo nome completo di "/" finale - - - - - - - restituisce una tab di files dato l'elenco dei files - - - - - - - setta le directory - - - - - - oggetto WebClient - - - - - inizializza il metodo alla cartella indicata - - - non serve +... x retrocompatibilità... - - - - metodo di avvio empty - - - - - cerca di caricare il fileinfo o da httpcontext-application re-position o direttamente come workpath + nomefile - - - - - - - cerca di caricare il fileinfo o da httpcontext-application re-position o direttamente come workpath + nomefile - - - - - - - - cerca di caricare la directoryInfo o da httpcontext-application re-position o direttamente come workpath - - - - - - - Legge i dati da uno stream fino a quando arriva alla fine. - I dati sono restituiti come un byte[] array. un eccezione IOException è - sollevata se una delle chiamate IO sottostanti fallisce. - - Lo stream da cui leggere - Lunghezza buffer iniziale (-1 = default 32k) - - - - verifica esistenza directory, eventualmente crea e restituisce controllo DirectoryInfo - - - - - - ottiene il dataset dei files presenti nella directory indicata esplicitamente - - dir da indicizzare... già mappata! ( es SteamwareStrings.getFilePath(...) ) - - - - - ottiene il dataset dei files presenti nella directory indicata all'istanziazione dell'oggetto - - - - - - ottiene il dataset dei files DEL TIPO "like {param}" presenti nella directory indicata all'istanziazione dell'oggetto - - - - - - elenco dei files come array di oggetti FileInfo - - - - - - elenco dei files come array di oggetti FileInfo filtrati per parametro - - - - - - - elimina la directory di lavoro se è dir virtuale mappata - - - - - - elimina tutti i files con la regexp indicata da una directory, true se cancellato almeno uno - - regexp selezione files in dir (* = tutti!!!) - - - - - verifica se il file indicato esista in workDir - - - - - - - elimina il file indicato dalla directory di lavoro - - - - - - - restituisce lo stream del file richiesto - - - - - - - restituisce la stringa letta dal file richiesto - - - - - - - scrive il file dallo stream byte[] inviato - - - - - - - - scrive il file dalla stringa inviata - - - - - - - - converte una string in un byte[] - - - - - - - converte un byte[] in una string - - - - - - - sposta il file da From a To... - - - - - - - - - copia il file da From a To... - - - - - - - - - copia il file da From a To... - - - - - - - - - - imposta la dir di lavoro - - - - - - imposta la dir di lavoro - - - non serve +... x retrocompatibilità... - - - - imposta la dir di lavoro impostandola dal mapPath corretto della web app... - - - - - - esegue un comando in shell - - - - - - - - - esegue un comando in shell - - - - - - - - - Scarica un file dall'url fornito nella directory indicata x il filemover col nome richiesto - - url del file - nome con cui salvare il file - - - - - comprime zip il file indicato - - - - - - - comprime zip i files corrispondenti alla RegExp indicata nella dir corrente - - Espressione ricerca, come *.txt - Nome del file zip da creare - - - - - calcola la dim della directory corrente... - - - - - - - elimina il file + vecchio - - - - - - - versione statica (singleton) del'oggetto fileMover - - - - - classe per effettuare confronto tra valori disomogeneri per tipo e costruire diff testuali - - - - - valore originale - - - - - nuovo valore - - - - - dictionary dei parametri vecchi - - - - - dictionary dei parametri nuovi - - - - - inizializzazione classe - - - - - valorizza i diff dei valori old e new - - - - - calcola solo il vettore dei valori old (x delete) - - - - - oggetto statico per il confronto valori - - - - - stringa diff dei valori originali modificati - - - - - stringa diff dei valori nuovi modificati - - - - - dictionary dei parametri old - - - - - dictionary dei parametri new - - - - - classe gestione logging esteso di eventi e note utente (correlabili) - - - - - TableAdapter di accesso alla tabella anagrafica filtraggi - - - - - TableAdapter di accesso alla tabella anagrafica record - - - - - TableAdapter di accesso alla tabella logging record di eventi - - - - - TableAdapter di accesso alla tabella logging utente - - - - - TableAdapter di accesso alla vista logging eventi - - - - - TableAdapter di accesso alla vista logging utente - - - - - effettua setup dei connection strings da web.config delal singola applicazione - - - - - avvio i tari tableAdapters - - - - - avvio della classe istanziando db e - - - - - oggetto statico di accesso ai metodi della classe... - - - - - tabella eventi - - - - - - tabella note - - - - - - tabella eventi secondo filtro - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - - - - - tabella note secondo filtro - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - - - - - tabella eventi secondo filtro e condizione ulteriore WHERE esplicitata - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - ulteriore condizione WHERE per filtrare i dati (testo {0} della condizione "WHERE {0}" - - - - - tabella note secondo filtro e condizione ulteriore WHERE esplicitata - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - ulteriore condizione WHERE per filtrare i dati (testo {0} della condizione "WHERE {0}" - - - - - tabella note secondo filtro - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - - - - - inserisce l'evento indicato dai parametri - - user che ha generato l'evento - pagina/form applicaizone in cui l'evento si è generato - valore originale(se c'è) - valore nuovo/modificato - descrizione evento (poi gestita con anagrafica interna) - filtro logico evento (poi gestita con anagrafica interna) - - - - inserisce la nota utente indicata dai parametri, restituisce idx della nota creata... - - user che ha inserito la nota - testo della nota - valore ulteriore da associare alla nota (es: label, codice, versione, ...) - filtro logico evento (poi gestita con anagrafica interna) - intero dell'idx della nota creata - - - - associa l'evento e la nota indicati - - idx del record da associare - idx chiave della nota da associare - - - - associa l'ultimo evento del filtro indicato alla nota - - filtro associato all'ultimo evento... - idx chiave della nota da associare - - - - segna come cestinati tutti gli eventi dell'utente indicato non ancora associati o cestinati - - utente generatore dell'evento - - - - segna come cestinati tutti gli eventi dell'utente indicato non ancora associati o cestinati - - utente generatore dell'evento - - - - Elimina gli eventi cestinati generati dall'utente indicato - - utente generatore dell'evento - - - - Elimina gli eventi cestinati anteriori alla data selezionata - - dataOra dell'evento - - - - effettua la registrazione dell'evento in session - - - - - metodo di comportamento del controllo di logging - - - - - nasconde pannello log - - - - - memorizza log inserito - - - - - mostra pannello log - - - - - metodo di comportamento del controllo di logging - - - - - indica il primo step del doppio livello di approvazione (completamento) - - - - - SOLO con incremento indice di revisione dell'oggetto approvato - - - - - SOLO mantenendo indice di revisione corrente - - - - - permette SIA con revisione che senza (e anche rev -1) - - - - - Pagina base applicazioni SteamWare da cui derivare le altre - - - - - Iniziazlizzazione void (non fa nulla) - - - - - Metodo MAIN: viene eseguita al caricamento ed effettua delle routines per il controllo utente e istanzia l'oggetto memLayer - - - - - - - rimanda alla pagina di Work In Progress salvando in session un titolo ed una descrizione che al pagina wip poi mostrerà all'utente - - titolo da mostrare nella pagina WIP - descrizione da mostrare nella pagina WIP - diff --git a/GMW/GMW/mazzAppSettings.config b/GMW/GMW/mazzAppSettings.config index 8ac450e1..afd87d72 100644 --- a/GMW/GMW/mazzAppSettings.config +++ b/GMW/GMW/mazzAppSettings.config @@ -35,12 +35,16 @@ + + + + @@ -50,6 +54,10 @@ + + + + diff --git a/GMW/GMW/obj/Debug/GMW.dll b/GMW/GMW/obj/Debug/GMW.dll index e462b7cc..c6007ecc 100644 Binary files a/GMW/GMW/obj/Debug/GMW.dll and b/GMW/GMW/obj/Debug/GMW.dll differ diff --git a/GMW/GMW/obj/Debug/ResolveAssemblyReference.cache b/GMW/GMW/obj/Debug/ResolveAssemblyReference.cache index 767bfc56..7d2f0e53 100644 Binary files a/GMW/GMW/obj/Debug/ResolveAssemblyReference.cache and b/GMW/GMW/obj/Debug/ResolveAssemblyReference.cache differ diff --git a/GMW/GMW/obj/Release/GMW.dll b/GMW/GMW/obj/Release/GMW.dll index b4ce4694..dad02dc0 100644 Binary files a/GMW/GMW/obj/Release/GMW.dll and b/GMW/GMW/obj/Release/GMW.dll differ diff --git a/GMW/GMW/obj/Release/ResolveAssemblyReference.cache b/GMW/GMW/obj/Release/ResolveAssemblyReference.cache index eb95663c..4db0d9ae 100644 Binary files a/GMW/GMW/obj/Release/ResolveAssemblyReference.cache and b/GMW/GMW/obj/Release/ResolveAssemblyReference.cache differ diff --git a/GMW/GMW_Term/Web.config b/GMW/GMW_Term/Web.config index 2d7356ea..f394ccae 100644 --- a/GMW/GMW_Term/Web.config +++ b/GMW/GMW_Term/Web.config @@ -84,11 +84,15 @@ + + + + @@ -99,6 +103,10 @@ + + + + diff --git a/GMW/GMW_Term/bin/GMW_Term.dll b/GMW/GMW_Term/bin/GMW_Term.dll index 5168b310..029ed100 100644 Binary files a/GMW/GMW_Term/bin/GMW_Term.dll and b/GMW/GMW_Term/bin/GMW_Term.dll differ diff --git a/GMW/GMW_Term/bin/GMW_data.dll b/GMW/GMW_Term/bin/GMW_data.dll index 6041d5a1..830998a0 100644 Binary files a/GMW/GMW_Term/bin/GMW_data.dll and b/GMW/GMW_Term/bin/GMW_data.dll differ diff --git a/GMW/GMW_Term/bin/SteamWare.XML b/GMW/GMW_Term/bin/SteamWare.XML index 4d866de1..6809ec2a 100644 --- a/GMW/GMW_Term/bin/SteamWare.XML +++ b/GMW/GMW_Term/bin/SteamWare.XML @@ -4,3191 +4,5 @@ SteamWare - - - classe gesione log files applicazioni - - - - - directory base x logs - - - - - nome del file corrente - - - - - max mb di log da accumulare - - - - - singleton del logger - - - - - avvio del logger nella dir desiderata - - - - - avvio del logger nella dir desiderata - - - - - avvio del logger nella dir desiderata con il max di dati indicato - - - - - scrive sul file log di default il valore della variabile string passata su una riga... (tab delim?!?) - - testo iniziale del log - - - - - scrive un messaggio di log con etichetta pre - - testo messaggio - tipo di log da registrare (etichetta [...]) - - - - - fornisce il nome del file in cui loggare (ed eventualmente crea...) - - - - - provvede a verificare la dim della cartella dei log e cancella i + vecchi fino a restare a dim inferiori a _logMaxMb - - - - - fornisce il file + vecchio - - - - - - - tipo di log ammesso - - - - - informazioni di debug - - - - - errori - - - - - eccezioni nell'esecuzione try/catch - - - - - errori fatali - - - - - informazioni opzionali - - - - - log dei lemmi invocati per traduzione da vocabolario - - - - - fase di avvio componente - - - - - avvisi - - - - - classe di wrap verso i TableAdapter impiegati - - - - - metodo protected di avvio della classe - - - - - procedura di avvio dei tableAdapter - - - - - procedura di avvio dei tableAdapter - - - - - effettua setup dei connection strings da web.config delal singola applicazione - - - - - effettua setup dei connection strings da web.config delal singola applicazione - - - - - setup delle tabelle vocabolario - - - - - prende l'oggetto tabVocabolario in ram e lo trasforma in dictionary - - - - - - tableAdapter diritti - - - - - tableAdapter permessi - - - - - tableAdapter funzione - - - - - tableAdapter permessi2funzione - - - - - tableAdapter CdC - - - - - tableAdapter utenti - - - - - table adapter lingue - - - - - table adapter vocabolario - - - - - table adapter versione vocabolario - - - - - table adapter versione anagrafica - - - - - oggetto vocabolario organizzato come dizionario con chiave lang#lemma e valore la traduzione - - - - - resetta il vocabolario rileggendo i dati... - - - - - crea nel db corrente il lemma richiesto e lo valorizza come "--{0}--" - - - - - - - classe singleton x la gestione dei tableadapters - - - - - elenco lingue ammesse da vocabolario... - - - - - classe di gestione lettura - - - - - esegue parsing fornendo dati ed headers - - - - - - - - esegue parsing fornendo dati - - - - - - - esegue parsing fornendo dati come stream - - - - - - - esegue parsing fornendo dati come stream ed headers - - - - - - - - struttura di comando da input utente (es: via barcode) - - - - - definisce se il comando sia valido o no - - - - - testo da mostrare dato il comando - - - - - comando registrato - - - - - comando precedentemente inserito - - - - - descrizione del comando - - - - - descrizione del comando precedente - - - - - valore del comando - - - - - valore tradotto del comando - - - - - costruttore del metodo... - - - - - Base class for every user control in the application, containing some common - behaviour and utility methods. - It is not meant to be be used directly. - - - - - tipo id controllo con classi di base comune da cui derivare gli *.asmx - - - - - nome della pagina correntemente caricata - - - - - memorizza la pagina precedente (ovvero la corrente ma non da page-object ma in session... - - - - - stringa con CDC in (...) dei cdc abilitati (da permesso gerarchicamente a discendere...) - - - - - stringa con elenco CDC abilitati (da permesso gerarchicamente a discendere...) - - - - - tabella diritti - - - - - tabella di tutti i cdc - - - - - tipo di anagrafica usata - - - - - importo il tipo di vista del modulo - - - - - elenco testuale csv dei cdc accessibili all'utente (x filtri tipo IN(...)) - - - - - numero di righe standard x i datagrid - - - - - numero di righe standard x i datagrid di anagrafica - - - - - numero di righe standard x i datagrid lunghi - - - - - numero di righe standard x i datagrid medi - - - - - numero di righe standard x i datagrid su mezza pagina - - - - - numero di righe standard x i selettori popup - - - - - indirizzo email dell'admin applicativo cui vanno le email in caso di anomalie... - - - - - indirizzo email dell'applicativo da cui partono le email in caso di anomalie... - - - - - indirizzo server SMTP - - - - - elenco delle pagine "safe" ovvero da non autorizzare - da web.config - - - - - elenco delle pagine "common" ovvero da autorizzare ma senza bisogno diritti in anagrafica - da web.config - - - - - valore che determina se è possibile forzare impersonificazioen utente... - - - - - livello di log (1-->5) - - - - - dir di logging - - - - - MAIN: esecuzione al caricamento del modulo delle routines di controllo utente e creazione pagina - - - - - - - predisposizione dati x pagina da cache/database a seconda della disponibilità in cache o refresh (B.1.4) - - - - - popola gli oggetti e le labels... (B.1.6) - - - - - disegna la pagina: prima i controlli poi il datagrid - - - - - aggiunge i link x i selettori - - - - - sistema i vari controlli della pagina - - - - - aggiorna eventuali datalist e datagrid - - - - - sistema tutte le labels traducendo i lemmi nella lingua utente ed in inglese - - - - - calcola come percentuale la radio dividendo/divisore - - - - - - - - limita una stringa al numero max di caratteri imposto - - - - - - - - Reads data from a stream until the end is reached. The - data is returned as a byte array. An IOException is - thrown if any of the underlying IO calls fail. - - The stream to read data from - The initial buffer length - - - - converte una data in formato aaaammgg in stringa gg/mm/aaaa - - - - - - - converte una data in formato aaaammgg in stringa aaaa-mm-gg - - - - - - - converte una stringa in formato gg/mm/aaaa in stringa(intero data) in formato aaaammgg - - - - - - - converte una datetime in un intero tipo yyyymmddhhmmss - - - - - - - formatta la data in formato dateTime in una data formato italiano come stringa gg/mm/aaaa - - - - - - - invia un alert jscript con messaggio indicato... - - messaggio dell'alert da mandare - - - - scrive immediatamente sulla pagina web il messaggio di avanzamento... - - - - - - restituisce una scringa formattata in testa e coda x essere un corretto comando javascript - - - - - - - invio email senza log - - - - - - - - - - invio email con log - - - - - - - - - - caricamento dati applicazione da sessione (B.1.3) - - - - - setup datamanagers... - - - - - reset update del modulo corrente - - - - - (ri)carica i dataset del modulo - - - - - verifica se tutti i dataset richiesti sono disponibili i cache - - - - - - salva nella cache i dataset caricati - - - - - carica dalla cache i dataset necessari - - - - - legge i valori standard x dataset e parametri - - - - - leggi i parametri di configurazione standard dell'applicativo - - - - - genera la stringa dei cdc autorizzati dell'utente - - - - - legge il dataset dei CdC - - - - - caricamento dati user da sessione (B.1.1) - - - - - verifica che l'utente abbia almeno un permesso per la pagina corrente altrimenti redirect ad unauthorized - - - - - salva in variabile pagina il nome della pagina corrente - - - - - selezione delle posizioni cdc autorizzate come stringa di filtraggio su POSIZIONE LIKE, se non ce ne fossero redirige su unauthorized.aspx - - - - - - risponde alla domanda se l'utente abbia permesso tipo writable (S) nel permessi2funzione - - - - - - verifica la condizione booleana e formatta di conseguenza la stringa di filtraggio da accodare al filtro x CdC autorizzati - - condizione - tipo di eguaglianza - nome parametro - valore parametro - - - - - crea la stringa di filtraggio x data secondo modalità tipo inizio/fine/durante... - - - - - - crea la stringa di filtraggio x data secondo modalità tipo minoreUguale / uguale / maggioreUguale... - - - - - - verifica la condizione booleana e formatta di conseguenza la stringa di filtraggio tipo LIKE x i campi inseriti separati da # SE valParam !="" - - - - - - - - esegue la ricerca dei cdc nelle posizioni indicate dal filtro e restituisce elenco distinct degli stessi - - filtro con cui cercare i cdc (del tipo " (POSIZIONE LIKE 'T.1.2.3%') OR ... " - stringa di filtraggio ricostruita per l'elenco dei cdc fino a quel momento trovati - ultimo cdc trovato - cdc corrente - - - - - restituisce il cdc dell'utente data la sua matricola - - - - - - - restituisce l'utente AS dall'utente win - - - - - - - restituisce la descr del CdC - - - - - - - invia la stringa jscript di conferma pre-cancellazione - - - - - - restituisce la stringa del path corretto per l'immagine richiesta nel formato "~/images/{0}{1}" - - verrà usato x posizione {0}, tipo "view" - verrà usato x posizione {1}, tipo "_s.png" - - - - - restituisce la stringa del path corretto per l'immagine richiesta nel formato "~/images/{0}{1}" - - verrà usato x posizione {0}, tipo "view" - verrà usato x posizione {1}, tipo "_s.png" - tipo del file richiesto..." - - - - - effettua traduzione del lemma - - - - - - - effettua traduzione in inglese del lemma - - - - - - - definisce visibilità - - - - - - - effettua la registrazione degli eventi - - - - - effettua l'inserimento vero e proprio dell'evento letto dai valori in session x l'utente corrente... - - evento da loggare - valori originali - nuovi valori - filtro associato - - - - salva in sessione i valori indicati - - dictionary dei valori vecchi - dictionary dei valori nuovi - bool su abilitazione al log dell'oggetto - descrizione evento da loggare - filtro associato all'evento - restituisce il numero di elementi contenuti, -1 significa nessuna differenza... - - - - salva in sessione i valori per un oggetto che sta x essere eliminato - - dictionary dei valori vecchi - bool su abilitazione al log dell'oggetto - descrizione evento da loggare - filtro associato all'evento - restituisce il numero di elementi contenuti, -1 significa nessuna differenza... - - - - imposto il tipo di anagrafica del controlloS - - - - - variabile salvata in view state x la stringa di sorting - dg 2 - - - - - variabile salvata in view state x la stringa di sorting - dg 2 - - - - - legge e scrive in viewState la stringa di filtraggio... - - - - - variabile salvata in viewstate x la direzione del sorting - - - - - genera la stringa filtro x i cdc autorizzati x l'user - - - - - - tipo di vista del modulo - - - - - Summary description for selettori - - - - - - - - - - - - - - - carica i dati CdC se in cache o da TableAdapter - - - - - restituisce l'elenco di tutti i cdc - - - - - - restituisce l'elenco di tutti i cdc della gerarchia dell'utente - - - - - - Represents a strongly typed in-memory cache of data. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - classe di gestione dei db x creazione/update alla versione richiesta - - - - - oggetto connessione - - - - - stringa di connessione - - - - - dir che contiene gli script da eseguire... - - - - - formato del file SQL impiegato (nel senso di formato come iFormat del tipo "App_{0:0000}.sql" --> da App_0001.sql ad App_9999.sql) - - - - - avvio protected della classe - - - - - esegue gli script di sql di update dal file richiesto - - - - - - - - Aggiorna il db eseguendo gli script dalla versione di partenza a quella di arrivo - - NB: per definizione rev 0 = resetta svuotando DB, rev 1 crea tabelle iniziali, rev 2 inserisce i valori di default - - nome DB di cui cercare script - revisione di partenza - revisione di arrivo - timeout max per ogni operazione - - - - - verifica se il db indicato esiste o meno... - - - - - - - - crea il db indicato con i parametri di connessione specificati - - - - - - - - Represents a strongly typed in-memory cache of data. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - classe con funzioni specifiche di calcolo - - - - - inizializzazione classe - - - - - elenco dei caratteri base 36: 0..9A..Z - - - - - - converte da base di dimensione nBase a valore intero - - valore in formato nBase - base, max 36 (0..9A..Z) - - - - - metodo di accesso singleton - - - - - tipo di chart (2D/3D) - - - - - 2D - - - - - 3D - - - - - web control che disegna un grafico a torta - - - - - altezza di default - - - - - larghezza di default - - - - - padding di default - - - - - legenda visibile di default - - - - - soglia minima 5% per mostrare il dato - - - - - renderizza il contenuto - - - - - - disegna la leggenda html laterale... - - - - - - disegna piechart 2-dim - - - - - - disegna piechart 3d ellittica - - - - - - traduce la stringa colore in oggetto colore - - - - - - - converte intero a stringa esadecimale - - - - - - - converte stringa esadecimale a intero - - - - - - - tipo di grafico (2D/3D) - - - - - ampiezza del grafico - - - - - altezza del grafico - - - - - padding grafico/container - - - - - boolean se si debba mostrale la legenda - - - - - percentuale minima da mostrare - - - - - serie di dati (tipizzata) ma mostrare - - - - - testo associato al controllo - - - - - layer gestione vari tipi di memoria: cache, session... - - - - - lettore file configurazione - - - - - oggetto singleton x accesso al layer di memoria - - - - - classe gestione accessi a Session, cache, viewstate, configuration... - - - - - legge dalla config un valore bool - - - - - - - legge dalla config un valore string - - - - - - - legge dalla config un valore int - - - - - - - carica dalla sessione un dato di tipo object generico - - - - - - - carica dalla sessione un dato di tipo boolean (se vuoto false) - - - - - - - carica dalla sessione un dato di tipo string - - - - - - - carica dalla sessione un dato di tipo long - - - - - - - carica dalla sessione un dato di tipo int - - - - - - - inserisce in session un valore - - - - - - - salvo un valore come cookie - - - - - - - - restituisco un valore da cookie - - - - - - - inserisce in session un valore - - nome della variabile - valore associato - indica se debba sopravvivere ad update (inserita in elenco valSess2SurvUpd) - - - - - svuota una variabile dalla session - - - - - - restituisce true se è presente in session l'oggetto richiesto - - - - - - - carica dalla Cache un dato di tipo object generico - - - - - - - carica dalla Cachee un dato di tipo boolean (se vuoto false) - - - - - - - carica dalla Cachee un dato di tipo string - - - - - - - inserisce in Cache un valore - - nome della variabile - valore - - - - inserisce in Cache un valore e su richiesta regitra tra le tab in cache da svuotare on update.. - - nome della variabile - valore - da registrare come tabella da svuotare on update? - - - - - svuota una variabile dalla Cache - - - - - - restituisce true se è presente in cache l'oggetto richiesto - - - - - - - aggiunge la stringa corrente nel dictionary delle tabelle messe in cache e da aggiornare su comando update - - - - - - aggiunge la stringa corrente nel dictionary delle tabelle messe in session che vanno preservate da comando update (es: oggetto selezionato...) - - - - - - - forza lo svuotamento delel tabelle indicate come in cache... - - - - - elenco dictionary delle tab in cache da aggiornare con update svuotando da cache... - - - - - elenco dictionary dei valori in session da NON aggiornare con update... - - - - - classe gestione parametri deviceper stampa - - - - - creazione oggetto parametri per stampa - - - - - - - - - - - - formato output - - - - - altezza - - - - - larghezza - - - - - margine Sx - - - - - margine Dx - - - - - margine Top - - - - - margine Bottom - - - - - enumeratore modalità login - - - - - login AD normale - - - - - forza utente fornendo password - - - - - forza ad un utente standard scelto dall'elenco - - - - - enumeratore modalità scrittura tag siteMap - - - - - nodo di tipo iniziale - apertura - - - - - nodo di tipo foglia - - - - - nodo di tipo finale - chiusura - - - - - enumeratore tipi di anagrafica - - - - - tipo di anagrafica Brembo - - - - - tipo di anagrafica generica - - - - - tipo di vista del modulo - - - - - modalità selezione - - - - - modalità editing - - - - - tipologia di file immagine - - - - - formato gif (no alpha channel) - - - - - formato jpeg - - - - - formato png - - - - - tipo di immagini usate per le icone di comando in web applications - - - - - icona annulla (croce rossa) - - - - - icona approva (simbolo coccarda) - - - - - icona barcode in campo bianco - - - - - icona barcode in campo arancio - - - - - icona clona (magic wand) - - - - - icona converma (spunta verde) - - - - - icona elimina (cestino) - - - - - icona modifica (matita) - - - - - icona notepad (blocco note) - - - - - icona notepad + pdf (blocco note) - - - - - icona nuovo (segno +) - - - - - icona seleziona (lente) - - - - - icona semaforo giallo - - - - - icona semaforo rosso - - - - - icona semaforo verde - - - - - icona stampa (printer) - - - - - dimensione immagini usate per le icone di comando in web applications - - - - - formato piccolo - - - - - formato medio - - - - - formato grande - - - - - modalità di esecuzione applicativi - - - - - modalità normale - - - - - modalità debug - - - - - salvataggio di tutti i lemmi tradotti - - - - - definisce un intervalo di 2 date - - - - - data inizio - - - - - data fine - - - - - struttura orario ordinarie/strordinarie - - - - - ore ordinarie - - - - - ore straordinarie - - - - - classe di funzioni inerenti le date - - - - - inizializzazione empty - - - - - effettua l'operazione di intersezione tra 2 intervali di date restituendo ulteriore intervallo: NB se sono intervali disgiunti restituisce 9/9/9999 x inizio e fine - - - - - - - - oggetto mese precedente alla dataLilmite - - - - - - oggetto mese corrente fino alla dataLilmite - - - - - - confronta le date e restituisce true se le date sono nello stesso mese - - - - - - - - restituisce l'intervallo del giorno completo che comprende la data indicata - - - - - - - restituisce l'intervallo di N giorni fino alla data indicata - - - - - - - - restituisce l'intervallo della settimana corrente per la data indicata - - - - - - - restituisce l'intervallo del mese corrente per la data indicata - - - - - - - restituisce l'intervallo del mese che comprendela data indicata - - - - - - - restituisce l'intervallo dell'anno corrente per la data indicata - - - - - - - classe di gestione delle email - - - - - stringa nel nome DNS o dell'ip del server SMTP - - - - - metodo static per la gestione delle email - - - - - - metodo static per la gestione delle email - - - - - - - procedura invio email - - email mittente - email destinatario - oggetto dell'email - corpo del messaggio - - - - procedura invio email + scrittura in log! - - email mittente - email destinatario - oggetto dell'email - corpo del messaggio - - - - metodo singleton gestione email... - - - - - Tipo di comparazione, Binary == CaseSensitive, Text = insensitive - - - - - tipo controllo : binario - - - - - tipo controllo : text - - - - - Funzione di splitting compatibile con multi-character e multi-line - - - - - stringa da splittare - - - - - Delimiter con cui splittare - - - - - Costruttore dello Splitter - - - - - comparatore case sensitive - - - - - - - - comparatore case insensitive - - - - - - - - parte principale dello splitter - - stringa da splittare - delimitatore ricercato - true=il delimiter è un blocco unico, false=qualsiasi oggetto del delimiter fa split (come split base) - - 0 -> Binary=CaseSensitive, 1 -> Text=case insensitive - - - - - elimina dal nome file il tipo (desinenza) - - - - - - - Classe di metodi che estendono quelli base applicati alle string - - - - - Trasforma in MAIUSCOLo il primo carattere della stringa - - stringa da processare - stringa processata - - - - restituisce la stringa completa e corretta del filepath del server (anche con vDir) - - path relativo alla cartella iis dell'applicativo - path fisico tradotto - - - - effettua escape di stringhe di ricerca di tipo filtro per apici e altri caratteri non ammessi - - - - - - - fornisce dati di base per l'utente - - - - - fornisce cognome e nome utente formattati a partire dall'username e dalla tabella UTENTE - - - - - - - restituisce la riga completa dall'username richiesto - - - - - - - Represents a strongly typed in-memory cache of data. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - classe gestione utente: auth e permission/ruoli - versione GENERICA - - - - - cancella da session l'utente - - - - - carica la riga dati utente - - - - - Carica la tabella diritti dell'utente da db e salva in session - - - - - Carica la tabella diritti dell'utente da db e salva in session SOLO per il CDC indicato - - - - - - Effettua setup dei permessi una volta salvati i diritti - - - - - imposta la lingua utente dal valore della riga DB - - - - - costruisce la mappa del sito per l'utente - - - - - formatta un nodo in modo corretto dai dati indicati - - - - - - - - - inizializza la gestione utente... - - - - - traduce il lemma nella lingua dell'user corrente - - - - - - - traduce il lemma in inglese - - - - - - - traduce il lemma nella lingua dell'user e in inglese tra parentesi - - - - - - - LogOff utente con reset dati - - - - - - - - Procedura da chiamare DOPO aver messo in session i dati utente/dominio x caricare gli altri dati - - - - - - - - Procedura da chiamare DOPO aver messo in session i dati utente/dominio x caricare gli altri dati CON I DIRITTI SOLO per il CDC indicato - - - - - - - - - salva dati accessori quali il cdc dell'utente... - - - - - verifica nella tab diritti se l'utente abbia il right richiesto e fornisce bool in risposta - - - - - - - verifica le credenziali AD dell'utente... - - - - - - - - conta il numero di permessi utente per la pagina attuale e restituisce true se ne trova almeno 1 - - - - - - - verifica se il permesso utente per la pagina attuale sia write per almeno 1 diritto assegnato (restituisce true se ne trova almeno 1 con permessi2funzione.readwrite='S') - - - - - - - ricarica e ri-traduce la mappa sito per l'utente... - - - - - retituisce il nome apgina dai permessi utente - - - - - - restituisce cognome e nome di un utente dato username... - - username - - - - - restituisce cognome e nome di un utente data la matricola... - - matricola - - - - - restituisce cognome e nome di un utente dato username e dominio... - - username - dominio - - - - - restituisce cognome e nome di un utente dato username... - - username - - - - - restituisce cognome e nome di un utente dato username e dominio... - - username - dominio - - - - - restituisce cognome e nome di un utente dato username eventualmente comprensivo di dominio... - - {dominio\}userName - - - - - restituisce l'elenco delle funzioni abilitate dato modulo ed username partendo dalla radice dell'albero dei diritti - - - - - - - - restituisce l'elenco degli utenti dato i diritti che devono avere come modulo/funzione - - nome del modulo - nome della funzione - tabella utenti - - - - restituisce l'elenco delle email degli utenti dato i diritti che devono avere come modulo/funzione - - nome del modulo - nome della funzione - stringa di email separate da "," - - - - crea un nuovo utente con le credenziali indicate - - - - - - - - - - - - assegna il diritto all'utente indicato - - - - - - - - - - - toglier il diritto all'utente indicato - - - - - - - - - - - restituisce la tabella (per utente corrente) dei CDC abilitati per l'applicazione attuale da sessione (se non c'è salva...) - - modulo di cui si testano i diritti - - - - - versione statica della classe utente come singleton UtenTeSignletoN - - - - - restituisce la tabella diritti da session - - - - - tabella dei permessi utente - - - - - tabella dei permessi utente di tipo "WRITE" enabled - - - - - retituisce username AD - - - - - oggetto utente con metodi get/set - - - - - oggetto dominio con metodi get/set - - - - - oggetto modulo (applicazione) con metodi get/set - - - - - oggetto lingua utente con metodi get/set - - - - - oggetto runMode corrente - - - - - restituisce true se utente forzato da forceUser.aspx - - - - - restituisce i valori della riga utente da db - - - - - restituisce una stringa formattata con cognome, nome e matricola - - - - - restituisce una stringa della sigla dell'utente - - - - - restituisce una stringa formattata con cognome e nome - - - - - restituisce una stringa formattata con cognome - - - - - restituisce una stringa formattata con nome - - - - - fornisce un file XML della mappa del sito abilitato per l'utente... - - - - - è un boolean che indica se in session ci siano user/dominio e quindi utente autenticato in rpecedenza... - - - - - Accesso in lettura e scrittura al filesystem per gestione files upload e download - - - - - path di lavoro dei metodi leggi/scrivi - - - - - verifica esistenza directory ed eventualmente crea restituendo nome completo di "/" finale - - - - - - - restituisce una tab di files dato l'elenco dei files - - - - - - - setta le directory - - - - - - oggetto WebClient - - - - - inizializza il metodo alla cartella indicata - - - non serve +... x retrocompatibilità... - - - - metodo di avvio empty - - - - - cerca di caricare il fileinfo o da httpcontext-application re-position o direttamente come workpath + nomefile - - - - - - - cerca di caricare il fileinfo o da httpcontext-application re-position o direttamente come workpath + nomefile - - - - - - - - cerca di caricare la directoryInfo o da httpcontext-application re-position o direttamente come workpath - - - - - - - Legge i dati da uno stream fino a quando arriva alla fine. - I dati sono restituiti come un byte[] array. un eccezione IOException è - sollevata se una delle chiamate IO sottostanti fallisce. - - Lo stream da cui leggere - Lunghezza buffer iniziale (-1 = default 32k) - - - - verifica esistenza directory, eventualmente crea e restituisce controllo DirectoryInfo - - - - - - ottiene il dataset dei files presenti nella directory indicata esplicitamente - - dir da indicizzare... già mappata! ( es SteamwareStrings.getFilePath(...) ) - - - - - ottiene il dataset dei files presenti nella directory indicata all'istanziazione dell'oggetto - - - - - - ottiene il dataset dei files DEL TIPO "like {param}" presenti nella directory indicata all'istanziazione dell'oggetto - - - - - - elenco dei files come array di oggetti FileInfo - - - - - - elenco dei files come array di oggetti FileInfo filtrati per parametro - - - - - - - elimina la directory di lavoro se è dir virtuale mappata - - - - - - elimina tutti i files con la regexp indicata da una directory, true se cancellato almeno uno - - regexp selezione files in dir (* = tutti!!!) - - - - - verifica se il file indicato esista in workDir - - - - - - - elimina il file indicato dalla directory di lavoro - - - - - - - restituisce lo stream del file richiesto - - - - - - - restituisce la stringa letta dal file richiesto - - - - - - - scrive il file dallo stream byte[] inviato - - - - - - - - scrive il file dalla stringa inviata - - - - - - - - converte una string in un byte[] - - - - - - - converte un byte[] in una string - - - - - - - sposta il file da From a To... - - - - - - - - - copia il file da From a To... - - - - - - - - - copia il file da From a To... - - - - - - - - - - imposta la dir di lavoro - - - - - - imposta la dir di lavoro - - - non serve +... x retrocompatibilità... - - - - imposta la dir di lavoro impostandola dal mapPath corretto della web app... - - - - - - esegue un comando in shell - - - - - - - - - esegue un comando in shell - - - - - - - - - Scarica un file dall'url fornito nella directory indicata x il filemover col nome richiesto - - url del file - nome con cui salvare il file - - - - - comprime zip il file indicato - - - - - - - comprime zip i files corrispondenti alla RegExp indicata nella dir corrente - - Espressione ricerca, come *.txt - Nome del file zip da creare - - - - - calcola la dim della directory corrente... - - - - - - - elimina il file + vecchio - - - - - - - versione statica (singleton) del'oggetto fileMover - - - - - classe per effettuare confronto tra valori disomogeneri per tipo e costruire diff testuali - - - - - valore originale - - - - - nuovo valore - - - - - dictionary dei parametri vecchi - - - - - dictionary dei parametri nuovi - - - - - inizializzazione classe - - - - - valorizza i diff dei valori old e new - - - - - calcola solo il vettore dei valori old (x delete) - - - - - oggetto statico per il confronto valori - - - - - stringa diff dei valori originali modificati - - - - - stringa diff dei valori nuovi modificati - - - - - dictionary dei parametri old - - - - - dictionary dei parametri new - - - - - classe gestione logging esteso di eventi e note utente (correlabili) - - - - - TableAdapter di accesso alla tabella anagrafica filtraggi - - - - - TableAdapter di accesso alla tabella anagrafica record - - - - - TableAdapter di accesso alla tabella logging record di eventi - - - - - TableAdapter di accesso alla tabella logging utente - - - - - TableAdapter di accesso alla vista logging eventi - - - - - TableAdapter di accesso alla vista logging utente - - - - - effettua setup dei connection strings da web.config delal singola applicazione - - - - - avvio i tari tableAdapters - - - - - avvio della classe istanziando db e - - - - - oggetto statico di accesso ai metodi della classe... - - - - - tabella eventi - - - - - - tabella note - - - - - - tabella eventi secondo filtro - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - - - - - tabella note secondo filtro - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - - - - - tabella eventi secondo filtro e condizione ulteriore WHERE esplicitata - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - ulteriore condizione WHERE per filtrare i dati (testo {0} della condizione "WHERE {0}" - - - - - tabella note secondo filtro e condizione ulteriore WHERE esplicitata - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - ulteriore condizione WHERE per filtrare i dati (testo {0} della condizione "WHERE {0}" - - - - - tabella note secondo filtro - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - - - - - inserisce l'evento indicato dai parametri - - user che ha generato l'evento - pagina/form applicaizone in cui l'evento si è generato - valore originale(se c'è) - valore nuovo/modificato - descrizione evento (poi gestita con anagrafica interna) - filtro logico evento (poi gestita con anagrafica interna) - - - - inserisce la nota utente indicata dai parametri, restituisce idx della nota creata... - - user che ha inserito la nota - testo della nota - valore ulteriore da associare alla nota (es: label, codice, versione, ...) - filtro logico evento (poi gestita con anagrafica interna) - intero dell'idx della nota creata - - - - associa l'evento e la nota indicati - - idx del record da associare - idx chiave della nota da associare - - - - associa l'ultimo evento del filtro indicato alla nota - - filtro associato all'ultimo evento... - idx chiave della nota da associare - - - - segna come cestinati tutti gli eventi dell'utente indicato non ancora associati o cestinati - - utente generatore dell'evento - - - - segna come cestinati tutti gli eventi dell'utente indicato non ancora associati o cestinati - - utente generatore dell'evento - - - - Elimina gli eventi cestinati generati dall'utente indicato - - utente generatore dell'evento - - - - Elimina gli eventi cestinati anteriori alla data selezionata - - dataOra dell'evento - - - - effettua la registrazione dell'evento in session - - - - - metodo di comportamento del controllo di logging - - - - - nasconde pannello log - - - - - memorizza log inserito - - - - - mostra pannello log - - - - - metodo di comportamento del controllo di logging - - - - - indica il primo step del doppio livello di approvazione (completamento) - - - - - SOLO con incremento indice di revisione dell'oggetto approvato - - - - - SOLO mantenendo indice di revisione corrente - - - - - permette SIA con revisione che senza (e anche rev -1) - - - - - Pagina base applicazioni SteamWare da cui derivare le altre - - - - - Iniziazlizzazione void (non fa nulla) - - - - - Metodo MAIN: viene eseguita al caricamento ed effettua delle routines per il controllo utente e istanzia l'oggetto memLayer - - - - - - - rimanda alla pagina di Work In Progress salvando in session un titolo ed una descrizione che al pagina wip poi mostrerà all'utente - - titolo da mostrare nella pagina WIP - descrizione da mostrare nella pagina WIP - diff --git a/GMW/GMW_Term/mazzAppSettings.config b/GMW/GMW_Term/mazzAppSettings.config index b8069efe..55d6ae3c 100644 --- a/GMW/GMW_Term/mazzAppSettings.config +++ b/GMW/GMW_Term/mazzAppSettings.config @@ -34,11 +34,15 @@ + + + + @@ -49,6 +53,10 @@ + + + + diff --git a/GMW/GMW_Term/obj/Debug/GMW_Term.dll b/GMW/GMW_Term/obj/Debug/GMW_Term.dll index 5168b310..029ed100 100644 Binary files a/GMW/GMW_Term/obj/Debug/GMW_Term.dll and b/GMW/GMW_Term/obj/Debug/GMW_Term.dll differ diff --git a/GMW/GMW_Term/obj/Debug/ResolveAssemblyReference.cache b/GMW/GMW_Term/obj/Debug/ResolveAssemblyReference.cache index 65899ff1..7cdf79d7 100644 Binary files a/GMW/GMW_Term/obj/Debug/ResolveAssemblyReference.cache and b/GMW/GMW_Term/obj/Debug/ResolveAssemblyReference.cache differ diff --git a/GMW/GMW_WS/Web.config b/GMW/GMW_WS/Web.config index 7411a912..6344f4bf 100644 --- a/GMW/GMW_WS/Web.config +++ b/GMW/GMW_WS/Web.config @@ -114,8 +114,12 @@ + + + + @@ -126,6 +130,10 @@ + + + + diff --git a/GMW/GMW_WS/bilance.asmx.cs b/GMW/GMW_WS/bilance.asmx.cs index f120d64d..3d5b4898 100644 --- a/GMW/GMW_WS/bilance.asmx.cs +++ b/GMW/GMW_WS/bilance.asmx.cs @@ -33,6 +33,7 @@ namespace GMW_WS protected GMW_data.Type.elenchi gestEl; protected int logLevel = 0; + #endregion #region area anagrafiche @@ -649,6 +650,14 @@ namespace GMW_WS public bool UdcCall_PrintLabel(string place, tipoCartellino cartellino, string UDC) { bool answ = false; + //answ = doPrintLabel(cartellino, UDC, answ); + answ = reportPrinter.obj.stampaCartellino(cartellino, UDC); + return answ; + } + +#if false + public bool doPrintLabel(tipoCartellino cartellino, string UDC, bool answ) + { string printerName = ""; string outForm = ""; string pagWidth = ""; @@ -690,7 +699,8 @@ namespace GMW_WS } return answ; } - + +#endif #endregion } } diff --git a/GMW/GMW_WS/bin/GMW.dll b/GMW/GMW_WS/bin/GMW.dll index b4ce4694..c6007ecc 100644 Binary files a/GMW/GMW_WS/bin/GMW.dll and b/GMW/GMW_WS/bin/GMW.dll differ diff --git a/GMW/GMW_WS/bin/GMW_WS.dll b/GMW/GMW_WS/bin/GMW_WS.dll index e557a580..7ff1edfc 100644 Binary files a/GMW/GMW_WS/bin/GMW_WS.dll and b/GMW/GMW_WS/bin/GMW_WS.dll differ diff --git a/GMW/GMW_WS/bin/GMW_data.dll b/GMW/GMW_WS/bin/GMW_data.dll index 7c8823dc..ce8ac84a 100644 Binary files a/GMW/GMW_WS/bin/GMW_data.dll and b/GMW/GMW_WS/bin/GMW_data.dll differ diff --git a/GMW/GMW_WS/bin/SteamWare.xml b/GMW/GMW_WS/bin/SteamWare.xml index 4d866de1..6809ec2a 100644 --- a/GMW/GMW_WS/bin/SteamWare.xml +++ b/GMW/GMW_WS/bin/SteamWare.xml @@ -4,3191 +4,5 @@ SteamWare - - - classe gesione log files applicazioni - - - - - directory base x logs - - - - - nome del file corrente - - - - - max mb di log da accumulare - - - - - singleton del logger - - - - - avvio del logger nella dir desiderata - - - - - avvio del logger nella dir desiderata - - - - - avvio del logger nella dir desiderata con il max di dati indicato - - - - - scrive sul file log di default il valore della variabile string passata su una riga... (tab delim?!?) - - testo iniziale del log - - - - - scrive un messaggio di log con etichetta pre - - testo messaggio - tipo di log da registrare (etichetta [...]) - - - - - fornisce il nome del file in cui loggare (ed eventualmente crea...) - - - - - provvede a verificare la dim della cartella dei log e cancella i + vecchi fino a restare a dim inferiori a _logMaxMb - - - - - fornisce il file + vecchio - - - - - - - tipo di log ammesso - - - - - informazioni di debug - - - - - errori - - - - - eccezioni nell'esecuzione try/catch - - - - - errori fatali - - - - - informazioni opzionali - - - - - log dei lemmi invocati per traduzione da vocabolario - - - - - fase di avvio componente - - - - - avvisi - - - - - classe di wrap verso i TableAdapter impiegati - - - - - metodo protected di avvio della classe - - - - - procedura di avvio dei tableAdapter - - - - - procedura di avvio dei tableAdapter - - - - - effettua setup dei connection strings da web.config delal singola applicazione - - - - - effettua setup dei connection strings da web.config delal singola applicazione - - - - - setup delle tabelle vocabolario - - - - - prende l'oggetto tabVocabolario in ram e lo trasforma in dictionary - - - - - - tableAdapter diritti - - - - - tableAdapter permessi - - - - - tableAdapter funzione - - - - - tableAdapter permessi2funzione - - - - - tableAdapter CdC - - - - - tableAdapter utenti - - - - - table adapter lingue - - - - - table adapter vocabolario - - - - - table adapter versione vocabolario - - - - - table adapter versione anagrafica - - - - - oggetto vocabolario organizzato come dizionario con chiave lang#lemma e valore la traduzione - - - - - resetta il vocabolario rileggendo i dati... - - - - - crea nel db corrente il lemma richiesto e lo valorizza come "--{0}--" - - - - - - - classe singleton x la gestione dei tableadapters - - - - - elenco lingue ammesse da vocabolario... - - - - - classe di gestione lettura - - - - - esegue parsing fornendo dati ed headers - - - - - - - - esegue parsing fornendo dati - - - - - - - esegue parsing fornendo dati come stream - - - - - - - esegue parsing fornendo dati come stream ed headers - - - - - - - - struttura di comando da input utente (es: via barcode) - - - - - definisce se il comando sia valido o no - - - - - testo da mostrare dato il comando - - - - - comando registrato - - - - - comando precedentemente inserito - - - - - descrizione del comando - - - - - descrizione del comando precedente - - - - - valore del comando - - - - - valore tradotto del comando - - - - - costruttore del metodo... - - - - - Base class for every user control in the application, containing some common - behaviour and utility methods. - It is not meant to be be used directly. - - - - - tipo id controllo con classi di base comune da cui derivare gli *.asmx - - - - - nome della pagina correntemente caricata - - - - - memorizza la pagina precedente (ovvero la corrente ma non da page-object ma in session... - - - - - stringa con CDC in (...) dei cdc abilitati (da permesso gerarchicamente a discendere...) - - - - - stringa con elenco CDC abilitati (da permesso gerarchicamente a discendere...) - - - - - tabella diritti - - - - - tabella di tutti i cdc - - - - - tipo di anagrafica usata - - - - - importo il tipo di vista del modulo - - - - - elenco testuale csv dei cdc accessibili all'utente (x filtri tipo IN(...)) - - - - - numero di righe standard x i datagrid - - - - - numero di righe standard x i datagrid di anagrafica - - - - - numero di righe standard x i datagrid lunghi - - - - - numero di righe standard x i datagrid medi - - - - - numero di righe standard x i datagrid su mezza pagina - - - - - numero di righe standard x i selettori popup - - - - - indirizzo email dell'admin applicativo cui vanno le email in caso di anomalie... - - - - - indirizzo email dell'applicativo da cui partono le email in caso di anomalie... - - - - - indirizzo server SMTP - - - - - elenco delle pagine "safe" ovvero da non autorizzare - da web.config - - - - - elenco delle pagine "common" ovvero da autorizzare ma senza bisogno diritti in anagrafica - da web.config - - - - - valore che determina se è possibile forzare impersonificazioen utente... - - - - - livello di log (1-->5) - - - - - dir di logging - - - - - MAIN: esecuzione al caricamento del modulo delle routines di controllo utente e creazione pagina - - - - - - - predisposizione dati x pagina da cache/database a seconda della disponibilità in cache o refresh (B.1.4) - - - - - popola gli oggetti e le labels... (B.1.6) - - - - - disegna la pagina: prima i controlli poi il datagrid - - - - - aggiunge i link x i selettori - - - - - sistema i vari controlli della pagina - - - - - aggiorna eventuali datalist e datagrid - - - - - sistema tutte le labels traducendo i lemmi nella lingua utente ed in inglese - - - - - calcola come percentuale la radio dividendo/divisore - - - - - - - - limita una stringa al numero max di caratteri imposto - - - - - - - - Reads data from a stream until the end is reached. The - data is returned as a byte array. An IOException is - thrown if any of the underlying IO calls fail. - - The stream to read data from - The initial buffer length - - - - converte una data in formato aaaammgg in stringa gg/mm/aaaa - - - - - - - converte una data in formato aaaammgg in stringa aaaa-mm-gg - - - - - - - converte una stringa in formato gg/mm/aaaa in stringa(intero data) in formato aaaammgg - - - - - - - converte una datetime in un intero tipo yyyymmddhhmmss - - - - - - - formatta la data in formato dateTime in una data formato italiano come stringa gg/mm/aaaa - - - - - - - invia un alert jscript con messaggio indicato... - - messaggio dell'alert da mandare - - - - scrive immediatamente sulla pagina web il messaggio di avanzamento... - - - - - - restituisce una scringa formattata in testa e coda x essere un corretto comando javascript - - - - - - - invio email senza log - - - - - - - - - - invio email con log - - - - - - - - - - caricamento dati applicazione da sessione (B.1.3) - - - - - setup datamanagers... - - - - - reset update del modulo corrente - - - - - (ri)carica i dataset del modulo - - - - - verifica se tutti i dataset richiesti sono disponibili i cache - - - - - - salva nella cache i dataset caricati - - - - - carica dalla cache i dataset necessari - - - - - legge i valori standard x dataset e parametri - - - - - leggi i parametri di configurazione standard dell'applicativo - - - - - genera la stringa dei cdc autorizzati dell'utente - - - - - legge il dataset dei CdC - - - - - caricamento dati user da sessione (B.1.1) - - - - - verifica che l'utente abbia almeno un permesso per la pagina corrente altrimenti redirect ad unauthorized - - - - - salva in variabile pagina il nome della pagina corrente - - - - - selezione delle posizioni cdc autorizzate come stringa di filtraggio su POSIZIONE LIKE, se non ce ne fossero redirige su unauthorized.aspx - - - - - - risponde alla domanda se l'utente abbia permesso tipo writable (S) nel permessi2funzione - - - - - - verifica la condizione booleana e formatta di conseguenza la stringa di filtraggio da accodare al filtro x CdC autorizzati - - condizione - tipo di eguaglianza - nome parametro - valore parametro - - - - - crea la stringa di filtraggio x data secondo modalità tipo inizio/fine/durante... - - - - - - crea la stringa di filtraggio x data secondo modalità tipo minoreUguale / uguale / maggioreUguale... - - - - - - verifica la condizione booleana e formatta di conseguenza la stringa di filtraggio tipo LIKE x i campi inseriti separati da # SE valParam !="" - - - - - - - - esegue la ricerca dei cdc nelle posizioni indicate dal filtro e restituisce elenco distinct degli stessi - - filtro con cui cercare i cdc (del tipo " (POSIZIONE LIKE 'T.1.2.3%') OR ... " - stringa di filtraggio ricostruita per l'elenco dei cdc fino a quel momento trovati - ultimo cdc trovato - cdc corrente - - - - - restituisce il cdc dell'utente data la sua matricola - - - - - - - restituisce l'utente AS dall'utente win - - - - - - - restituisce la descr del CdC - - - - - - - invia la stringa jscript di conferma pre-cancellazione - - - - - - restituisce la stringa del path corretto per l'immagine richiesta nel formato "~/images/{0}{1}" - - verrà usato x posizione {0}, tipo "view" - verrà usato x posizione {1}, tipo "_s.png" - - - - - restituisce la stringa del path corretto per l'immagine richiesta nel formato "~/images/{0}{1}" - - verrà usato x posizione {0}, tipo "view" - verrà usato x posizione {1}, tipo "_s.png" - tipo del file richiesto..." - - - - - effettua traduzione del lemma - - - - - - - effettua traduzione in inglese del lemma - - - - - - - definisce visibilità - - - - - - - effettua la registrazione degli eventi - - - - - effettua l'inserimento vero e proprio dell'evento letto dai valori in session x l'utente corrente... - - evento da loggare - valori originali - nuovi valori - filtro associato - - - - salva in sessione i valori indicati - - dictionary dei valori vecchi - dictionary dei valori nuovi - bool su abilitazione al log dell'oggetto - descrizione evento da loggare - filtro associato all'evento - restituisce il numero di elementi contenuti, -1 significa nessuna differenza... - - - - salva in sessione i valori per un oggetto che sta x essere eliminato - - dictionary dei valori vecchi - bool su abilitazione al log dell'oggetto - descrizione evento da loggare - filtro associato all'evento - restituisce il numero di elementi contenuti, -1 significa nessuna differenza... - - - - imposto il tipo di anagrafica del controlloS - - - - - variabile salvata in view state x la stringa di sorting - dg 2 - - - - - variabile salvata in view state x la stringa di sorting - dg 2 - - - - - legge e scrive in viewState la stringa di filtraggio... - - - - - variabile salvata in viewstate x la direzione del sorting - - - - - genera la stringa filtro x i cdc autorizzati x l'user - - - - - - tipo di vista del modulo - - - - - Summary description for selettori - - - - - - - - - - - - - - - carica i dati CdC se in cache o da TableAdapter - - - - - restituisce l'elenco di tutti i cdc - - - - - - restituisce l'elenco di tutti i cdc della gerarchia dell'utente - - - - - - Represents a strongly typed in-memory cache of data. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - classe di gestione dei db x creazione/update alla versione richiesta - - - - - oggetto connessione - - - - - stringa di connessione - - - - - dir che contiene gli script da eseguire... - - - - - formato del file SQL impiegato (nel senso di formato come iFormat del tipo "App_{0:0000}.sql" --> da App_0001.sql ad App_9999.sql) - - - - - avvio protected della classe - - - - - esegue gli script di sql di update dal file richiesto - - - - - - - - Aggiorna il db eseguendo gli script dalla versione di partenza a quella di arrivo - - NB: per definizione rev 0 = resetta svuotando DB, rev 1 crea tabelle iniziali, rev 2 inserisce i valori di default - - nome DB di cui cercare script - revisione di partenza - revisione di arrivo - timeout max per ogni operazione - - - - - verifica se il db indicato esiste o meno... - - - - - - - - crea il db indicato con i parametri di connessione specificati - - - - - - - - Represents a strongly typed in-memory cache of data. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - classe con funzioni specifiche di calcolo - - - - - inizializzazione classe - - - - - elenco dei caratteri base 36: 0..9A..Z - - - - - - converte da base di dimensione nBase a valore intero - - valore in formato nBase - base, max 36 (0..9A..Z) - - - - - metodo di accesso singleton - - - - - tipo di chart (2D/3D) - - - - - 2D - - - - - 3D - - - - - web control che disegna un grafico a torta - - - - - altezza di default - - - - - larghezza di default - - - - - padding di default - - - - - legenda visibile di default - - - - - soglia minima 5% per mostrare il dato - - - - - renderizza il contenuto - - - - - - disegna la leggenda html laterale... - - - - - - disegna piechart 2-dim - - - - - - disegna piechart 3d ellittica - - - - - - traduce la stringa colore in oggetto colore - - - - - - - converte intero a stringa esadecimale - - - - - - - converte stringa esadecimale a intero - - - - - - - tipo di grafico (2D/3D) - - - - - ampiezza del grafico - - - - - altezza del grafico - - - - - padding grafico/container - - - - - boolean se si debba mostrale la legenda - - - - - percentuale minima da mostrare - - - - - serie di dati (tipizzata) ma mostrare - - - - - testo associato al controllo - - - - - layer gestione vari tipi di memoria: cache, session... - - - - - lettore file configurazione - - - - - oggetto singleton x accesso al layer di memoria - - - - - classe gestione accessi a Session, cache, viewstate, configuration... - - - - - legge dalla config un valore bool - - - - - - - legge dalla config un valore string - - - - - - - legge dalla config un valore int - - - - - - - carica dalla sessione un dato di tipo object generico - - - - - - - carica dalla sessione un dato di tipo boolean (se vuoto false) - - - - - - - carica dalla sessione un dato di tipo string - - - - - - - carica dalla sessione un dato di tipo long - - - - - - - carica dalla sessione un dato di tipo int - - - - - - - inserisce in session un valore - - - - - - - salvo un valore come cookie - - - - - - - - restituisco un valore da cookie - - - - - - - inserisce in session un valore - - nome della variabile - valore associato - indica se debba sopravvivere ad update (inserita in elenco valSess2SurvUpd) - - - - - svuota una variabile dalla session - - - - - - restituisce true se è presente in session l'oggetto richiesto - - - - - - - carica dalla Cache un dato di tipo object generico - - - - - - - carica dalla Cachee un dato di tipo boolean (se vuoto false) - - - - - - - carica dalla Cachee un dato di tipo string - - - - - - - inserisce in Cache un valore - - nome della variabile - valore - - - - inserisce in Cache un valore e su richiesta regitra tra le tab in cache da svuotare on update.. - - nome della variabile - valore - da registrare come tabella da svuotare on update? - - - - - svuota una variabile dalla Cache - - - - - - restituisce true se è presente in cache l'oggetto richiesto - - - - - - - aggiunge la stringa corrente nel dictionary delle tabelle messe in cache e da aggiornare su comando update - - - - - - aggiunge la stringa corrente nel dictionary delle tabelle messe in session che vanno preservate da comando update (es: oggetto selezionato...) - - - - - - - forza lo svuotamento delel tabelle indicate come in cache... - - - - - elenco dictionary delle tab in cache da aggiornare con update svuotando da cache... - - - - - elenco dictionary dei valori in session da NON aggiornare con update... - - - - - classe gestione parametri deviceper stampa - - - - - creazione oggetto parametri per stampa - - - - - - - - - - - - formato output - - - - - altezza - - - - - larghezza - - - - - margine Sx - - - - - margine Dx - - - - - margine Top - - - - - margine Bottom - - - - - enumeratore modalità login - - - - - login AD normale - - - - - forza utente fornendo password - - - - - forza ad un utente standard scelto dall'elenco - - - - - enumeratore modalità scrittura tag siteMap - - - - - nodo di tipo iniziale - apertura - - - - - nodo di tipo foglia - - - - - nodo di tipo finale - chiusura - - - - - enumeratore tipi di anagrafica - - - - - tipo di anagrafica Brembo - - - - - tipo di anagrafica generica - - - - - tipo di vista del modulo - - - - - modalità selezione - - - - - modalità editing - - - - - tipologia di file immagine - - - - - formato gif (no alpha channel) - - - - - formato jpeg - - - - - formato png - - - - - tipo di immagini usate per le icone di comando in web applications - - - - - icona annulla (croce rossa) - - - - - icona approva (simbolo coccarda) - - - - - icona barcode in campo bianco - - - - - icona barcode in campo arancio - - - - - icona clona (magic wand) - - - - - icona converma (spunta verde) - - - - - icona elimina (cestino) - - - - - icona modifica (matita) - - - - - icona notepad (blocco note) - - - - - icona notepad + pdf (blocco note) - - - - - icona nuovo (segno +) - - - - - icona seleziona (lente) - - - - - icona semaforo giallo - - - - - icona semaforo rosso - - - - - icona semaforo verde - - - - - icona stampa (printer) - - - - - dimensione immagini usate per le icone di comando in web applications - - - - - formato piccolo - - - - - formato medio - - - - - formato grande - - - - - modalità di esecuzione applicativi - - - - - modalità normale - - - - - modalità debug - - - - - salvataggio di tutti i lemmi tradotti - - - - - definisce un intervalo di 2 date - - - - - data inizio - - - - - data fine - - - - - struttura orario ordinarie/strordinarie - - - - - ore ordinarie - - - - - ore straordinarie - - - - - classe di funzioni inerenti le date - - - - - inizializzazione empty - - - - - effettua l'operazione di intersezione tra 2 intervali di date restituendo ulteriore intervallo: NB se sono intervali disgiunti restituisce 9/9/9999 x inizio e fine - - - - - - - - oggetto mese precedente alla dataLilmite - - - - - - oggetto mese corrente fino alla dataLilmite - - - - - - confronta le date e restituisce true se le date sono nello stesso mese - - - - - - - - restituisce l'intervallo del giorno completo che comprende la data indicata - - - - - - - restituisce l'intervallo di N giorni fino alla data indicata - - - - - - - - restituisce l'intervallo della settimana corrente per la data indicata - - - - - - - restituisce l'intervallo del mese corrente per la data indicata - - - - - - - restituisce l'intervallo del mese che comprendela data indicata - - - - - - - restituisce l'intervallo dell'anno corrente per la data indicata - - - - - - - classe di gestione delle email - - - - - stringa nel nome DNS o dell'ip del server SMTP - - - - - metodo static per la gestione delle email - - - - - - metodo static per la gestione delle email - - - - - - - procedura invio email - - email mittente - email destinatario - oggetto dell'email - corpo del messaggio - - - - procedura invio email + scrittura in log! - - email mittente - email destinatario - oggetto dell'email - corpo del messaggio - - - - metodo singleton gestione email... - - - - - Tipo di comparazione, Binary == CaseSensitive, Text = insensitive - - - - - tipo controllo : binario - - - - - tipo controllo : text - - - - - Funzione di splitting compatibile con multi-character e multi-line - - - - - stringa da splittare - - - - - Delimiter con cui splittare - - - - - Costruttore dello Splitter - - - - - comparatore case sensitive - - - - - - - - comparatore case insensitive - - - - - - - - parte principale dello splitter - - stringa da splittare - delimitatore ricercato - true=il delimiter è un blocco unico, false=qualsiasi oggetto del delimiter fa split (come split base) - - 0 -> Binary=CaseSensitive, 1 -> Text=case insensitive - - - - - elimina dal nome file il tipo (desinenza) - - - - - - - Classe di metodi che estendono quelli base applicati alle string - - - - - Trasforma in MAIUSCOLo il primo carattere della stringa - - stringa da processare - stringa processata - - - - restituisce la stringa completa e corretta del filepath del server (anche con vDir) - - path relativo alla cartella iis dell'applicativo - path fisico tradotto - - - - effettua escape di stringhe di ricerca di tipo filtro per apici e altri caratteri non ammessi - - - - - - - fornisce dati di base per l'utente - - - - - fornisce cognome e nome utente formattati a partire dall'username e dalla tabella UTENTE - - - - - - - restituisce la riga completa dall'username richiesto - - - - - - - Represents a strongly typed in-memory cache of data. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - classe gestione utente: auth e permission/ruoli - versione GENERICA - - - - - cancella da session l'utente - - - - - carica la riga dati utente - - - - - Carica la tabella diritti dell'utente da db e salva in session - - - - - Carica la tabella diritti dell'utente da db e salva in session SOLO per il CDC indicato - - - - - - Effettua setup dei permessi una volta salvati i diritti - - - - - imposta la lingua utente dal valore della riga DB - - - - - costruisce la mappa del sito per l'utente - - - - - formatta un nodo in modo corretto dai dati indicati - - - - - - - - - inizializza la gestione utente... - - - - - traduce il lemma nella lingua dell'user corrente - - - - - - - traduce il lemma in inglese - - - - - - - traduce il lemma nella lingua dell'user e in inglese tra parentesi - - - - - - - LogOff utente con reset dati - - - - - - - - Procedura da chiamare DOPO aver messo in session i dati utente/dominio x caricare gli altri dati - - - - - - - - Procedura da chiamare DOPO aver messo in session i dati utente/dominio x caricare gli altri dati CON I DIRITTI SOLO per il CDC indicato - - - - - - - - - salva dati accessori quali il cdc dell'utente... - - - - - verifica nella tab diritti se l'utente abbia il right richiesto e fornisce bool in risposta - - - - - - - verifica le credenziali AD dell'utente... - - - - - - - - conta il numero di permessi utente per la pagina attuale e restituisce true se ne trova almeno 1 - - - - - - - verifica se il permesso utente per la pagina attuale sia write per almeno 1 diritto assegnato (restituisce true se ne trova almeno 1 con permessi2funzione.readwrite='S') - - - - - - - ricarica e ri-traduce la mappa sito per l'utente... - - - - - retituisce il nome apgina dai permessi utente - - - - - - restituisce cognome e nome di un utente dato username... - - username - - - - - restituisce cognome e nome di un utente data la matricola... - - matricola - - - - - restituisce cognome e nome di un utente dato username e dominio... - - username - dominio - - - - - restituisce cognome e nome di un utente dato username... - - username - - - - - restituisce cognome e nome di un utente dato username e dominio... - - username - dominio - - - - - restituisce cognome e nome di un utente dato username eventualmente comprensivo di dominio... - - {dominio\}userName - - - - - restituisce l'elenco delle funzioni abilitate dato modulo ed username partendo dalla radice dell'albero dei diritti - - - - - - - - restituisce l'elenco degli utenti dato i diritti che devono avere come modulo/funzione - - nome del modulo - nome della funzione - tabella utenti - - - - restituisce l'elenco delle email degli utenti dato i diritti che devono avere come modulo/funzione - - nome del modulo - nome della funzione - stringa di email separate da "," - - - - crea un nuovo utente con le credenziali indicate - - - - - - - - - - - - assegna il diritto all'utente indicato - - - - - - - - - - - toglier il diritto all'utente indicato - - - - - - - - - - - restituisce la tabella (per utente corrente) dei CDC abilitati per l'applicazione attuale da sessione (se non c'è salva...) - - modulo di cui si testano i diritti - - - - - versione statica della classe utente come singleton UtenTeSignletoN - - - - - restituisce la tabella diritti da session - - - - - tabella dei permessi utente - - - - - tabella dei permessi utente di tipo "WRITE" enabled - - - - - retituisce username AD - - - - - oggetto utente con metodi get/set - - - - - oggetto dominio con metodi get/set - - - - - oggetto modulo (applicazione) con metodi get/set - - - - - oggetto lingua utente con metodi get/set - - - - - oggetto runMode corrente - - - - - restituisce true se utente forzato da forceUser.aspx - - - - - restituisce i valori della riga utente da db - - - - - restituisce una stringa formattata con cognome, nome e matricola - - - - - restituisce una stringa della sigla dell'utente - - - - - restituisce una stringa formattata con cognome e nome - - - - - restituisce una stringa formattata con cognome - - - - - restituisce una stringa formattata con nome - - - - - fornisce un file XML della mappa del sito abilitato per l'utente... - - - - - è un boolean che indica se in session ci siano user/dominio e quindi utente autenticato in rpecedenza... - - - - - Accesso in lettura e scrittura al filesystem per gestione files upload e download - - - - - path di lavoro dei metodi leggi/scrivi - - - - - verifica esistenza directory ed eventualmente crea restituendo nome completo di "/" finale - - - - - - - restituisce una tab di files dato l'elenco dei files - - - - - - - setta le directory - - - - - - oggetto WebClient - - - - - inizializza il metodo alla cartella indicata - - - non serve +... x retrocompatibilità... - - - - metodo di avvio empty - - - - - cerca di caricare il fileinfo o da httpcontext-application re-position o direttamente come workpath + nomefile - - - - - - - cerca di caricare il fileinfo o da httpcontext-application re-position o direttamente come workpath + nomefile - - - - - - - - cerca di caricare la directoryInfo o da httpcontext-application re-position o direttamente come workpath - - - - - - - Legge i dati da uno stream fino a quando arriva alla fine. - I dati sono restituiti come un byte[] array. un eccezione IOException è - sollevata se una delle chiamate IO sottostanti fallisce. - - Lo stream da cui leggere - Lunghezza buffer iniziale (-1 = default 32k) - - - - verifica esistenza directory, eventualmente crea e restituisce controllo DirectoryInfo - - - - - - ottiene il dataset dei files presenti nella directory indicata esplicitamente - - dir da indicizzare... già mappata! ( es SteamwareStrings.getFilePath(...) ) - - - - - ottiene il dataset dei files presenti nella directory indicata all'istanziazione dell'oggetto - - - - - - ottiene il dataset dei files DEL TIPO "like {param}" presenti nella directory indicata all'istanziazione dell'oggetto - - - - - - elenco dei files come array di oggetti FileInfo - - - - - - elenco dei files come array di oggetti FileInfo filtrati per parametro - - - - - - - elimina la directory di lavoro se è dir virtuale mappata - - - - - - elimina tutti i files con la regexp indicata da una directory, true se cancellato almeno uno - - regexp selezione files in dir (* = tutti!!!) - - - - - verifica se il file indicato esista in workDir - - - - - - - elimina il file indicato dalla directory di lavoro - - - - - - - restituisce lo stream del file richiesto - - - - - - - restituisce la stringa letta dal file richiesto - - - - - - - scrive il file dallo stream byte[] inviato - - - - - - - - scrive il file dalla stringa inviata - - - - - - - - converte una string in un byte[] - - - - - - - converte un byte[] in una string - - - - - - - sposta il file da From a To... - - - - - - - - - copia il file da From a To... - - - - - - - - - copia il file da From a To... - - - - - - - - - - imposta la dir di lavoro - - - - - - imposta la dir di lavoro - - - non serve +... x retrocompatibilità... - - - - imposta la dir di lavoro impostandola dal mapPath corretto della web app... - - - - - - esegue un comando in shell - - - - - - - - - esegue un comando in shell - - - - - - - - - Scarica un file dall'url fornito nella directory indicata x il filemover col nome richiesto - - url del file - nome con cui salvare il file - - - - - comprime zip il file indicato - - - - - - - comprime zip i files corrispondenti alla RegExp indicata nella dir corrente - - Espressione ricerca, come *.txt - Nome del file zip da creare - - - - - calcola la dim della directory corrente... - - - - - - - elimina il file + vecchio - - - - - - - versione statica (singleton) del'oggetto fileMover - - - - - classe per effettuare confronto tra valori disomogeneri per tipo e costruire diff testuali - - - - - valore originale - - - - - nuovo valore - - - - - dictionary dei parametri vecchi - - - - - dictionary dei parametri nuovi - - - - - inizializzazione classe - - - - - valorizza i diff dei valori old e new - - - - - calcola solo il vettore dei valori old (x delete) - - - - - oggetto statico per il confronto valori - - - - - stringa diff dei valori originali modificati - - - - - stringa diff dei valori nuovi modificati - - - - - dictionary dei parametri old - - - - - dictionary dei parametri new - - - - - classe gestione logging esteso di eventi e note utente (correlabili) - - - - - TableAdapter di accesso alla tabella anagrafica filtraggi - - - - - TableAdapter di accesso alla tabella anagrafica record - - - - - TableAdapter di accesso alla tabella logging record di eventi - - - - - TableAdapter di accesso alla tabella logging utente - - - - - TableAdapter di accesso alla vista logging eventi - - - - - TableAdapter di accesso alla vista logging utente - - - - - effettua setup dei connection strings da web.config delal singola applicazione - - - - - avvio i tari tableAdapters - - - - - avvio della classe istanziando db e - - - - - oggetto statico di accesso ai metodi della classe... - - - - - tabella eventi - - - - - - tabella note - - - - - - tabella eventi secondo filtro - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - - - - - tabella note secondo filtro - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - - - - - tabella eventi secondo filtro e condizione ulteriore WHERE esplicitata - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - ulteriore condizione WHERE per filtrare i dati (testo {0} della condizione "WHERE {0}" - - - - - tabella note secondo filtro e condizione ulteriore WHERE esplicitata - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - ulteriore condizione WHERE per filtrare i dati (testo {0} della condizione "WHERE {0}" - - - - - tabella note secondo filtro - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - - - - - inserisce l'evento indicato dai parametri - - user che ha generato l'evento - pagina/form applicaizone in cui l'evento si è generato - valore originale(se c'è) - valore nuovo/modificato - descrizione evento (poi gestita con anagrafica interna) - filtro logico evento (poi gestita con anagrafica interna) - - - - inserisce la nota utente indicata dai parametri, restituisce idx della nota creata... - - user che ha inserito la nota - testo della nota - valore ulteriore da associare alla nota (es: label, codice, versione, ...) - filtro logico evento (poi gestita con anagrafica interna) - intero dell'idx della nota creata - - - - associa l'evento e la nota indicati - - idx del record da associare - idx chiave della nota da associare - - - - associa l'ultimo evento del filtro indicato alla nota - - filtro associato all'ultimo evento... - idx chiave della nota da associare - - - - segna come cestinati tutti gli eventi dell'utente indicato non ancora associati o cestinati - - utente generatore dell'evento - - - - segna come cestinati tutti gli eventi dell'utente indicato non ancora associati o cestinati - - utente generatore dell'evento - - - - Elimina gli eventi cestinati generati dall'utente indicato - - utente generatore dell'evento - - - - Elimina gli eventi cestinati anteriori alla data selezionata - - dataOra dell'evento - - - - effettua la registrazione dell'evento in session - - - - - metodo di comportamento del controllo di logging - - - - - nasconde pannello log - - - - - memorizza log inserito - - - - - mostra pannello log - - - - - metodo di comportamento del controllo di logging - - - - - indica il primo step del doppio livello di approvazione (completamento) - - - - - SOLO con incremento indice di revisione dell'oggetto approvato - - - - - SOLO mantenendo indice di revisione corrente - - - - - permette SIA con revisione che senza (e anche rev -1) - - - - - Pagina base applicazioni SteamWare da cui derivare le altre - - - - - Iniziazlizzazione void (non fa nulla) - - - - - Metodo MAIN: viene eseguita al caricamento ed effettua delle routines per il controllo utente e istanzia l'oggetto memLayer - - - - - - - rimanda alla pagina di Work In Progress salvando in session un titolo ed una descrizione che al pagina wip poi mostrerà all'utente - - titolo da mostrare nella pagina WIP - descrizione da mostrare nella pagina WIP - diff --git a/GMW/GMW_WS/mazzAppSettings.config b/GMW/GMW_WS/mazzAppSettings.config index ead4dee2..69f718d5 100644 --- a/GMW/GMW_WS/mazzAppSettings.config +++ b/GMW/GMW_WS/mazzAppSettings.config @@ -32,8 +32,12 @@ + + + + @@ -44,6 +48,10 @@ + + + + diff --git a/GMW/GMW_WS/obj/Debug/GMW_WS.dll b/GMW/GMW_WS/obj/Debug/GMW_WS.dll index 1adf1a24..7ff1edfc 100644 Binary files a/GMW/GMW_WS/obj/Debug/GMW_WS.dll and b/GMW/GMW_WS/obj/Debug/GMW_WS.dll differ diff --git a/GMW/GMW_WS/obj/Debug/ResolveAssemblyReference.cache b/GMW/GMW_WS/obj/Debug/ResolveAssemblyReference.cache index 7cb8c215..c83f5892 100644 Binary files a/GMW/GMW_WS/obj/Debug/ResolveAssemblyReference.cache and b/GMW/GMW_WS/obj/Debug/ResolveAssemblyReference.cache differ diff --git a/GMW/GMW_WS/obj/Release/GMW_WS.dll b/GMW/GMW_WS/obj/Release/GMW_WS.dll index e557a580..adacb1c2 100644 Binary files a/GMW/GMW_WS/obj/Release/GMW_WS.dll and b/GMW/GMW_WS/obj/Release/GMW_WS.dll differ diff --git a/GMW/GMW_WS/obj/Release/ResolveAssemblyReference.cache b/GMW/GMW_WS/obj/Release/ResolveAssemblyReference.cache index ae809696..1cdd7bf4 100644 Binary files a/GMW/GMW_WS/obj/Release/ResolveAssemblyReference.cache and b/GMW/GMW_WS/obj/Release/ResolveAssemblyReference.cache differ diff --git a/GMW/GMW_WS_installer/GMW_WS_installer.vdproj b/GMW/GMW_WS_installer/GMW_WS_installer.vdproj index abfb54bb..a432d174 100644 --- a/GMW/GMW_WS_installer/GMW_WS_installer.vdproj +++ b/GMW/GMW_WS_installer/GMW_WS_installer.vdproj @@ -345,7 +345,7 @@ "Name" = "8:Microsoft Visual Studio" "ProductName" = "8:GMW_WS" "ProductCode" = "8:{311C1377-9118-4394-B6EA-337CC4C9FE21}" - "PackageCode" = "8:{0C66E374-A699-4B54-A243-3F21C3F9FDA2}" + "PackageCode" = "8:{67FA42C3-91ED-4360-96F5-24E546C64608}" "UpgradeCode" = "8:{BA470335-3D4B-4C20-8152-90A5F0F14FE0}" "RestartWWWService" = "11:TRUE" "RemovePreviousVersions" = "11:TRUE" @@ -824,7 +824,7 @@ } "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_C1E28C0CBEB3498E83D9B97B28568D55" { - "SourcePath" = "8:..\\..\\IISCustomActionVB\\IISConsoleVB\\obj\\Release\\IISConsoleVB.exe" + "SourcePath" = "8:..\\..\\IISCustomActionVB\\IISConsoleVB\\obj\\Debug\\IISConsoleVB.exe" "TargetName" = "8:" "Tag" = "8:" "Folder" = "8:_B61BA0CAC3474474B971A8F12A1C93F2" @@ -852,7 +852,7 @@ } "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_D67ABEB91C7F428EB3C512E4A505628A" { - "SourcePath" = "8:..\\..\\SetDirectoryPermission\\obj\\Release\\SetDirectoryPermission.exe" + "SourcePath" = "8:..\\..\\SetDirectoryPermission\\obj\\Debug\\SetDirectoryPermission.exe" "TargetName" = "8:" "Tag" = "8:" "Folder" = "8:_B61BA0CAC3474474B971A8F12A1C93F2" diff --git a/GMW/GMW_WS_installer/Release/GMW_WS_installer.msi b/GMW/GMW_WS_installer/Release/GMW_WS_installer.msi index fb99dfc2..612ae134 100644 Binary files a/GMW/GMW_WS_installer/Release/GMW_WS_installer.msi and b/GMW/GMW_WS_installer/Release/GMW_WS_installer.msi differ diff --git a/GMW/GMW_data/DS_magazzino.Designer.cs b/GMW/GMW_data/DS_magazzino.Designer.cs index b7fdd8a9..75c4c697 100644 --- a/GMW/GMW_data/DS_magazzino.Designer.cs +++ b/GMW/GMW_data/DS_magazzino.Designer.cs @@ -65,6 +65,8 @@ namespace GMW_data { private V_MagazziniLogiciOverviewDataTable tableV_MagazziniLogiciOverview; + private RapQualDataTable tableRapQual; + private global::System.Data.DataRelation relationFK_PosizioneUdcCorrente_ElencoCartellini; private global::System.Data.DataRelation relationFK_PosizioneUdcStorico_ElencoCartellini; @@ -173,6 +175,9 @@ namespace GMW_data { if ((ds.Tables["V_MagazziniLogiciOverview"] != null)) { base.Tables.Add(new V_MagazziniLogiciOverviewDataTable(ds.Tables["V_MagazziniLogiciOverview"])); } + if ((ds.Tables["RapQual"] != null)) { + base.Tables.Add(new RapQualDataTable(ds.Tables["RapQual"])); + } this.DataSetName = ds.DataSetName; this.Prefix = ds.Prefix; this.Namespace = ds.Namespace; @@ -371,6 +376,15 @@ namespace GMW_data { } } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.ComponentModel.Browsable(false)] + [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)] + public RapQualDataTable RapQual { + get { + return this.tableRapQual; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.ComponentModel.BrowsableAttribute(true)] [global::System.ComponentModel.DesignerSerializationVisibilityAttribute(global::System.ComponentModel.DesignerSerializationVisibility.Visible)] @@ -490,6 +504,9 @@ namespace GMW_data { if ((ds.Tables["V_MagazziniLogiciOverview"] != null)) { base.Tables.Add(new V_MagazziniLogiciOverviewDataTable(ds.Tables["V_MagazziniLogiciOverview"])); } + if ((ds.Tables["RapQual"] != null)) { + base.Tables.Add(new RapQualDataTable(ds.Tables["RapQual"])); + } this.DataSetName = ds.DataSetName; this.Prefix = ds.Prefix; this.Namespace = ds.Namespace; @@ -640,6 +657,12 @@ namespace GMW_data { this.tableV_MagazziniLogiciOverview.InitVars(); } } + this.tableRapQual = ((RapQualDataTable)(base.Tables["RapQual"])); + if ((initTable == true)) { + if ((this.tableRapQual != null)) { + this.tableRapQual.InitVars(); + } + } this.relationFK_PosizioneUdcCorrente_ElencoCartellini = this.Relations["FK_PosizioneUdcCorrente_ElencoCartellini"]; this.relationFK_PosizioneUdcStorico_ElencoCartellini = this.Relations["FK_PosizioneUdcStorico_ElencoCartellini"]; this.relationFK_Blocchi_AnagMag = this.Relations["FK_Blocchi_AnagMag"]; @@ -700,6 +723,8 @@ namespace GMW_data { base.Tables.Add(this.tableV_statoCelleCapienzaAssegnati); this.tableV_MagazziniLogiciOverview = new V_MagazziniLogiciOverviewDataTable(); base.Tables.Add(this.tableV_MagazziniLogiciOverview); + this.tableRapQual = new RapQualDataTable(); + base.Tables.Add(this.tableRapQual); this.relationFK_PosizioneUdcCorrente_ElencoCartellini = new global::System.Data.DataRelation("FK_PosizioneUdcCorrente_ElencoCartellini", new global::System.Data.DataColumn[] { this.tableElencoCartellini.UDCColumn}, new global::System.Data.DataColumn[] { this.tablePosizioneUdcCorrente.UDCColumn}, false); @@ -850,6 +875,11 @@ namespace GMW_data { return false; } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + private bool ShouldSerializeRapQual() { + return false; + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] private void SchemaChanged(object sender, global::System.ComponentModel.CollectionChangeEventArgs e) { if ((e.Action == global::System.ComponentModel.CollectionChangeAction.Remove)) { @@ -943,6 +973,8 @@ namespace GMW_data { public delegate void V_MagazziniLogiciOverviewRowChangeEventHandler(object sender, V_MagazziniLogiciOverviewRowChangeEvent e); + public delegate void RapQualRowChangeEventHandler(object sender, RapQualRowChangeEvent e); + /// ///Represents the strongly named DataTable class. /// @@ -7951,6 +7983,415 @@ namespace GMW_data { } } + /// + ///Represents the strongly named DataTable class. + /// + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "2.0.0.0")] + [global::System.Serializable()] + [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")] + public partial class RapQualDataTable : global::System.Data.TypedTableBase { + + private global::System.Data.DataColumn columnnRapQual; + + private global::System.Data.DataColumn columnDataRapQual; + + private global::System.Data.DataColumn columnProgUDC; + + private global::System.Data.DataColumn columnCodFor; + + private global::System.Data.DataColumn columnDestTerz; + + private global::System.Data.DataColumn columnCodLega; + + private global::System.Data.DataColumn columnDataPrelFus; + + private global::System.Data.DataColumn columnTurnoPrelFus; + + private global::System.Data.DataColumn columnQta; + + private global::System.Data.DataColumn columnDestLega; + + private global::System.Data.DataColumn columnLegaScaric; + + private global::System.Data.DataColumn columnBenesQual; + + private global::System.Data.DataColumn columnUDC; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public RapQualDataTable() { + this.TableName = "RapQual"; + this.BeginInit(); + this.InitClass(); + this.EndInit(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + internal RapQualDataTable(global::System.Data.DataTable table) { + this.TableName = table.TableName; + if ((table.CaseSensitive != table.DataSet.CaseSensitive)) { + this.CaseSensitive = table.CaseSensitive; + } + if ((table.Locale.ToString() != table.DataSet.Locale.ToString())) { + this.Locale = table.Locale; + } + if ((table.Namespace != table.DataSet.Namespace)) { + this.Namespace = table.Namespace; + } + this.Prefix = table.Prefix; + this.MinimumCapacity = table.MinimumCapacity; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + protected RapQualDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : + base(info, context) { + this.InitVars(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::System.Data.DataColumn nRapQualColumn { + get { + return this.columnnRapQual; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::System.Data.DataColumn DataRapQualColumn { + get { + return this.columnDataRapQual; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::System.Data.DataColumn ProgUDCColumn { + get { + return this.columnProgUDC; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::System.Data.DataColumn CodForColumn { + get { + return this.columnCodFor; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::System.Data.DataColumn DestTerzColumn { + get { + return this.columnDestTerz; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::System.Data.DataColumn CodLegaColumn { + get { + return this.columnCodLega; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::System.Data.DataColumn DataPrelFusColumn { + get { + return this.columnDataPrelFus; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::System.Data.DataColumn TurnoPrelFusColumn { + get { + return this.columnTurnoPrelFus; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::System.Data.DataColumn QtaColumn { + get { + return this.columnQta; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::System.Data.DataColumn DestLegaColumn { + get { + return this.columnDestLega; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::System.Data.DataColumn LegaScaricColumn { + get { + return this.columnLegaScaric; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::System.Data.DataColumn BenesQualColumn { + get { + return this.columnBenesQual; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::System.Data.DataColumn UDCColumn { + get { + return this.columnUDC; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.ComponentModel.Browsable(false)] + public int Count { + get { + return this.Rows.Count; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public RapQualRow this[int index] { + get { + return ((RapQualRow)(this.Rows[index])); + } + } + + public event RapQualRowChangeEventHandler RapQualRowChanging; + + public event RapQualRowChangeEventHandler RapQualRowChanged; + + public event RapQualRowChangeEventHandler RapQualRowDeleting; + + public event RapQualRowChangeEventHandler RapQualRowDeleted; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public void AddRapQualRow(RapQualRow row) { + this.Rows.Add(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public RapQualRow AddRapQualRow(decimal nRapQual, decimal DataRapQual, string ProgUDC, string CodFor, string DestTerz, string CodLega, decimal DataPrelFus, string TurnoPrelFus, decimal Qta, string DestLega, string LegaScaric, string BenesQual, string UDC) { + RapQualRow rowRapQualRow = ((RapQualRow)(this.NewRow())); + object[] columnValuesArray = new object[] { + nRapQual, + DataRapQual, + ProgUDC, + CodFor, + DestTerz, + CodLega, + DataPrelFus, + TurnoPrelFus, + Qta, + DestLega, + LegaScaric, + BenesQual, + UDC}; + rowRapQualRow.ItemArray = columnValuesArray; + this.Rows.Add(rowRapQualRow); + return rowRapQualRow; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public RapQualRow FindByProgUDC(string ProgUDC) { + return ((RapQualRow)(this.Rows.Find(new object[] { + ProgUDC}))); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public override global::System.Data.DataTable Clone() { + RapQualDataTable cln = ((RapQualDataTable)(base.Clone())); + cln.InitVars(); + return cln; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + protected override global::System.Data.DataTable CreateInstance() { + return new RapQualDataTable(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + internal void InitVars() { + this.columnnRapQual = base.Columns["nRapQual"]; + this.columnDataRapQual = base.Columns["DataRapQual"]; + this.columnProgUDC = base.Columns["ProgUDC"]; + this.columnCodFor = base.Columns["CodFor"]; + this.columnDestTerz = base.Columns["DestTerz"]; + this.columnCodLega = base.Columns["CodLega"]; + this.columnDataPrelFus = base.Columns["DataPrelFus"]; + this.columnTurnoPrelFus = base.Columns["TurnoPrelFus"]; + this.columnQta = base.Columns["Qta"]; + this.columnDestLega = base.Columns["DestLega"]; + this.columnLegaScaric = base.Columns["LegaScaric"]; + this.columnBenesQual = base.Columns["BenesQual"]; + this.columnUDC = base.Columns["UDC"]; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + private void InitClass() { + this.columnnRapQual = new global::System.Data.DataColumn("nRapQual", typeof(decimal), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnnRapQual); + this.columnDataRapQual = new global::System.Data.DataColumn("DataRapQual", typeof(decimal), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnDataRapQual); + this.columnProgUDC = new global::System.Data.DataColumn("ProgUDC", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnProgUDC); + this.columnCodFor = new global::System.Data.DataColumn("CodFor", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnCodFor); + this.columnDestTerz = new global::System.Data.DataColumn("DestTerz", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnDestTerz); + this.columnCodLega = new global::System.Data.DataColumn("CodLega", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnCodLega); + this.columnDataPrelFus = new global::System.Data.DataColumn("DataPrelFus", typeof(decimal), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnDataPrelFus); + this.columnTurnoPrelFus = new global::System.Data.DataColumn("TurnoPrelFus", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnTurnoPrelFus); + this.columnQta = new global::System.Data.DataColumn("Qta", typeof(decimal), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnQta); + this.columnDestLega = new global::System.Data.DataColumn("DestLega", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnDestLega); + this.columnLegaScaric = new global::System.Data.DataColumn("LegaScaric", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnLegaScaric); + this.columnBenesQual = new global::System.Data.DataColumn("BenesQual", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnBenesQual); + this.columnUDC = new global::System.Data.DataColumn("UDC", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnUDC); + this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] { + this.columnProgUDC}, true)); + this.columnnRapQual.AllowDBNull = false; + this.columnDataRapQual.AllowDBNull = false; + this.columnProgUDC.AllowDBNull = false; + this.columnProgUDC.Unique = true; + this.columnProgUDC.MaxLength = 10; + this.columnCodFor.AllowDBNull = false; + this.columnCodFor.MaxLength = 6; + this.columnDestTerz.AllowDBNull = false; + this.columnDestTerz.MaxLength = 6; + this.columnCodLega.AllowDBNull = false; + this.columnCodLega.MaxLength = 15; + this.columnDataPrelFus.AllowDBNull = false; + this.columnTurnoPrelFus.AllowDBNull = false; + this.columnTurnoPrelFus.MaxLength = 5; + this.columnQta.AllowDBNull = false; + this.columnDestLega.AllowDBNull = false; + this.columnDestLega.MaxLength = 3; + this.columnLegaScaric.AllowDBNull = false; + this.columnLegaScaric.MaxLength = 1; + this.columnBenesQual.AllowDBNull = false; + this.columnBenesQual.MaxLength = 1; + this.columnUDC.MaxLength = 13; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public RapQualRow NewRapQualRow() { + return ((RapQualRow)(this.NewRow())); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) { + return new RapQualRow(builder); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + protected override global::System.Type GetRowType() { + return typeof(RapQualRow); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanged(e); + if ((this.RapQualRowChanged != null)) { + this.RapQualRowChanged(this, new RapQualRowChangeEvent(((RapQualRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanging(e); + if ((this.RapQualRowChanging != null)) { + this.RapQualRowChanging(this, new RapQualRowChangeEvent(((RapQualRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleted(e); + if ((this.RapQualRowDeleted != null)) { + this.RapQualRowDeleted(this, new RapQualRowChangeEvent(((RapQualRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleting(e); + if ((this.RapQualRowDeleting != null)) { + this.RapQualRowDeleting(this, new RapQualRowChangeEvent(((RapQualRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public void RemoveRapQualRow(RapQualRow row) { + this.Rows.Remove(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) { + global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); + global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); + DS_magazzino ds = new DS_magazzino(); + global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny(); + any1.Namespace = "http://www.w3.org/2001/XMLSchema"; + any1.MinOccurs = new decimal(0); + any1.MaxOccurs = decimal.MaxValue; + any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any1); + global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny(); + any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1"; + any2.MinOccurs = new decimal(1); + any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any2); + global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute1.Name = "namespace"; + attribute1.FixedValue = ds.Namespace; + type.Attributes.Add(attribute1); + global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute2.Name = "tableTypeName"; + attribute2.FixedValue = "RapQualDataTable"; + type.Attributes.Add(attribute2); + type.Particle = sequence; + global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); + if (xs.Contains(dsSchema.TargetNamespace)) { + global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); + global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); + try { + global::System.Xml.Schema.XmlSchema schema = null; + dsSchema.Write(s1); + for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) { + schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); + s2.SetLength(0); + schema.Write(s2); + if ((s1.Length == s2.Length)) { + s1.Position = 0; + s2.Position = 0; + for (; ((s1.Position != s1.Length) + && (s1.ReadByte() == s2.ReadByte())); ) { + ; + } + if ((s1.Position == s1.Length)) { + return type; + } + } + } + } + finally { + if ((s1 != null)) { + s1.Close(); + } + if ((s2 != null)) { + s2.Close(); + } + } + } + xs.Add(dsSchema); + return type; + } + } + /// ///Represents strongly named DataRow class. /// @@ -11865,6 +12306,166 @@ namespace GMW_data { } } + /// + ///Represents strongly named DataRow class. + /// + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "2.0.0.0")] + public partial class RapQualRow : global::System.Data.DataRow { + + private RapQualDataTable tableRapQual; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + internal RapQualRow(global::System.Data.DataRowBuilder rb) : + base(rb) { + this.tableRapQual = ((RapQualDataTable)(this.Table)); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public decimal nRapQual { + get { + return ((decimal)(this[this.tableRapQual.nRapQualColumn])); + } + set { + this[this.tableRapQual.nRapQualColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public decimal DataRapQual { + get { + return ((decimal)(this[this.tableRapQual.DataRapQualColumn])); + } + set { + this[this.tableRapQual.DataRapQualColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public string ProgUDC { + get { + return ((string)(this[this.tableRapQual.ProgUDCColumn])); + } + set { + this[this.tableRapQual.ProgUDCColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public string CodFor { + get { + return ((string)(this[this.tableRapQual.CodForColumn])); + } + set { + this[this.tableRapQual.CodForColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public string DestTerz { + get { + return ((string)(this[this.tableRapQual.DestTerzColumn])); + } + set { + this[this.tableRapQual.DestTerzColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public string CodLega { + get { + return ((string)(this[this.tableRapQual.CodLegaColumn])); + } + set { + this[this.tableRapQual.CodLegaColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public decimal DataPrelFus { + get { + return ((decimal)(this[this.tableRapQual.DataPrelFusColumn])); + } + set { + this[this.tableRapQual.DataPrelFusColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public string TurnoPrelFus { + get { + return ((string)(this[this.tableRapQual.TurnoPrelFusColumn])); + } + set { + this[this.tableRapQual.TurnoPrelFusColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public decimal Qta { + get { + return ((decimal)(this[this.tableRapQual.QtaColumn])); + } + set { + this[this.tableRapQual.QtaColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public string DestLega { + get { + return ((string)(this[this.tableRapQual.DestLegaColumn])); + } + set { + this[this.tableRapQual.DestLegaColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public string LegaScaric { + get { + return ((string)(this[this.tableRapQual.LegaScaricColumn])); + } + set { + this[this.tableRapQual.LegaScaricColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public string BenesQual { + get { + return ((string)(this[this.tableRapQual.BenesQualColumn])); + } + set { + this[this.tableRapQual.BenesQualColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public string UDC { + get { + try { + return ((string)(this[this.tableRapQual.UDCColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("The value for column \'UDC\' in table \'RapQual\' is DBNull.", e); + } + } + set { + this[this.tableRapQual.UDCColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public bool IsUDCNull() { + return this.IsNull(this.tableRapQual.UDCColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public void SetUDCNull() { + this[this.tableRapQual.UDCColumn] = global::System.Convert.DBNull; + } + } + /// ///Row event argument class /// @@ -12484,6 +13085,37 @@ namespace GMW_data { } } } + + /// + ///Row event argument class + /// + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "2.0.0.0")] + public class RapQualRowChangeEvent : global::System.EventArgs { + + private RapQualRow eventRow; + + private global::System.Data.DataRowAction eventAction; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public RapQualRowChangeEvent(RapQualRow row, global::System.Data.DataRowAction action) { + this.eventRow = row; + this.eventAction = action; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public RapQualRow Row { + get { + return this.eventRow; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::System.Data.DataRowAction Action { + get { + return this.eventAction; + } + } + } } } namespace GMW_data.DS_magazzinoTableAdapters { @@ -22267,6 +22899,674 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx } } + /// + ///Represents the connection and commands used to retrieve and save data. + /// + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "2.0.0.0")] + [global::System.ComponentModel.DesignerCategoryAttribute("code")] + [global::System.ComponentModel.ToolboxItem(true)] + [global::System.ComponentModel.DataObjectAttribute(true)] + [global::System.ComponentModel.DesignerAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterDesigner, Microsoft.VSDesigner" + + ", Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public partial class RapQualTableAdapter : global::System.ComponentModel.Component { + + private global::System.Data.SqlClient.SqlDataAdapter _adapter; + + private global::System.Data.SqlClient.SqlConnection _connection; + + private global::System.Data.SqlClient.SqlTransaction _transaction; + + private global::System.Data.SqlClient.SqlCommand[] _commandCollection; + + private bool _clearBeforeFill; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public RapQualTableAdapter() { + this.ClearBeforeFill = true; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + protected internal global::System.Data.SqlClient.SqlDataAdapter Adapter { + get { + if ((this._adapter == null)) { + this.InitAdapter(); + } + return this._adapter; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + internal global::System.Data.SqlClient.SqlConnection Connection { + get { + if ((this._connection == null)) { + this.InitConnection(); + } + return this._connection; + } + set { + this._connection = value; + if ((this.Adapter.InsertCommand != null)) { + this.Adapter.InsertCommand.Connection = value; + } + if ((this.Adapter.DeleteCommand != null)) { + this.Adapter.DeleteCommand.Connection = value; + } + if ((this.Adapter.UpdateCommand != null)) { + this.Adapter.UpdateCommand.Connection = value; + } + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + if ((this.CommandCollection[i] != null)) { + ((global::System.Data.SqlClient.SqlCommand)(this.CommandCollection[i])).Connection = value; + } + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + internal global::System.Data.SqlClient.SqlTransaction Transaction { + get { + return this._transaction; + } + set { + this._transaction = value; + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + this.CommandCollection[i].Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.DeleteCommand != null))) { + this.Adapter.DeleteCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.InsertCommand != null))) { + this.Adapter.InsertCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.UpdateCommand != null))) { + this.Adapter.UpdateCommand.Transaction = this._transaction; + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + protected global::System.Data.SqlClient.SqlCommand[] CommandCollection { + get { + if ((this._commandCollection == null)) { + this.InitCommandCollection(); + } + return this._commandCollection; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public bool ClearBeforeFill { + get { + return this._clearBeforeFill; + } + set { + this._clearBeforeFill = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + private void InitAdapter() { + this._adapter = new global::System.Data.SqlClient.SqlDataAdapter(); + global::System.Data.Common.DataTableMapping tableMapping = new global::System.Data.Common.DataTableMapping(); + tableMapping.SourceTable = "Table"; + tableMapping.DataSetTable = "RapQual"; + tableMapping.ColumnMappings.Add("nRapQual", "nRapQual"); + tableMapping.ColumnMappings.Add("DataRapQual", "DataRapQual"); + tableMapping.ColumnMappings.Add("ProgUDC", "ProgUDC"); + tableMapping.ColumnMappings.Add("CodFor", "CodFor"); + tableMapping.ColumnMappings.Add("DestTerz", "DestTerz"); + tableMapping.ColumnMappings.Add("CodLega", "CodLega"); + tableMapping.ColumnMappings.Add("DataPrelFus", "DataPrelFus"); + tableMapping.ColumnMappings.Add("TurnoPrelFus", "TurnoPrelFus"); + tableMapping.ColumnMappings.Add("Qta", "Qta"); + tableMapping.ColumnMappings.Add("DestLega", "DestLega"); + tableMapping.ColumnMappings.Add("LegaScaric", "LegaScaric"); + tableMapping.ColumnMappings.Add("BenesQual", "BenesQual"); + tableMapping.ColumnMappings.Add("UDC", "UDC"); + this._adapter.TableMappings.Add(tableMapping); + this._adapter.DeleteCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.DeleteCommand.Connection = this.Connection; + this._adapter.DeleteCommand.CommandText = @"DELETE FROM [RilPro].[RapQual] WHERE (([nRapQual] = @Original_nRapQual) AND ([DataRapQual] = @Original_DataRapQual) AND ([ProgUDC] = @Original_ProgUDC) AND ([CodFor] = @Original_CodFor) AND ([DestTerz] = @Original_DestTerz) AND ([CodLega] = @Original_CodLega) AND ([DataPrelFus] = @Original_DataPrelFus) AND ([TurnoPrelFus] = @Original_TurnoPrelFus) AND ([Qta] = @Original_Qta) AND ([DestLega] = @Original_DestLega) AND ([LegaScaric] = @Original_LegaScaric) AND ([BenesQual] = @Original_BenesQual) AND ((@IsNull_UDC = 1 AND [UDC] IS NULL) OR ([UDC] = @Original_UDC)))"; + this._adapter.DeleteCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_nRapQual", global::System.Data.SqlDbType.Decimal, 0, global::System.Data.ParameterDirection.Input, 6, 0, "nRapQual", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DataRapQual", global::System.Data.SqlDbType.Decimal, 0, global::System.Data.ParameterDirection.Input, 8, 0, "DataRapQual", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_ProgUDC", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "ProgUDC", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodFor", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodFor", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DestTerz", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DestTerz", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodLega", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodLega", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DataPrelFus", global::System.Data.SqlDbType.Decimal, 0, global::System.Data.ParameterDirection.Input, 8, 0, "DataPrelFus", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_TurnoPrelFus", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "TurnoPrelFus", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Qta", global::System.Data.SqlDbType.Decimal, 0, global::System.Data.ParameterDirection.Input, 5, 0, "Qta", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DestLega", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DestLega", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_LegaScaric", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "LegaScaric", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_BenesQual", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "BenesQual", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IsNull_UDC", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "UDC", global::System.Data.DataRowVersion.Original, true, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_UDC", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "UDC", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.InsertCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.InsertCommand.Connection = this.Connection; + this._adapter.InsertCommand.CommandText = @"INSERT INTO [RilPro].[RapQual] ([nRapQual], [DataRapQual], [ProgUDC], [CodFor], [DestTerz], [CodLega], [DataPrelFus], [TurnoPrelFus], [Qta], [DestLega], [LegaScaric], [BenesQual], [UDC]) VALUES (@nRapQual, @DataRapQual, @ProgUDC, @CodFor, @DestTerz, @CodLega, @DataPrelFus, @TurnoPrelFus, @Qta, @DestLega, @LegaScaric, @BenesQual, @UDC); +SELECT nRapQual, DataRapQual, ProgUDC, CodFor, DestTerz, CodLega, DataPrelFus, TurnoPrelFus, Qta, DestLega, LegaScaric, BenesQual, UDC FROM RilPro.RapQual WHERE (ProgUDC = @ProgUDC)"; + this._adapter.InsertCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@nRapQual", global::System.Data.SqlDbType.Decimal, 0, global::System.Data.ParameterDirection.Input, 6, 0, "nRapQual", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DataRapQual", global::System.Data.SqlDbType.Decimal, 0, global::System.Data.ParameterDirection.Input, 8, 0, "DataRapQual", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ProgUDC", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "ProgUDC", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodFor", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodFor", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DestTerz", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DestTerz", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodLega", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodLega", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DataPrelFus", global::System.Data.SqlDbType.Decimal, 0, global::System.Data.ParameterDirection.Input, 8, 0, "DataPrelFus", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@TurnoPrelFus", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "TurnoPrelFus", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Qta", global::System.Data.SqlDbType.Decimal, 0, global::System.Data.ParameterDirection.Input, 5, 0, "Qta", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DestLega", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DestLega", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@LegaScaric", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "LegaScaric", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@BenesQual", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "BenesQual", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@UDC", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "UDC", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.UpdateCommand.Connection = this.Connection; + this._adapter.UpdateCommand.CommandText = @"UPDATE [RilPro].[RapQual] SET [nRapQual] = @nRapQual, [DataRapQual] = @DataRapQual, [ProgUDC] = @ProgUDC, [CodFor] = @CodFor, [DestTerz] = @DestTerz, [CodLega] = @CodLega, [DataPrelFus] = @DataPrelFus, [TurnoPrelFus] = @TurnoPrelFus, [Qta] = @Qta, [DestLega] = @DestLega, [LegaScaric] = @LegaScaric, [BenesQual] = @BenesQual, [UDC] = @UDC WHERE (([nRapQual] = @Original_nRapQual) AND ([DataRapQual] = @Original_DataRapQual) AND ([ProgUDC] = @Original_ProgUDC) AND ([CodFor] = @Original_CodFor) AND ([DestTerz] = @Original_DestTerz) AND ([CodLega] = @Original_CodLega) AND ([DataPrelFus] = @Original_DataPrelFus) AND ([TurnoPrelFus] = @Original_TurnoPrelFus) AND ([Qta] = @Original_Qta) AND ([DestLega] = @Original_DestLega) AND ([LegaScaric] = @Original_LegaScaric) AND ([BenesQual] = @Original_BenesQual) AND ((@IsNull_UDC = 1 AND [UDC] IS NULL) OR ([UDC] = @Original_UDC))); +SELECT nRapQual, DataRapQual, ProgUDC, CodFor, DestTerz, CodLega, DataPrelFus, TurnoPrelFus, Qta, DestLega, LegaScaric, BenesQual, UDC FROM RilPro.RapQual WHERE (ProgUDC = @ProgUDC)"; + this._adapter.UpdateCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@nRapQual", global::System.Data.SqlDbType.Decimal, 0, global::System.Data.ParameterDirection.Input, 6, 0, "nRapQual", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DataRapQual", global::System.Data.SqlDbType.Decimal, 0, global::System.Data.ParameterDirection.Input, 8, 0, "DataRapQual", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ProgUDC", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "ProgUDC", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodFor", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodFor", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DestTerz", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DestTerz", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodLega", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodLega", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DataPrelFus", global::System.Data.SqlDbType.Decimal, 0, global::System.Data.ParameterDirection.Input, 8, 0, "DataPrelFus", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@TurnoPrelFus", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "TurnoPrelFus", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Qta", global::System.Data.SqlDbType.Decimal, 0, global::System.Data.ParameterDirection.Input, 5, 0, "Qta", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DestLega", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DestLega", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@LegaScaric", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "LegaScaric", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@BenesQual", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "BenesQual", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@UDC", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "UDC", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_nRapQual", global::System.Data.SqlDbType.Decimal, 0, global::System.Data.ParameterDirection.Input, 6, 0, "nRapQual", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DataRapQual", global::System.Data.SqlDbType.Decimal, 0, global::System.Data.ParameterDirection.Input, 8, 0, "DataRapQual", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_ProgUDC", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "ProgUDC", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodFor", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodFor", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DestTerz", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DestTerz", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodLega", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodLega", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DataPrelFus", global::System.Data.SqlDbType.Decimal, 0, global::System.Data.ParameterDirection.Input, 8, 0, "DataPrelFus", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_TurnoPrelFus", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "TurnoPrelFus", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Qta", global::System.Data.SqlDbType.Decimal, 0, global::System.Data.ParameterDirection.Input, 5, 0, "Qta", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DestLega", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DestLega", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_LegaScaric", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "LegaScaric", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_BenesQual", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "BenesQual", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IsNull_UDC", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "UDC", global::System.Data.DataRowVersion.Original, true, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_UDC", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "UDC", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + private void InitConnection() { + this._connection = new global::System.Data.SqlClient.SqlConnection(); + this._connection.ConnectionString = global::GMW_data.Properties.Settings.Default.GMWConnectionString; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + private void InitCommandCollection() { + this._commandCollection = new global::System.Data.SqlClient.SqlCommand[3]; + this._commandCollection[0] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[0].Connection = this.Connection; + this._commandCollection[0].CommandText = "SELECT nRapQual, DataRapQual, ProgUDC, CodFor, DestTerz, CodLega, DataPrelFus, Tu" + + "rnoPrelFus, Qta, DestLega, LegaScaric, BenesQual, UDC FROM RilPro.RapQual"; + this._commandCollection[0].CommandType = global::System.Data.CommandType.Text; + this._commandCollection[1] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[1].Connection = this.Connection; + this._commandCollection[1].CommandText = "dbo.stp_rappQualGetByNumRapQual"; + this._commandCollection[1].CommandType = global::System.Data.CommandType.StoredProcedure; + this._commandCollection[1].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@RETURN_VALUE", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.ReturnValue, 10, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[1].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@nRapQual", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 10, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[2] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[2].Connection = this.Connection; + this._commandCollection[2].CommandText = "dbo.stp_rappQualAssociaUdc"; + this._commandCollection[2].CommandType = global::System.Data.CommandType.StoredProcedure; + this._commandCollection[2].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@RETURN_VALUE", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.ReturnValue, 10, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[2].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ProgUDC", global::System.Data.SqlDbType.NVarChar, 10, global::System.Data.ParameterDirection.Input, 0, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[2].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@UDC", global::System.Data.SqlDbType.NVarChar, 13, global::System.Data.ParameterDirection.Input, 0, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, true)] + public virtual int Fill(DS_magazzino.RapQualDataTable dataTable) { + this.Adapter.SelectCommand = this.CommandCollection[0]; + if ((this.ClearBeforeFill == true)) { + dataTable.Clear(); + } + int returnValue = this.Adapter.Fill(dataTable); + return returnValue; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, true)] + public virtual DS_magazzino.RapQualDataTable GetData() { + this.Adapter.SelectCommand = this.CommandCollection[0]; + DS_magazzino.RapQualDataTable dataTable = new DS_magazzino.RapQualDataTable(); + this.Adapter.Fill(dataTable); + return dataTable; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)] + public virtual DS_magazzino.RapQualDataTable getByNumRapQual(global::System.Nullable nRapQual) { + this.Adapter.SelectCommand = this.CommandCollection[1]; + if ((nRapQual.HasValue == true)) { + this.Adapter.SelectCommand.Parameters[1].Value = ((int)(nRapQual.Value)); + } + else { + this.Adapter.SelectCommand.Parameters[1].Value = global::System.DBNull.Value; + } + DS_magazzino.RapQualDataTable dataTable = new DS_magazzino.RapQualDataTable(); + this.Adapter.Fill(dataTable); + return dataTable; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)] + public virtual DS_magazzino.RapQualDataTable stp_associaUDC(string ProgUDC, string UDC) { + this.Adapter.SelectCommand = this.CommandCollection[2]; + if ((ProgUDC == null)) { + this.Adapter.SelectCommand.Parameters[1].Value = global::System.DBNull.Value; + } + else { + this.Adapter.SelectCommand.Parameters[1].Value = ((string)(ProgUDC)); + } + if ((UDC == null)) { + this.Adapter.SelectCommand.Parameters[2].Value = global::System.DBNull.Value; + } + else { + this.Adapter.SelectCommand.Parameters[2].Value = ((string)(UDC)); + } + DS_magazzino.RapQualDataTable dataTable = new DS_magazzino.RapQualDataTable(); + this.Adapter.Fill(dataTable); + return dataTable; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(DS_magazzino.RapQualDataTable dataTable) { + return this.Adapter.Update(dataTable); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(DS_magazzino dataSet) { + return this.Adapter.Update(dataSet, "RapQual"); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow dataRow) { + return this.Adapter.Update(new global::System.Data.DataRow[] { + dataRow}); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow[] dataRows) { + return this.Adapter.Update(dataRows); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Delete, true)] + public virtual int Delete(decimal Original_nRapQual, decimal Original_DataRapQual, string Original_ProgUDC, string Original_CodFor, string Original_DestTerz, string Original_CodLega, decimal Original_DataPrelFus, string Original_TurnoPrelFus, decimal Original_Qta, string Original_DestLega, string Original_LegaScaric, string Original_BenesQual, string Original_UDC) { + this.Adapter.DeleteCommand.Parameters[0].Value = ((decimal)(Original_nRapQual)); + this.Adapter.DeleteCommand.Parameters[1].Value = ((decimal)(Original_DataRapQual)); + if ((Original_ProgUDC == null)) { + throw new global::System.ArgumentNullException("Original_ProgUDC"); + } + else { + this.Adapter.DeleteCommand.Parameters[2].Value = ((string)(Original_ProgUDC)); + } + if ((Original_CodFor == null)) { + throw new global::System.ArgumentNullException("Original_CodFor"); + } + else { + this.Adapter.DeleteCommand.Parameters[3].Value = ((string)(Original_CodFor)); + } + if ((Original_DestTerz == null)) { + throw new global::System.ArgumentNullException("Original_DestTerz"); + } + else { + this.Adapter.DeleteCommand.Parameters[4].Value = ((string)(Original_DestTerz)); + } + if ((Original_CodLega == null)) { + throw new global::System.ArgumentNullException("Original_CodLega"); + } + else { + this.Adapter.DeleteCommand.Parameters[5].Value = ((string)(Original_CodLega)); + } + this.Adapter.DeleteCommand.Parameters[6].Value = ((decimal)(Original_DataPrelFus)); + if ((Original_TurnoPrelFus == null)) { + throw new global::System.ArgumentNullException("Original_TurnoPrelFus"); + } + else { + this.Adapter.DeleteCommand.Parameters[7].Value = ((string)(Original_TurnoPrelFus)); + } + this.Adapter.DeleteCommand.Parameters[8].Value = ((decimal)(Original_Qta)); + if ((Original_DestLega == null)) { + throw new global::System.ArgumentNullException("Original_DestLega"); + } + else { + this.Adapter.DeleteCommand.Parameters[9].Value = ((string)(Original_DestLega)); + } + if ((Original_LegaScaric == null)) { + throw new global::System.ArgumentNullException("Original_LegaScaric"); + } + else { + this.Adapter.DeleteCommand.Parameters[10].Value = ((string)(Original_LegaScaric)); + } + if ((Original_BenesQual == null)) { + throw new global::System.ArgumentNullException("Original_BenesQual"); + } + else { + this.Adapter.DeleteCommand.Parameters[11].Value = ((string)(Original_BenesQual)); + } + if ((Original_UDC == null)) { + this.Adapter.DeleteCommand.Parameters[12].Value = ((object)(1)); + this.Adapter.DeleteCommand.Parameters[13].Value = global::System.DBNull.Value; + } + else { + this.Adapter.DeleteCommand.Parameters[12].Value = ((object)(0)); + this.Adapter.DeleteCommand.Parameters[13].Value = ((string)(Original_UDC)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.DeleteCommand.Connection.State; + if (((this.Adapter.DeleteCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.DeleteCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.DeleteCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.DeleteCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Insert, true)] + public virtual int Insert(decimal nRapQual, decimal DataRapQual, string ProgUDC, string CodFor, string DestTerz, string CodLega, decimal DataPrelFus, string TurnoPrelFus, decimal Qta, string DestLega, string LegaScaric, string BenesQual, string UDC) { + this.Adapter.InsertCommand.Parameters[0].Value = ((decimal)(nRapQual)); + this.Adapter.InsertCommand.Parameters[1].Value = ((decimal)(DataRapQual)); + if ((ProgUDC == null)) { + throw new global::System.ArgumentNullException("ProgUDC"); + } + else { + this.Adapter.InsertCommand.Parameters[2].Value = ((string)(ProgUDC)); + } + if ((CodFor == null)) { + throw new global::System.ArgumentNullException("CodFor"); + } + else { + this.Adapter.InsertCommand.Parameters[3].Value = ((string)(CodFor)); + } + if ((DestTerz == null)) { + throw new global::System.ArgumentNullException("DestTerz"); + } + else { + this.Adapter.InsertCommand.Parameters[4].Value = ((string)(DestTerz)); + } + if ((CodLega == null)) { + throw new global::System.ArgumentNullException("CodLega"); + } + else { + this.Adapter.InsertCommand.Parameters[5].Value = ((string)(CodLega)); + } + this.Adapter.InsertCommand.Parameters[6].Value = ((decimal)(DataPrelFus)); + if ((TurnoPrelFus == null)) { + throw new global::System.ArgumentNullException("TurnoPrelFus"); + } + else { + this.Adapter.InsertCommand.Parameters[7].Value = ((string)(TurnoPrelFus)); + } + this.Adapter.InsertCommand.Parameters[8].Value = ((decimal)(Qta)); + if ((DestLega == null)) { + throw new global::System.ArgumentNullException("DestLega"); + } + else { + this.Adapter.InsertCommand.Parameters[9].Value = ((string)(DestLega)); + } + if ((LegaScaric == null)) { + throw new global::System.ArgumentNullException("LegaScaric"); + } + else { + this.Adapter.InsertCommand.Parameters[10].Value = ((string)(LegaScaric)); + } + if ((BenesQual == null)) { + throw new global::System.ArgumentNullException("BenesQual"); + } + else { + this.Adapter.InsertCommand.Parameters[11].Value = ((string)(BenesQual)); + } + if ((UDC == null)) { + this.Adapter.InsertCommand.Parameters[12].Value = global::System.DBNull.Value; + } + else { + this.Adapter.InsertCommand.Parameters[12].Value = ((string)(UDC)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.InsertCommand.Connection.State; + if (((this.Adapter.InsertCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.InsertCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.InsertCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.InsertCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update( + decimal nRapQual, + decimal DataRapQual, + string ProgUDC, + string CodFor, + string DestTerz, + string CodLega, + decimal DataPrelFus, + string TurnoPrelFus, + decimal Qta, + string DestLega, + string LegaScaric, + string BenesQual, + string UDC, + decimal Original_nRapQual, + decimal Original_DataRapQual, + string Original_ProgUDC, + string Original_CodFor, + string Original_DestTerz, + string Original_CodLega, + decimal Original_DataPrelFus, + string Original_TurnoPrelFus, + decimal Original_Qta, + string Original_DestLega, + string Original_LegaScaric, + string Original_BenesQual, + string Original_UDC) { + this.Adapter.UpdateCommand.Parameters[0].Value = ((decimal)(nRapQual)); + this.Adapter.UpdateCommand.Parameters[1].Value = ((decimal)(DataRapQual)); + if ((ProgUDC == null)) { + throw new global::System.ArgumentNullException("ProgUDC"); + } + else { + this.Adapter.UpdateCommand.Parameters[2].Value = ((string)(ProgUDC)); + } + if ((CodFor == null)) { + throw new global::System.ArgumentNullException("CodFor"); + } + else { + this.Adapter.UpdateCommand.Parameters[3].Value = ((string)(CodFor)); + } + if ((DestTerz == null)) { + throw new global::System.ArgumentNullException("DestTerz"); + } + else { + this.Adapter.UpdateCommand.Parameters[4].Value = ((string)(DestTerz)); + } + if ((CodLega == null)) { + throw new global::System.ArgumentNullException("CodLega"); + } + else { + this.Adapter.UpdateCommand.Parameters[5].Value = ((string)(CodLega)); + } + this.Adapter.UpdateCommand.Parameters[6].Value = ((decimal)(DataPrelFus)); + if ((TurnoPrelFus == null)) { + throw new global::System.ArgumentNullException("TurnoPrelFus"); + } + else { + this.Adapter.UpdateCommand.Parameters[7].Value = ((string)(TurnoPrelFus)); + } + this.Adapter.UpdateCommand.Parameters[8].Value = ((decimal)(Qta)); + if ((DestLega == null)) { + throw new global::System.ArgumentNullException("DestLega"); + } + else { + this.Adapter.UpdateCommand.Parameters[9].Value = ((string)(DestLega)); + } + if ((LegaScaric == null)) { + throw new global::System.ArgumentNullException("LegaScaric"); + } + else { + this.Adapter.UpdateCommand.Parameters[10].Value = ((string)(LegaScaric)); + } + if ((BenesQual == null)) { + throw new global::System.ArgumentNullException("BenesQual"); + } + else { + this.Adapter.UpdateCommand.Parameters[11].Value = ((string)(BenesQual)); + } + if ((UDC == null)) { + this.Adapter.UpdateCommand.Parameters[12].Value = global::System.DBNull.Value; + } + else { + this.Adapter.UpdateCommand.Parameters[12].Value = ((string)(UDC)); + } + this.Adapter.UpdateCommand.Parameters[13].Value = ((decimal)(Original_nRapQual)); + this.Adapter.UpdateCommand.Parameters[14].Value = ((decimal)(Original_DataRapQual)); + if ((Original_ProgUDC == null)) { + throw new global::System.ArgumentNullException("Original_ProgUDC"); + } + else { + this.Adapter.UpdateCommand.Parameters[15].Value = ((string)(Original_ProgUDC)); + } + if ((Original_CodFor == null)) { + throw new global::System.ArgumentNullException("Original_CodFor"); + } + else { + this.Adapter.UpdateCommand.Parameters[16].Value = ((string)(Original_CodFor)); + } + if ((Original_DestTerz == null)) { + throw new global::System.ArgumentNullException("Original_DestTerz"); + } + else { + this.Adapter.UpdateCommand.Parameters[17].Value = ((string)(Original_DestTerz)); + } + if ((Original_CodLega == null)) { + throw new global::System.ArgumentNullException("Original_CodLega"); + } + else { + this.Adapter.UpdateCommand.Parameters[18].Value = ((string)(Original_CodLega)); + } + this.Adapter.UpdateCommand.Parameters[19].Value = ((decimal)(Original_DataPrelFus)); + if ((Original_TurnoPrelFus == null)) { + throw new global::System.ArgumentNullException("Original_TurnoPrelFus"); + } + else { + this.Adapter.UpdateCommand.Parameters[20].Value = ((string)(Original_TurnoPrelFus)); + } + this.Adapter.UpdateCommand.Parameters[21].Value = ((decimal)(Original_Qta)); + if ((Original_DestLega == null)) { + throw new global::System.ArgumentNullException("Original_DestLega"); + } + else { + this.Adapter.UpdateCommand.Parameters[22].Value = ((string)(Original_DestLega)); + } + if ((Original_LegaScaric == null)) { + throw new global::System.ArgumentNullException("Original_LegaScaric"); + } + else { + this.Adapter.UpdateCommand.Parameters[23].Value = ((string)(Original_LegaScaric)); + } + if ((Original_BenesQual == null)) { + throw new global::System.ArgumentNullException("Original_BenesQual"); + } + else { + this.Adapter.UpdateCommand.Parameters[24].Value = ((string)(Original_BenesQual)); + } + if ((Original_UDC == null)) { + this.Adapter.UpdateCommand.Parameters[25].Value = ((object)(1)); + this.Adapter.UpdateCommand.Parameters[26].Value = global::System.DBNull.Value; + } + else { + this.Adapter.UpdateCommand.Parameters[25].Value = ((object)(0)); + this.Adapter.UpdateCommand.Parameters[26].Value = ((string)(Original_UDC)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.UpdateCommand.Connection.State; + if (((this.Adapter.UpdateCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.UpdateCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.UpdateCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.UpdateCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update( + decimal nRapQual, + decimal DataRapQual, + string CodFor, + string DestTerz, + string CodLega, + decimal DataPrelFus, + string TurnoPrelFus, + decimal Qta, + string DestLega, + string LegaScaric, + string BenesQual, + string UDC, + decimal Original_nRapQual, + decimal Original_DataRapQual, + string Original_ProgUDC, + string Original_CodFor, + string Original_DestTerz, + string Original_CodLega, + decimal Original_DataPrelFus, + string Original_TurnoPrelFus, + decimal Original_Qta, + string Original_DestLega, + string Original_LegaScaric, + string Original_BenesQual, + string Original_UDC) { + return this.Update(nRapQual, DataRapQual, Original_ProgUDC, CodFor, DestTerz, CodLega, DataPrelFus, TurnoPrelFus, Qta, DestLega, LegaScaric, BenesQual, UDC, Original_nRapQual, Original_DataRapQual, Original_ProgUDC, Original_CodFor, Original_DestTerz, Original_CodLega, Original_DataPrelFus, Original_TurnoPrelFus, Original_Qta, Original_DestLega, Original_LegaScaric, Original_BenesQual, Original_UDC); + } + } + /// ///TableAdapterManager is used to coordinate TableAdapters in the dataset to enable Hierarchical Update scenarios /// @@ -22302,6 +23602,8 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx private AnagPosizioniTableAdapter _anagPosizioniTableAdapter; + private RapQualTableAdapter _rapQualTableAdapter; + private bool _backupDataSetBeforeUpdate; private global::System.Data.IDbConnection _connection; @@ -22459,6 +23761,19 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx } } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.ComponentModel.EditorAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterManagerPropertyEditor, Microso" + + "ft.VSDesigner, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" + + "", "System.Drawing.Design.UITypeEditor")] + public RapQualTableAdapter RapQualTableAdapter { + get { + return this._rapQualTableAdapter; + } + set { + this._rapQualTableAdapter = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] public bool BackupDataSetBeforeUpdate { get { @@ -22520,6 +23835,10 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx && (this._anagPosizioniTableAdapter.Connection != null))) { return this._anagPosizioniTableAdapter.Connection; } + if (((this._rapQualTableAdapter != null) + && (this._rapQualTableAdapter.Connection != null))) { + return this._rapQualTableAdapter.Connection; + } return null; } set { @@ -22565,6 +23884,9 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx if ((this._anagPosizioniTableAdapter != null)) { count = (count + 1); } + if ((this._rapQualTableAdapter != null)) { + count = (count + 1); + } return count; } } @@ -22638,6 +23960,15 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx allChangedRows.AddRange(updatedRows); } } + if ((this._rapQualTableAdapter != null)) { + global::System.Data.DataRow[] updatedRows = dataSet.RapQual.Select(null, null, global::System.Data.DataViewRowState.ModifiedCurrent); + updatedRows = this.GetRealUpdatedRows(updatedRows, allAddedRows); + if (((updatedRows != null) + && (0 < updatedRows.Length))) { + result = (result + this._rapQualTableAdapter.Update(updatedRows)); + allChangedRows.AddRange(updatedRows); + } + } if ((this._righeListePrelievoTableAdapter != null)) { global::System.Data.DataRow[] updatedRows = dataSet.RigheListePrelievo.Select(null, null, global::System.Data.DataViewRowState.ModifiedCurrent); updatedRows = this.GetRealUpdatedRows(updatedRows, allAddedRows); @@ -22739,6 +24070,14 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx allAddedRows.AddRange(addedRows); } } + if ((this._rapQualTableAdapter != null)) { + global::System.Data.DataRow[] addedRows = dataSet.RapQual.Select(null, null, global::System.Data.DataViewRowState.Added); + if (((addedRows != null) + && (0 < addedRows.Length))) { + result = (result + this._rapQualTableAdapter.Update(addedRows)); + allAddedRows.AddRange(addedRows); + } + } if ((this._righeListePrelievoTableAdapter != null)) { global::System.Data.DataRow[] addedRows = dataSet.RigheListePrelievo.Select(null, null, global::System.Data.DataViewRowState.Added); if (((addedRows != null) @@ -22812,6 +24151,14 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx allChangedRows.AddRange(deletedRows); } } + if ((this._rapQualTableAdapter != null)) { + global::System.Data.DataRow[] deletedRows = dataSet.RapQual.Select(null, null, global::System.Data.DataViewRowState.Deleted); + if (((deletedRows != null) + && (0 < deletedRows.Length))) { + result = (result + this._rapQualTableAdapter.Update(deletedRows)); + allChangedRows.AddRange(deletedRows); + } + } if ((this._celleTableAdapter != null)) { global::System.Data.DataRow[] deletedRows = dataSet.Celle.Select(null, null, global::System.Data.DataViewRowState.Deleted); if (((deletedRows != null) @@ -22960,6 +24307,11 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx throw new global::System.ArgumentException("All TableAdapters managed by a TableAdapterManager must use the same connection s" + "tring."); } + if (((this._rapQualTableAdapter != null) + && (this.MatchTableAdapterConnection(this._rapQualTableAdapter.Connection) == false))) { + throw new global::System.ArgumentException("All TableAdapters managed by a TableAdapterManager must use the same connection s" + + "tring."); + } global::System.Data.IDbConnection workConnection = this.Connection; if ((workConnection == null)) { throw new global::System.ApplicationException("TableAdapterManager contains no connection information. Set each TableAdapterMana" + @@ -23091,6 +24443,15 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx adaptersWithAcceptChangesDuringUpdate.Add(this._anagPosizioniTableAdapter.Adapter); } } + if ((this._rapQualTableAdapter != null)) { + revertConnections.Add(this._rapQualTableAdapter, this._rapQualTableAdapter.Connection); + this._rapQualTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(workConnection)); + this._rapQualTableAdapter.Transaction = ((global::System.Data.SqlClient.SqlTransaction)(workTransaction)); + if (this._rapQualTableAdapter.Adapter.AcceptChangesDuringUpdate) { + this._rapQualTableAdapter.Adapter.AcceptChangesDuringUpdate = false; + adaptersWithAcceptChangesDuringUpdate.Add(this._rapQualTableAdapter.Adapter); + } + } // //---- Perform updates ----------- // @@ -23193,6 +24554,10 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx this._anagPosizioniTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(revertConnections[this._anagPosizioniTableAdapter])); this._anagPosizioniTableAdapter.Transaction = null; } + if ((this._rapQualTableAdapter != null)) { + this._rapQualTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(revertConnections[this._rapQualTableAdapter])); + this._rapQualTableAdapter.Transaction = null; + } if ((0 < adaptersWithAcceptChangesDuringUpdate.Count)) { global::System.Data.Common.DataAdapter[] adapters = new System.Data.Common.DataAdapter[adaptersWithAcceptChangesDuringUpdate.Count]; adaptersWithAcceptChangesDuringUpdate.CopyTo(adapters); diff --git a/GMW/GMW_data/DS_magazzino.xsd b/GMW/GMW_data/DS_magazzino.xsd index 636dc7b0..1500a8b7 100644 --- a/GMW/GMW_data/DS_magazzino.xsd +++ b/GMW/GMW_data/DS_magazzino.xsd @@ -2172,6 +2172,135 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx + + + + + + DELETE FROM [RilPro].[RapQual] WHERE (([nRapQual] = @Original_nRapQual) AND ([DataRapQual] = @Original_DataRapQual) AND ([ProgUDC] = @Original_ProgUDC) AND ([CodFor] = @Original_CodFor) AND ([DestTerz] = @Original_DestTerz) AND ([CodLega] = @Original_CodLega) AND ([DataPrelFus] = @Original_DataPrelFus) AND ([TurnoPrelFus] = @Original_TurnoPrelFus) AND ([Qta] = @Original_Qta) AND ([DestLega] = @Original_DestLega) AND ([LegaScaric] = @Original_LegaScaric) AND ([BenesQual] = @Original_BenesQual) AND ((@IsNull_UDC = 1 AND [UDC] IS NULL) OR ([UDC] = @Original_UDC))) + + + + + + + + + + + + + + + + + + + + + INSERT INTO [RilPro].[RapQual] ([nRapQual], [DataRapQual], [ProgUDC], [CodFor], [DestTerz], [CodLega], [DataPrelFus], [TurnoPrelFus], [Qta], [DestLega], [LegaScaric], [BenesQual], [UDC]) VALUES (@nRapQual, @DataRapQual, @ProgUDC, @CodFor, @DestTerz, @CodLega, @DataPrelFus, @TurnoPrelFus, @Qta, @DestLega, @LegaScaric, @BenesQual, @UDC); +SELECT nRapQual, DataRapQual, ProgUDC, CodFor, DestTerz, CodLega, DataPrelFus, TurnoPrelFus, Qta, DestLega, LegaScaric, BenesQual, UDC FROM RilPro.RapQual WHERE (ProgUDC = @ProgUDC) + + + + + + + + + + + + + + + + + + + + SELECT nRapQual, DataRapQual, ProgUDC, CodFor, DestTerz, CodLega, DataPrelFus, TurnoPrelFus, Qta, DestLega, LegaScaric, BenesQual, UDC FROM RilPro.RapQual + + + + + + UPDATE [RilPro].[RapQual] SET [nRapQual] = @nRapQual, [DataRapQual] = @DataRapQual, [ProgUDC] = @ProgUDC, [CodFor] = @CodFor, [DestTerz] = @DestTerz, [CodLega] = @CodLega, [DataPrelFus] = @DataPrelFus, [TurnoPrelFus] = @TurnoPrelFus, [Qta] = @Qta, [DestLega] = @DestLega, [LegaScaric] = @LegaScaric, [BenesQual] = @BenesQual, [UDC] = @UDC WHERE (([nRapQual] = @Original_nRapQual) AND ([DataRapQual] = @Original_DataRapQual) AND ([ProgUDC] = @Original_ProgUDC) AND ([CodFor] = @Original_CodFor) AND ([DestTerz] = @Original_DestTerz) AND ([CodLega] = @Original_CodLega) AND ([DataPrelFus] = @Original_DataPrelFus) AND ([TurnoPrelFus] = @Original_TurnoPrelFus) AND ([Qta] = @Original_Qta) AND ([DestLega] = @Original_DestLega) AND ([LegaScaric] = @Original_LegaScaric) AND ([BenesQual] = @Original_BenesQual) AND ((@IsNull_UDC = 1 AND [UDC] IS NULL) OR ([UDC] = @Original_UDC))); +SELECT nRapQual, DataRapQual, ProgUDC, CodFor, DestTerz, CodLega, DataPrelFus, TurnoPrelFus, Qta, DestLega, LegaScaric, BenesQual, UDC FROM RilPro.RapQual WHERE (ProgUDC = @ProgUDC) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + dbo.stp_rappQualGetByNumRapQual + + + + + + + + + + + dbo.stp_rappQualAssociaUdc + + + + + + + + + + @@ -2183,273 +2312,127 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx - + - + - + - + - + - + - + - + - + - + - + - + - - - + + + - + - - - - + + + + - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -2464,18 +2447,17 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx - - - - - - - - + + + + + + + - + @@ -2485,14 +2467,273 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2506,102 +2747,320 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx - + + + + + + + + + + - + - - - - - - - - + - - - - - - - - - - - + - - - - - - - - - + + - + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + + + + + - + + + + + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2618,351 +3077,21 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + @@ -2975,8 +3104,8 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx - - + + @@ -2989,56 +3118,129 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx - - + + - - - + + + - + - - + + - - + + - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -3140,6 +3342,10 @@ SELECT IdxPosizione, DescPosizione FROM AnagPosizioni WHERE (IdxPosizione = @Idx + + + + diff --git a/GMW/GMW_data/DS_magazzino.xss b/GMW/GMW_data/DS_magazzino.xss index 57c1900e..3c19e095 100644 --- a/GMW/GMW_data/DS_magazzino.xss +++ b/GMW/GMW_data/DS_magazzino.xss @@ -4,31 +4,32 @@ Changes to this file may cause incorrect behavior and will be lost if the code is regenerated. --> - + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + 318 @@ -40,7 +41,7 @@ - + 318 @@ -52,7 +53,7 @@ - + 1118 @@ -64,7 +65,7 @@ - + 712 @@ -76,7 +77,7 @@ - + 1014 @@ -88,7 +89,7 @@ - + 1107 @@ -100,7 +101,7 @@ - + 197 @@ -112,7 +113,7 @@ - + 430 @@ -124,7 +125,7 @@ - + 735 @@ -136,7 +137,7 @@ - + 392 @@ -152,7 +153,7 @@ - + 1006 diff --git a/GMW/GMW_data/GMW_data.csproj b/GMW/GMW_data/GMW_data.csproj index 8ce65285..b6fcee9e 100644 --- a/GMW/GMW_data/GMW_data.csproj +++ b/GMW/GMW_data/GMW_data.csproj @@ -160,6 +160,7 @@ SettingsSingleFileGenerator Settings.Designer.cs + diff --git a/GMW/GMW_data/MagClass.cs b/GMW/GMW_data/MagClass.cs index 2e51505e..4e12af13 100644 --- a/GMW/GMW_data/MagClass.cs +++ b/GMW/GMW_data/MagClass.cs @@ -31,6 +31,7 @@ namespace GMW_data public DS_magazzinoTableAdapters.V_ParticolariOverviewTableAdapter taVParticolariOverwiew; public DS_magazzinoTableAdapters.v_particolariEsponenteFiguraTableAdapter taPartExpFig; public DS_magazzinoTableAdapters.V_statoCelleCapienzaAssegnatiTableAdapter taStatoCelle; + public DS_magazzinoTableAdapters.RapQualTableAdapter taRapQual; /// @@ -57,6 +58,7 @@ namespace GMW_data taVParticolariOverwiew = new GMW_data.DS_magazzinoTableAdapters.V_ParticolariOverviewTableAdapter(); taPartExpFig = new GMW_data.DS_magazzinoTableAdapters.v_particolariEsponenteFiguraTableAdapter(); taStatoCelle = new GMW_data.DS_magazzinoTableAdapters.V_statoCelleCapienzaAssegnatiTableAdapter(); + taRapQual = new GMW_data.DS_magazzinoTableAdapters.RapQualTableAdapter(); } /// /// effettua setup dei connection strings da web.config delal singola applicazione @@ -82,6 +84,7 @@ namespace GMW_data taVParticolariOverwiew.Connection.ConnectionString = memLayer.ML.confReadString("GMWConnectionString"); taPartExpFig.Connection.ConnectionString = memLayer.ML.confReadString("GMWConnectionString"); taStatoCelle.Connection.ConnectionString = memLayer.ML.confReadString("GMWConnectionString"); + taRapQual.Connection.ConnectionString = memLayer.ML.confReadString("GMWConnectionString"); } #endregion @@ -1036,6 +1039,75 @@ namespace GMW_data #endregion + #region area rapporti qualità + + /// + /// Crea gli UDC da associare ai cartellini dei rapporti qualità deliberati, li associa e se richiesto lancia stampa + /// + /// identificativo rapp qualità + /// true/false se stampare + /// codice operatore + /// + public bool creaUdcDaRappQualita(int numRapQual, bool doPrint, string CodOperatore) + { + bool answ = false; + // ottengo elenco righe dei cartellini del rapp qualità indicato SENZA righe UDC + DS_magazzino.RapQualDataTable tabRapQual = taRapQual.getByNumRapQual(numRapQual); + // per prima cosa verifico che ci sia il rapporto di qualità in esame e che abbia righe da associare ad UDC + if (tabRapQual.Rows.Count > 0) + { + string UDC = ""; + foreach (DS_magazzino.RapQualRow rqRow in tabRapQual) + { + answ = true; + + // per ogni riga creo un UDC + DS_Applicazione.ElencoCartelliniDataTable tabCartellini = DataProxy.obj.taCartellini.stp_insNewFull(memLayer.ML.confReadString("CodCS"), memLayer.ML.confReadString("BilanciaMP"), string.Format("{0:yy}", DateTime.Now), rqRow.CodFor, rqRow.CodLega, "", "", "", "", DateTime.Now, 0, memLayer.ML.confReadString("CodImballoMP"), CodOperatore, 0, memLayer.ML.confReadInt("IdxPosizMP"), "M", "UDC_MP", rqRow.Qta, Convert.ToDouble(rqRow.Qta), 1, memLayer.ML.confReadString("CodStatoMP"), ""); // UDC_MP HARD CODED!!! + //DS_Applicazione.ElencoCartelliniDataTable tabCartellini = DataProxy.obj.taCartellini.stp_insNew(memLayer.ML.confReadString("CodCS"), memLayer.ML.confReadString("BilanciaMP"), string.Format("{0:yy}", DateTime.Now), 0, memLayer.ML.confReadString("CodImballoMP"), "M", CodOperatore, "UDC_MP"); // UDC_MP HARD CODED!!! + + try + { + UDC = tabCartellini[0].UDC; + // lo associo! + taRapQual.stp_associaUDC(rqRow.ProgUDC, UDC); + } + catch (Exception e) + { + logger.lg.scriviLog(string.Format("Non sono riuscito a creare associazioen UDC / rapp qual: UDC creato: {0}, progRappQual: {1}, eccezione: {2}", UDC, rqRow.ProgUDC, e), tipoLog.EXCEPTION); + } + } + + // se devo stampare lancio stampa... + if (doPrint) + { + stampaUdcDaRappQualita(numRapQual); + } + } + return answ; + } + /// + /// effettua la (ri)stampa di TUTTI gli UDC dato un rapporto di qualità + /// + /// identificativo rapp qualità + /// + public bool stampaUdcDaRappQualita(int numRapQual) + { + bool answ = false; + // ottengo elenco righe dei cartellini del rapp qualità indicato SENZA righe UDC + DS_magazzino.RapQualDataTable tabRapQual = taRapQual.getByNumRapQual(numRapQual); + // per prima cosa verifico che ci sia il rapporto di qualità in esame e che abbia righe da associare ad UDC + if (tabRapQual.Rows.Count > 0) + { + answ = true; + foreach (DS_magazzino.RapQualRow rqRow in tabRapQual) + { + answ = reportPrinter.obj.stampaCartellino(tipoCartellino.MP, rqRow.UDC); + } + } + return answ; + } + + #endregion #endregion } diff --git a/GMW/GMW_data/SqlScripts/GMW_00257.sql b/GMW/GMW_data/SqlScripts/GMW_00257.sql index df238a03..d9d2ddf4 100644 --- a/GMW/GMW_data/SqlScripts/GMW_00257.sql +++ b/GMW/GMW_data/SqlScripts/GMW_00257.sql @@ -3,28 +3,689 @@ create schema RawData authorization db_accessadmin go +-- lascio in schema As400 i dati attuali, creo tab nuove RAW +create table RawData.XOGIX00F( + XRPQLN numeric(6,0) not null constraint DF_XOGIX00F_XRPQLN default (0), + XRPQLD numeric(8,0) not null constraint DF_XOGIX00F_XRPQLD default (0), + XNRETI char(10) not null constraint DF_XOGIX00F_XNRETI default (''), + XCDFOR char(6) not null constraint DF_XOGIX00F_XCDFOR default (''), + XCDTER char(6) not null constraint DF_XOGIX00F_XCDTER default (''), + XCDPAR char(15) not null constraint DF_XOGIX00F_XCDPAR default (''), + XDTPRO numeric(8,0) not null constraint DF_XOGIX00F_XDTPRO default (0), + XTRPRO char(5) not null constraint DF_XOGIX00F_XTRPRO default (''), + XQTPRO numeric(5,0) not null constraint DF_XOGIX00F_XQTPRO default (0), + XDESMT char(3) not null constraint DF_XOGIX00F_XDESMT default (''), + XMATSC char(1) not null constraint DF_XOGIX00F_XMATSC default (''), + XBENQL char(1) not null +) +go -ALTER SCHEMA RawData TRANSFER As400.t_XOGIX00F + + + + +-- travaso dati da tab As400 a RawData +INSERT INTO RawData.XOGIX00F +SELECT * +FROM As400.t_XOGIX00F GO -ALTER SCHEMA RawData TRANSFER As400.t_CQNOC98L -GO +-- aggiungo tab rilpro -ALTER SCHEMA RawData TRANSFER As400.t_MWMV200F -GO +set xact_abort on +go -ALTER SCHEMA RawData TRANSFER As400.t_MOMA200F -GO +begin transaction +go -ALTER SCHEMA RawData TRANSFER As400.t_PACKL00F -GO +create table RilPro.RapQual( + nRapQual numeric(6,0) not null, + DataRapQual numeric(8,0) not null, + ProgUDC nvarchar(10) not null constraint PK_RapQual primary key, + CodFor nvarchar(6) not null, + DestTerz nvarchar(6) not null, + CodLega nvarchar(15) not null, + DataPrelFus numeric(8,0) not null, + TurnoPrelFus nvarchar(5) not null, + Qta numeric(5,0) not null, + DestLega nvarchar(3) not null, + LegaScaric nvarchar(1) not null, + BenesQual nvarchar(1) not null, + UDC nvarchar(13) +) +go + +create index i_numRap on RilPro.RapQual(nRapQual) +go + +create index i_dataRap on RilPro.RapQual(DataRapQual) +go + +create index i_numDataRap on RilPro.RapQual(nRapQual,DataRapQual) +go + +commit +go + +-- aggiungo stored di travaso! +set xact_abort on +go + +begin transaction +go + +create schema BatchQueue authorization db_accessadmin +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_batch_RapQual_S01 +* +* Esegue lo step 1 (caricamento dati RAW da AS400) per la tab dei rapporti di qualità +* +* Steamware, S.E.L. +* mod: 2010.09.23 +* +****************************************/ +create PROCEDURE BatchQueue.stp_batch_RapQual_S01 +( + @minNumRapQual INT +) +AS + -- BOZZA DA COMPLETARE A CURA MAZZUCCONI!!! + + DECLARE @SQL AS NVARCHAR(1000) + + -- svuoto tab raw attuale + /* + DELETE FROM RawData.XOGIX00F + */ --- aggiungo tabelle dati tradotti equivalenti (mancanti) + -- INSERISCO DA AS400 + /* + INSERT INTO RawData.XOGIX00F + ( + SET @SQL = + N'SELECT + XRPQLN + ,XRPQLD + ,XNRETI + ,XCDFOR + ,XCDTER + ,XCDPAR + ,XDTPRO + ,XTRPRO + ,XQTPRO + ,XDESMT + ,XMATSC + ,XBENQL + FROM OPENQUERY( P65220DC, ''SELECT * FROM MAZZT_DTV3.XOGIX00F WHERE XRPQLN >= ' + SET @SQL = @SQL + @minNumRapQual + ''' )' + + EXEC sp_executesql @SQL + ) + */ + +RETURN +go + +/*************************************** +* STORED stp_batch_RapQual_S01 +* +* Esegue lo step 2 (travaso dati RAW in RilPro) per la tab dei rapporti di qualità +* +* Steamware, S.E.L. +* mod: 2010.09.23 +* +****************************************/ +create PROCEDURE BatchQueue.stp_batch_RapQual_S02 +AS + -- eseguo UPSERT x tutti i dati disponibili in tab Raw... + + -- se il dato esiste faccio UPDATE!!! + UPDATE RilPro.RapQual + SET CodFor = u.XCDFOR, + DestTerz = u.XCDTER, + CodLega = u.XCDPAR, + DataPrelFus = u.XDTPRO, + TurnoPrelFus= u.XTRPRO, + Qta = u.XQTPRO, + DestLega = u.XDESMT, + LegaScaric = u.XMATSC, + BenesQual = u.XBENQL + FROM RilPro.RapQual rq + INNER JOIN RawData.XOGIX00F u ON u.XNRETI = rq.ProgUDC; -- AND u.XRPQLN = rq.nRapQual AND u.XRPQLD = rq.DataRapQual; -- se XNRETI è univoco ... + + + -- creo tab temporanea x i dati inesistenti.. + WITH cteInsert AS + (SELECT x.* + FROM RawData.XOGIX00F x LEFT OUTER JOIN RilPro.RapQual rq + ON x.XNRETI = rq.ProgUDC -- AND u.XRPQLN = rq.nRapQual AND u.XRPQLD = rq.DataRapQual; -- se XNRETI è univoco ... + WHERE rq.ProgUDC IS NULL ) + + -- se il dato non c'è faccio INSERT!!! + INSERT INTO RilPro.RapQual(nRapQual, DataRapQual, ProgUDC, CodFor, DestTerz, CodLega, DataPrelFus, TurnoPrelFus, Qta, DestLega, LegaScaric, BenesQual) + SELECT XRPQLN AS nRapQual, + XRPQLD AS DataRapQual, + XNRETI AS ProgUDC, + XCDFOR AS CodFor, + XCDTER AS DestTerz, + XCDPAR AS CodLega, + XDTPRO AS DataPrelFus, + XTRPRO AS TurnoPrelFus, + XQTPRO AS Qta, + XDESMT AS DestLega, + XMATSC AS LegaScaric, + XBENQL AS BenesQual + FROM cteInsert + + +RETURN +go + +commit +go + + +- nuove functions +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* function componiUdc +* +* compone il cod UDC a partire da +* - CodCS (codice company sito, 2 char) +* - Flusso (codice flusso-bilancia 2 char) +* - @Anno (anno, 2 char) +* - @numUdc (progr annuale, 2 char) +* +* Steamware, S.E.L. +* mod: 2010.09.23 +* +****************************************/ +create FUNCTION componiUdc +( + @CodCS NVARCHAR(2), + @Flusso NVARCHAR(2), + @Anno NVARCHAR(2), + @numUdc INT +) +RETURNS NVARCHAR(13) +AS + BEGIN + + DECLARE @answ AS NVARCHAR(50) + + SET @answ = 'U' + @CodCS + @Flusso + @Anno + dbo.f_padLeft(CAST(@numUdc AS VARCHAR(6)), 6, '0') + + RETURN @answ + END +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* function getUdcComp +* +* effettua la "compattazione" dell'UDC, andando a prendere un sottoinsieme dei dati iniziali (UAAxxxx dove AA = anno...) +* +* Steamware, S.E.L. +* mod: 2010.09.23 +* +****************************************/ +create FUNCTION getUdcComp +( + @fullUDC NVARCHAR(50), + @maxLen INTEGER +) +RETURNS NVARCHAR(20) +AS + BEGIN + -- calcolo lunghezza originale + DECLARE @fullLen AS INT + SET @fullLen = LEN(@fullUDC) + + -- dichiaro stringa out (max 20 char) + DECLARE @answ NVARCHAR(20) + + -- recupero parte finale (ultimi @maxLen caratteri...) + + + -- compongo codice + SET @answ = 'U' + RIGHT(LEFT(@fullUDC, 7), 2) + RIGHT(@fullUDC,@maxLen-3) -- tolgo 3 char: U + anno... + + RETURN @answ + END +go + +commit +go + + + + + +-- altre stored +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_rappQualAssociaUdc +* +* Associa l'UDC (creato) ad un rapp qualità di AS esistente SOLO SE UDC è NULL +* +* Steamware, S.E.L. +* mod: 2010.09.23 +* +****************************************/ +create PROCEDURE stp_rappQualAssociaUdc +( + @ProgUDC NVARCHAR(10), + @UDC NVARCHAR(13) +) +AS + UPDATE RilPro.RapQual + SET UDC = @UDC + WHERE (ProgUDC = @ProgUDC) AND (UDC IS NULL) + + -- restituisce la riga aggiornata + SELECT * + FROM RilPro.RapQual + WHERE ProgUDC = @ProgUDC + +RETURN +go + +/*************************************** +* STORED stp_rappQualGetByNumRapQual +* +* Ottiene l'elenco dei record di rapp qualità di AS dato il numero del rapporto di qualità che NON HANNO UDC +* +* Steamware, S.E.L. +* mod: 2010.09.23 +* +****************************************/ +create PROCEDURE stp_rappQualGetByNumRapQual +( + @nRapQual INT +) +AS + -- restituisce le righe richieste + SELECT * + FROM RilPro.RapQual + WHERE (nRapQual = @nRapQual) AND (UDC IS NULL) + +RETURN +go + +commit +go + + + + +-- update stored + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_UDC_insNew +* +* crea un nuovo record nella TabStatoOdpUdc e restituisce il codice UDC appena creato +* +* Steamware, S.E.L. +* mod: 2010.04.28 +* +****************************************/ +alter PROCEDURE stp_UDC_insNew +( + @CodCS VARCHAR(2), + @Flusso VARCHAR(2), + @Anno VARCHAR(2), + @Tara FLOAT, + @CodImballo AS VARCHAR(50), + @CodTipoDichiaraz CHAR(1), + @CodOperatore AS VARCHAR(50), + @CodEvento VARCHAR(10) +) +AS + +-- DECLARE iniziali +DECLARE @UDC AS VARCHAR(20) +DECLARE @numFlu AS INT +DECLARE @numUdc AS INT +DECLARE @nextUdc AS INT + +------------------------------------------------------------------------------------------------------ +-- Flusso +------------------------------------------------------------------------------------------------------ +-- controllo se esiste il flusso (bilancia)... +SET @numFlu = ( + SELECT count(*) + FROM AnagBilance + WHERE CodBilancia = @Flusso +) +-- ...sennò lo creo... +IF(@numFlu = 0) + BEGIN + -- se c'è inserisco in tab + INSERT INTO AnagBilance(CodBilancia, DescrImpianto, CodCS) + VALUES (@Flusso, @Flusso, @CodCS) + END +------------------------------------------------------------------------------------------------------ + + +------------------------------------------------------------------------------------------------------ +-- UDC +------------------------------------------------------------------------------------------------------ +-- controllo se ci sia già un UDC per company / flusso anno +BEGIN TRAN + -- cerco nella tab contatori UDC l'ultimo valido + SET @numUdc = ( + SELECT count(*) + FROM ContatoriUdc + WHERE CodCS = @CodCS + AND Flusso = @Flusso + AND Anno = @Anno + ) + -- controllo se record c'è... + IF(@numUdc > 0) + BEGIN + -- se c'è incremento di 1 in tab + UPDATE ContatoriUdc + SET LastIdx = LastIdx + 1 + WHERE CodCS = @CodCS + AND Flusso = @Flusso + AND Anno = @Anno + END + ELSE + BEGIN + -- lo creo! + INSERT INTO ContatoriUdc(CodCS, Flusso, Anno, LastIdx) + VALUES (@CodCS, @Flusso, @Anno, 1) + END + -- aggiorno numero UDC + SET @numUdc = ( + SELECT LastIdx + FROM ContatoriUdc + WHERE CodCS = @CodCS + AND Flusso = @Flusso + AND Anno = @Anno + ) +COMMIT TRAN +------------------------------------------------------------------------------------------------------ + +------------------------------------------------------------------------------------------------------ +-- Ciclo principale x inserimento nuovo record +------------------------------------------------------------------------------------------------------ +-- ottengo il nuovo codice UDC completo +--SET @UDC = 'U' + @CodCS + @Flusso + @Anno + dbo.f_padLeft(CAST(@numUdc AS VARCHAR(6)), 6, '0') +SET @UDC = dbo.componiUdc(@CodCS, @Flusso, @Anno, @numUdc) + +-- inserisco un nuovo record +INSERT INTO ElencoCartellini(CodCS, UDC, Tara, IdxPosizione, Qta, CodImballo, CreateDate, ModDate) +VALUES (@CodCS, @UDC, @Tara, 0, 0, @CodImballo, GETDATE(), GETDATE()) +------------------------------------------------------------------------------------------------------ + +------------------------------------------------------------------------------------------------------ +-- restituisco la tab dati con l'udc appena inserito +------------------------------------------------------------------------------------------------------ +SELECT * +FROM ElencoCartellini +WHERE UDC = @UDC +------------------------------------------------------------------------------------------------------ + +RETURN +go + +/*************************************** +* STORED stp_UDC_insNewFull +* +* crea un nuovo record nella TabStatoOdpUdc FULL (con pesi, qta...) e restituisce il codice UDC appena creato +* +* Steamware, S.E.L. +* mod: 2010.04.28 +* +****************************************/ +alter PROCEDURE stp_UDC_insNewFull +( + @CodCS VARCHAR(2), + @Flusso VARCHAR(2), + @Anno VARCHAR(2), + @CodCliente VARCHAR(6), + @Particolare VARCHAR(15), + @CodImpianto AS VARCHAR(50), + @CodStampo VARCHAR(8), + @Esponente VARCHAR(6), + @Figura VARCHAR(4), + @DataFus DATETIME, + @TurnoFus INT, + @CodImballo VARCHAR(15), + @CodSoggetto VARCHAR(17), + @Tara FLOAT, + @IdxPosizione INT, + @CodTipoDichiaraz CHAR(1), + @CodEvento VARCHAR(10), + @Qta DECIMAL(10,2), + @PesoTot FLOAT, + @PesoCad FLOAT, + @CodStato VARCHAR(50), + @UDC_parent VARCHAR(20) +) +AS + +-- DECLARE iniziali +DECLARE @UDC AS VARCHAR(20) +DECLARE @RagSociale AS VARCHAR(35) +DECLARE @DescParticolare AS VARCHAR(30) +DECLARE @DescImpianto AS VARCHAR(50) +DECLARE @DisegnoGrezzo AS VARCHAR(30) +DECLARE @NumCont AS INT +DECLARE @numFlu AS INT +DECLARE @numUdc AS INT +DECLARE @nextUdc AS INT + +------------------------------------------------------------------------------------------------------ +-- Caricamento Dati da anagrafica +------------------------------------------------------------------------------------------------------ +-- cerco la ragione sociale... +SET @RagSociale = ( + SELECT ISNULL(RagSociale, 'ND') AS RagSociale + FROM RilPro.AnagClienti + WHERE (CodCliente = @CodCliente) +) + +-- Cerco descrizione del particolare... +SET @DescParticolare = ( + SELECT ISNULL(DescParticolare, 'ND') AS DescParticolare + FROM RilPro.AnagParticolari + WHERE (Particolare = @Particolare) +) + +-- cerco codice disegno grezzo +SET @DisegnoGrezzo = ( + SELECT ISNULL(DisegnoGrezzo, 'ND') AS DescParticolare + FROM RilPro.AnagParticolari + WHERE (Particolare = @Particolare) +) + +-- cerco descrizione Impianto +SET @DescImpianto = ( + SELECT ISNULL(DescImpianto, 'ND') AS DescImpianto + FROM AnagImpianti + WHERE (CodImpianto = @CodImpianto) +) + + + +-- Calcolo contatore intero successivo x il contenitore... +SET @NumCont = ( + SELECT ISNULL(MAX(NumCont), 0) + 1 AS NumCont + FROM ElencoCartellini + WHERE (Particolare = @Particolare) + AND (DataFus = @DataFus) + AND (TurnoFus = @TurnoFus) + AND (CodImpianto = @CodImpianto) + AND (CodStampo = @CodStampo) + AND (Figura = @Figura) +) + + +------------------------------------------------------------------------------------------------------ + +------------------------------------------------------------------------------------------------------ +-- Flusso +------------------------------------------------------------------------------------------------------ +-- controllo se esiste il flusso (bilancia)... +SET @numFlu = ( + SELECT count(*) + FROM AnagBilance + WHERE CodBilancia = @Flusso +) +-- ...sennò lo creo... +IF(@numFlu = 0) + BEGIN + -- se c'è inserisco in tab + INSERT INTO AnagBilance(CodBilancia, DescrImpianto, CodCS) + VALUES (@Flusso, @Flusso, @CodCS) + END +------------------------------------------------------------------------------------------------------ + + +------------------------------------------------------------------------------------------------------ +-- UDC +------------------------------------------------------------------------------------------------------ +-- controllo se ci sia già un UDC per company / flusso anno +BEGIN TRAN + -- cerco nella tab contatori UDC l'ultimo valido + SET @numUdc = ( + SELECT count(*) + FROM ContatoriUdc + WHERE CodCS = @CodCS + AND Flusso = @Flusso + AND Anno = @Anno + ) + -- controllo se record c'è... + IF(@numUdc > 0) + BEGIN + -- se c'è incremento di 1 in tab + UPDATE ContatoriUdc + SET LastIdx = LastIdx + 1 + WHERE CodCS = @CodCS + AND Flusso = @Flusso + AND Anno = @Anno + END + ELSE + BEGIN + -- lo creo! + INSERT INTO ContatoriUdc(CodCS, Flusso, Anno, LastIdx) + VALUES (@CodCS, @Flusso, @Anno, 1) + END + -- aggiorno numero UDC + SET @numUdc = ( + SELECT LastIdx + FROM ContatoriUdc + WHERE CodCS = @CodCS + AND Flusso = @Flusso + AND Anno = @Anno + ) +COMMIT TRAN +------------------------------------------------------------------------------------------------------ + +------------------------------------------------------------------------------------------------------ +-- Ciclo principale x inserimento nuovo record +------------------------------------------------------------------------------------------------------ +BEGIN TRAN + -- ottengo il nuovo codice UDC completo + --SET @UDC = 'U' + @CodCS + @Flusso + @Anno + dbo.f_padLeft(CAST(@numUdc AS VARCHAR(6)), 6, '0') + SET @UDC = dbo.componiUdc(@CodCS, @Flusso, @Anno, @numUdc) + + + -- inserisco un nuovo record + INSERT INTO ElencoCartellini(UDC, CodCS, CodCliente, RagSociale, Particolare, DescParticolare, DisegnoGrezzo, Esponente, CodImpianto, DescImpianto, CodStampo, Figura, DataFus, TurnoFus, CodImballo, CodSoggetto, NumCont, Tara, Qta, CodStato, IdxPosizione, PesoTot, PesoCad, CreateDate, ModDate) + VALUES (@UDC, @CodCS, @CodCliente, @RagSociale, @Particolare, @DescParticolare, @DisegnoGrezzo, @Esponente, @CodImpianto, @DescImpianto, @CodStampo, @Figura, @DataFus, @TurnoFus, @CodImballo, @CodSoggetto, @NumCont, @Tara, @Qta, @CodStato, @IdxPosizione, @PesoTot, @PesoCad, GETDATE(), GETDATE()) + + -- inserisco relazione aprent-child tra UDC vecchio (tara) e nuovo (pesa) + INSERT INTO RelazUDC(UDC_parent, UDC_child) + VALUES (@UDC_parent, @UDC) +COMMIT TRAN +------------------------------------------------------------------------------------------------------ + +/* +------------------------------------------------------------------------------------------------------ +-- Salvataggio dati evento in tab StoricoEventi +------------------------------------------------------------------------------------------------------ +INSERT INTO StoricoEventi(DataEv, CodEvento, CodOperatore, CodTipoDichiaraz, CodCS, UDC, Qta, PesoTot, PesoCad, Particolare, CodStato, CodStampo, Figura, FiguraIncisa) +VALUES (GETDATE(), @CodEvento, @CodOperatore, @CodTipoDichiaraz, @CodCS, @UDC, @Qta, @PesoTot, @PesoCad, @Particolare, @CodStato, @CodStampo, @Figura, @FiguraIncisa) +------------------------------------------------------------------------------------------------------ +*/ + +------------------------------------------------------------------------------------------------------ +-- restituisco la tab dati con l'udc appena inserito +------------------------------------------------------------------------------------------------------ +SELECT * +FROM ElencoCartellini +WHERE UDC = @UDC +------------------------------------------------------------------------------------------------------ + +RETURN +go + +commit +go + + +-- aggiungo stato MP +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AnagStatiProdotto + VALUES (N'MP', N'Materia Prima') +go + +commit transaction +go --- aggiunta indici e chiavi... -- registro versione... diff --git a/GMW/GMW_data/bin/Debug/GMW_data.dll b/GMW/GMW_data/bin/Debug/GMW_data.dll index 6041d5a1..830998a0 100644 Binary files a/GMW/GMW_data/bin/Debug/GMW_data.dll and b/GMW/GMW_data/bin/Debug/GMW_data.dll differ diff --git a/GMW/GMW_data/bin/Debug/SteamWare.xml b/GMW/GMW_data/bin/Debug/SteamWare.xml index 4d866de1..6809ec2a 100644 --- a/GMW/GMW_data/bin/Debug/SteamWare.xml +++ b/GMW/GMW_data/bin/Debug/SteamWare.xml @@ -4,3191 +4,5 @@ SteamWare - - - classe gesione log files applicazioni - - - - - directory base x logs - - - - - nome del file corrente - - - - - max mb di log da accumulare - - - - - singleton del logger - - - - - avvio del logger nella dir desiderata - - - - - avvio del logger nella dir desiderata - - - - - avvio del logger nella dir desiderata con il max di dati indicato - - - - - scrive sul file log di default il valore della variabile string passata su una riga... (tab delim?!?) - - testo iniziale del log - - - - - scrive un messaggio di log con etichetta pre - - testo messaggio - tipo di log da registrare (etichetta [...]) - - - - - fornisce il nome del file in cui loggare (ed eventualmente crea...) - - - - - provvede a verificare la dim della cartella dei log e cancella i + vecchi fino a restare a dim inferiori a _logMaxMb - - - - - fornisce il file + vecchio - - - - - - - tipo di log ammesso - - - - - informazioni di debug - - - - - errori - - - - - eccezioni nell'esecuzione try/catch - - - - - errori fatali - - - - - informazioni opzionali - - - - - log dei lemmi invocati per traduzione da vocabolario - - - - - fase di avvio componente - - - - - avvisi - - - - - classe di wrap verso i TableAdapter impiegati - - - - - metodo protected di avvio della classe - - - - - procedura di avvio dei tableAdapter - - - - - procedura di avvio dei tableAdapter - - - - - effettua setup dei connection strings da web.config delal singola applicazione - - - - - effettua setup dei connection strings da web.config delal singola applicazione - - - - - setup delle tabelle vocabolario - - - - - prende l'oggetto tabVocabolario in ram e lo trasforma in dictionary - - - - - - tableAdapter diritti - - - - - tableAdapter permessi - - - - - tableAdapter funzione - - - - - tableAdapter permessi2funzione - - - - - tableAdapter CdC - - - - - tableAdapter utenti - - - - - table adapter lingue - - - - - table adapter vocabolario - - - - - table adapter versione vocabolario - - - - - table adapter versione anagrafica - - - - - oggetto vocabolario organizzato come dizionario con chiave lang#lemma e valore la traduzione - - - - - resetta il vocabolario rileggendo i dati... - - - - - crea nel db corrente il lemma richiesto e lo valorizza come "--{0}--" - - - - - - - classe singleton x la gestione dei tableadapters - - - - - elenco lingue ammesse da vocabolario... - - - - - classe di gestione lettura - - - - - esegue parsing fornendo dati ed headers - - - - - - - - esegue parsing fornendo dati - - - - - - - esegue parsing fornendo dati come stream - - - - - - - esegue parsing fornendo dati come stream ed headers - - - - - - - - struttura di comando da input utente (es: via barcode) - - - - - definisce se il comando sia valido o no - - - - - testo da mostrare dato il comando - - - - - comando registrato - - - - - comando precedentemente inserito - - - - - descrizione del comando - - - - - descrizione del comando precedente - - - - - valore del comando - - - - - valore tradotto del comando - - - - - costruttore del metodo... - - - - - Base class for every user control in the application, containing some common - behaviour and utility methods. - It is not meant to be be used directly. - - - - - tipo id controllo con classi di base comune da cui derivare gli *.asmx - - - - - nome della pagina correntemente caricata - - - - - memorizza la pagina precedente (ovvero la corrente ma non da page-object ma in session... - - - - - stringa con CDC in (...) dei cdc abilitati (da permesso gerarchicamente a discendere...) - - - - - stringa con elenco CDC abilitati (da permesso gerarchicamente a discendere...) - - - - - tabella diritti - - - - - tabella di tutti i cdc - - - - - tipo di anagrafica usata - - - - - importo il tipo di vista del modulo - - - - - elenco testuale csv dei cdc accessibili all'utente (x filtri tipo IN(...)) - - - - - numero di righe standard x i datagrid - - - - - numero di righe standard x i datagrid di anagrafica - - - - - numero di righe standard x i datagrid lunghi - - - - - numero di righe standard x i datagrid medi - - - - - numero di righe standard x i datagrid su mezza pagina - - - - - numero di righe standard x i selettori popup - - - - - indirizzo email dell'admin applicativo cui vanno le email in caso di anomalie... - - - - - indirizzo email dell'applicativo da cui partono le email in caso di anomalie... - - - - - indirizzo server SMTP - - - - - elenco delle pagine "safe" ovvero da non autorizzare - da web.config - - - - - elenco delle pagine "common" ovvero da autorizzare ma senza bisogno diritti in anagrafica - da web.config - - - - - valore che determina se è possibile forzare impersonificazioen utente... - - - - - livello di log (1-->5) - - - - - dir di logging - - - - - MAIN: esecuzione al caricamento del modulo delle routines di controllo utente e creazione pagina - - - - - - - predisposizione dati x pagina da cache/database a seconda della disponibilità in cache o refresh (B.1.4) - - - - - popola gli oggetti e le labels... (B.1.6) - - - - - disegna la pagina: prima i controlli poi il datagrid - - - - - aggiunge i link x i selettori - - - - - sistema i vari controlli della pagina - - - - - aggiorna eventuali datalist e datagrid - - - - - sistema tutte le labels traducendo i lemmi nella lingua utente ed in inglese - - - - - calcola come percentuale la radio dividendo/divisore - - - - - - - - limita una stringa al numero max di caratteri imposto - - - - - - - - Reads data from a stream until the end is reached. The - data is returned as a byte array. An IOException is - thrown if any of the underlying IO calls fail. - - The stream to read data from - The initial buffer length - - - - converte una data in formato aaaammgg in stringa gg/mm/aaaa - - - - - - - converte una data in formato aaaammgg in stringa aaaa-mm-gg - - - - - - - converte una stringa in formato gg/mm/aaaa in stringa(intero data) in formato aaaammgg - - - - - - - converte una datetime in un intero tipo yyyymmddhhmmss - - - - - - - formatta la data in formato dateTime in una data formato italiano come stringa gg/mm/aaaa - - - - - - - invia un alert jscript con messaggio indicato... - - messaggio dell'alert da mandare - - - - scrive immediatamente sulla pagina web il messaggio di avanzamento... - - - - - - restituisce una scringa formattata in testa e coda x essere un corretto comando javascript - - - - - - - invio email senza log - - - - - - - - - - invio email con log - - - - - - - - - - caricamento dati applicazione da sessione (B.1.3) - - - - - setup datamanagers... - - - - - reset update del modulo corrente - - - - - (ri)carica i dataset del modulo - - - - - verifica se tutti i dataset richiesti sono disponibili i cache - - - - - - salva nella cache i dataset caricati - - - - - carica dalla cache i dataset necessari - - - - - legge i valori standard x dataset e parametri - - - - - leggi i parametri di configurazione standard dell'applicativo - - - - - genera la stringa dei cdc autorizzati dell'utente - - - - - legge il dataset dei CdC - - - - - caricamento dati user da sessione (B.1.1) - - - - - verifica che l'utente abbia almeno un permesso per la pagina corrente altrimenti redirect ad unauthorized - - - - - salva in variabile pagina il nome della pagina corrente - - - - - selezione delle posizioni cdc autorizzate come stringa di filtraggio su POSIZIONE LIKE, se non ce ne fossero redirige su unauthorized.aspx - - - - - - risponde alla domanda se l'utente abbia permesso tipo writable (S) nel permessi2funzione - - - - - - verifica la condizione booleana e formatta di conseguenza la stringa di filtraggio da accodare al filtro x CdC autorizzati - - condizione - tipo di eguaglianza - nome parametro - valore parametro - - - - - crea la stringa di filtraggio x data secondo modalità tipo inizio/fine/durante... - - - - - - crea la stringa di filtraggio x data secondo modalità tipo minoreUguale / uguale / maggioreUguale... - - - - - - verifica la condizione booleana e formatta di conseguenza la stringa di filtraggio tipo LIKE x i campi inseriti separati da # SE valParam !="" - - - - - - - - esegue la ricerca dei cdc nelle posizioni indicate dal filtro e restituisce elenco distinct degli stessi - - filtro con cui cercare i cdc (del tipo " (POSIZIONE LIKE 'T.1.2.3%') OR ... " - stringa di filtraggio ricostruita per l'elenco dei cdc fino a quel momento trovati - ultimo cdc trovato - cdc corrente - - - - - restituisce il cdc dell'utente data la sua matricola - - - - - - - restituisce l'utente AS dall'utente win - - - - - - - restituisce la descr del CdC - - - - - - - invia la stringa jscript di conferma pre-cancellazione - - - - - - restituisce la stringa del path corretto per l'immagine richiesta nel formato "~/images/{0}{1}" - - verrà usato x posizione {0}, tipo "view" - verrà usato x posizione {1}, tipo "_s.png" - - - - - restituisce la stringa del path corretto per l'immagine richiesta nel formato "~/images/{0}{1}" - - verrà usato x posizione {0}, tipo "view" - verrà usato x posizione {1}, tipo "_s.png" - tipo del file richiesto..." - - - - - effettua traduzione del lemma - - - - - - - effettua traduzione in inglese del lemma - - - - - - - definisce visibilità - - - - - - - effettua la registrazione degli eventi - - - - - effettua l'inserimento vero e proprio dell'evento letto dai valori in session x l'utente corrente... - - evento da loggare - valori originali - nuovi valori - filtro associato - - - - salva in sessione i valori indicati - - dictionary dei valori vecchi - dictionary dei valori nuovi - bool su abilitazione al log dell'oggetto - descrizione evento da loggare - filtro associato all'evento - restituisce il numero di elementi contenuti, -1 significa nessuna differenza... - - - - salva in sessione i valori per un oggetto che sta x essere eliminato - - dictionary dei valori vecchi - bool su abilitazione al log dell'oggetto - descrizione evento da loggare - filtro associato all'evento - restituisce il numero di elementi contenuti, -1 significa nessuna differenza... - - - - imposto il tipo di anagrafica del controlloS - - - - - variabile salvata in view state x la stringa di sorting - dg 2 - - - - - variabile salvata in view state x la stringa di sorting - dg 2 - - - - - legge e scrive in viewState la stringa di filtraggio... - - - - - variabile salvata in viewstate x la direzione del sorting - - - - - genera la stringa filtro x i cdc autorizzati x l'user - - - - - - tipo di vista del modulo - - - - - Summary description for selettori - - - - - - - - - - - - - - - carica i dati CdC se in cache o da TableAdapter - - - - - restituisce l'elenco di tutti i cdc - - - - - - restituisce l'elenco di tutti i cdc della gerarchia dell'utente - - - - - - Represents a strongly typed in-memory cache of data. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - classe di gestione dei db x creazione/update alla versione richiesta - - - - - oggetto connessione - - - - - stringa di connessione - - - - - dir che contiene gli script da eseguire... - - - - - formato del file SQL impiegato (nel senso di formato come iFormat del tipo "App_{0:0000}.sql" --> da App_0001.sql ad App_9999.sql) - - - - - avvio protected della classe - - - - - esegue gli script di sql di update dal file richiesto - - - - - - - - Aggiorna il db eseguendo gli script dalla versione di partenza a quella di arrivo - - NB: per definizione rev 0 = resetta svuotando DB, rev 1 crea tabelle iniziali, rev 2 inserisce i valori di default - - nome DB di cui cercare script - revisione di partenza - revisione di arrivo - timeout max per ogni operazione - - - - - verifica se il db indicato esiste o meno... - - - - - - - - crea il db indicato con i parametri di connessione specificati - - - - - - - - Represents a strongly typed in-memory cache of data. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - classe con funzioni specifiche di calcolo - - - - - inizializzazione classe - - - - - elenco dei caratteri base 36: 0..9A..Z - - - - - - converte da base di dimensione nBase a valore intero - - valore in formato nBase - base, max 36 (0..9A..Z) - - - - - metodo di accesso singleton - - - - - tipo di chart (2D/3D) - - - - - 2D - - - - - 3D - - - - - web control che disegna un grafico a torta - - - - - altezza di default - - - - - larghezza di default - - - - - padding di default - - - - - legenda visibile di default - - - - - soglia minima 5% per mostrare il dato - - - - - renderizza il contenuto - - - - - - disegna la leggenda html laterale... - - - - - - disegna piechart 2-dim - - - - - - disegna piechart 3d ellittica - - - - - - traduce la stringa colore in oggetto colore - - - - - - - converte intero a stringa esadecimale - - - - - - - converte stringa esadecimale a intero - - - - - - - tipo di grafico (2D/3D) - - - - - ampiezza del grafico - - - - - altezza del grafico - - - - - padding grafico/container - - - - - boolean se si debba mostrale la legenda - - - - - percentuale minima da mostrare - - - - - serie di dati (tipizzata) ma mostrare - - - - - testo associato al controllo - - - - - layer gestione vari tipi di memoria: cache, session... - - - - - lettore file configurazione - - - - - oggetto singleton x accesso al layer di memoria - - - - - classe gestione accessi a Session, cache, viewstate, configuration... - - - - - legge dalla config un valore bool - - - - - - - legge dalla config un valore string - - - - - - - legge dalla config un valore int - - - - - - - carica dalla sessione un dato di tipo object generico - - - - - - - carica dalla sessione un dato di tipo boolean (se vuoto false) - - - - - - - carica dalla sessione un dato di tipo string - - - - - - - carica dalla sessione un dato di tipo long - - - - - - - carica dalla sessione un dato di tipo int - - - - - - - inserisce in session un valore - - - - - - - salvo un valore come cookie - - - - - - - - restituisco un valore da cookie - - - - - - - inserisce in session un valore - - nome della variabile - valore associato - indica se debba sopravvivere ad update (inserita in elenco valSess2SurvUpd) - - - - - svuota una variabile dalla session - - - - - - restituisce true se è presente in session l'oggetto richiesto - - - - - - - carica dalla Cache un dato di tipo object generico - - - - - - - carica dalla Cachee un dato di tipo boolean (se vuoto false) - - - - - - - carica dalla Cachee un dato di tipo string - - - - - - - inserisce in Cache un valore - - nome della variabile - valore - - - - inserisce in Cache un valore e su richiesta regitra tra le tab in cache da svuotare on update.. - - nome della variabile - valore - da registrare come tabella da svuotare on update? - - - - - svuota una variabile dalla Cache - - - - - - restituisce true se è presente in cache l'oggetto richiesto - - - - - - - aggiunge la stringa corrente nel dictionary delle tabelle messe in cache e da aggiornare su comando update - - - - - - aggiunge la stringa corrente nel dictionary delle tabelle messe in session che vanno preservate da comando update (es: oggetto selezionato...) - - - - - - - forza lo svuotamento delel tabelle indicate come in cache... - - - - - elenco dictionary delle tab in cache da aggiornare con update svuotando da cache... - - - - - elenco dictionary dei valori in session da NON aggiornare con update... - - - - - classe gestione parametri deviceper stampa - - - - - creazione oggetto parametri per stampa - - - - - - - - - - - - formato output - - - - - altezza - - - - - larghezza - - - - - margine Sx - - - - - margine Dx - - - - - margine Top - - - - - margine Bottom - - - - - enumeratore modalità login - - - - - login AD normale - - - - - forza utente fornendo password - - - - - forza ad un utente standard scelto dall'elenco - - - - - enumeratore modalità scrittura tag siteMap - - - - - nodo di tipo iniziale - apertura - - - - - nodo di tipo foglia - - - - - nodo di tipo finale - chiusura - - - - - enumeratore tipi di anagrafica - - - - - tipo di anagrafica Brembo - - - - - tipo di anagrafica generica - - - - - tipo di vista del modulo - - - - - modalità selezione - - - - - modalità editing - - - - - tipologia di file immagine - - - - - formato gif (no alpha channel) - - - - - formato jpeg - - - - - formato png - - - - - tipo di immagini usate per le icone di comando in web applications - - - - - icona annulla (croce rossa) - - - - - icona approva (simbolo coccarda) - - - - - icona barcode in campo bianco - - - - - icona barcode in campo arancio - - - - - icona clona (magic wand) - - - - - icona converma (spunta verde) - - - - - icona elimina (cestino) - - - - - icona modifica (matita) - - - - - icona notepad (blocco note) - - - - - icona notepad + pdf (blocco note) - - - - - icona nuovo (segno +) - - - - - icona seleziona (lente) - - - - - icona semaforo giallo - - - - - icona semaforo rosso - - - - - icona semaforo verde - - - - - icona stampa (printer) - - - - - dimensione immagini usate per le icone di comando in web applications - - - - - formato piccolo - - - - - formato medio - - - - - formato grande - - - - - modalità di esecuzione applicativi - - - - - modalità normale - - - - - modalità debug - - - - - salvataggio di tutti i lemmi tradotti - - - - - definisce un intervalo di 2 date - - - - - data inizio - - - - - data fine - - - - - struttura orario ordinarie/strordinarie - - - - - ore ordinarie - - - - - ore straordinarie - - - - - classe di funzioni inerenti le date - - - - - inizializzazione empty - - - - - effettua l'operazione di intersezione tra 2 intervali di date restituendo ulteriore intervallo: NB se sono intervali disgiunti restituisce 9/9/9999 x inizio e fine - - - - - - - - oggetto mese precedente alla dataLilmite - - - - - - oggetto mese corrente fino alla dataLilmite - - - - - - confronta le date e restituisce true se le date sono nello stesso mese - - - - - - - - restituisce l'intervallo del giorno completo che comprende la data indicata - - - - - - - restituisce l'intervallo di N giorni fino alla data indicata - - - - - - - - restituisce l'intervallo della settimana corrente per la data indicata - - - - - - - restituisce l'intervallo del mese corrente per la data indicata - - - - - - - restituisce l'intervallo del mese che comprendela data indicata - - - - - - - restituisce l'intervallo dell'anno corrente per la data indicata - - - - - - - classe di gestione delle email - - - - - stringa nel nome DNS o dell'ip del server SMTP - - - - - metodo static per la gestione delle email - - - - - - metodo static per la gestione delle email - - - - - - - procedura invio email - - email mittente - email destinatario - oggetto dell'email - corpo del messaggio - - - - procedura invio email + scrittura in log! - - email mittente - email destinatario - oggetto dell'email - corpo del messaggio - - - - metodo singleton gestione email... - - - - - Tipo di comparazione, Binary == CaseSensitive, Text = insensitive - - - - - tipo controllo : binario - - - - - tipo controllo : text - - - - - Funzione di splitting compatibile con multi-character e multi-line - - - - - stringa da splittare - - - - - Delimiter con cui splittare - - - - - Costruttore dello Splitter - - - - - comparatore case sensitive - - - - - - - - comparatore case insensitive - - - - - - - - parte principale dello splitter - - stringa da splittare - delimitatore ricercato - true=il delimiter è un blocco unico, false=qualsiasi oggetto del delimiter fa split (come split base) - - 0 -> Binary=CaseSensitive, 1 -> Text=case insensitive - - - - - elimina dal nome file il tipo (desinenza) - - - - - - - Classe di metodi che estendono quelli base applicati alle string - - - - - Trasforma in MAIUSCOLo il primo carattere della stringa - - stringa da processare - stringa processata - - - - restituisce la stringa completa e corretta del filepath del server (anche con vDir) - - path relativo alla cartella iis dell'applicativo - path fisico tradotto - - - - effettua escape di stringhe di ricerca di tipo filtro per apici e altri caratteri non ammessi - - - - - - - fornisce dati di base per l'utente - - - - - fornisce cognome e nome utente formattati a partire dall'username e dalla tabella UTENTE - - - - - - - restituisce la riga completa dall'username richiesto - - - - - - - Represents a strongly typed in-memory cache of data. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents the strongly named DataTable class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Represents strongly named DataRow class. - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Row event argument class - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - Represents the connection and commands used to retrieve and save data. - - - - - classe gestione utente: auth e permission/ruoli - versione GENERICA - - - - - cancella da session l'utente - - - - - carica la riga dati utente - - - - - Carica la tabella diritti dell'utente da db e salva in session - - - - - Carica la tabella diritti dell'utente da db e salva in session SOLO per il CDC indicato - - - - - - Effettua setup dei permessi una volta salvati i diritti - - - - - imposta la lingua utente dal valore della riga DB - - - - - costruisce la mappa del sito per l'utente - - - - - formatta un nodo in modo corretto dai dati indicati - - - - - - - - - inizializza la gestione utente... - - - - - traduce il lemma nella lingua dell'user corrente - - - - - - - traduce il lemma in inglese - - - - - - - traduce il lemma nella lingua dell'user e in inglese tra parentesi - - - - - - - LogOff utente con reset dati - - - - - - - - Procedura da chiamare DOPO aver messo in session i dati utente/dominio x caricare gli altri dati - - - - - - - - Procedura da chiamare DOPO aver messo in session i dati utente/dominio x caricare gli altri dati CON I DIRITTI SOLO per il CDC indicato - - - - - - - - - salva dati accessori quali il cdc dell'utente... - - - - - verifica nella tab diritti se l'utente abbia il right richiesto e fornisce bool in risposta - - - - - - - verifica le credenziali AD dell'utente... - - - - - - - - conta il numero di permessi utente per la pagina attuale e restituisce true se ne trova almeno 1 - - - - - - - verifica se il permesso utente per la pagina attuale sia write per almeno 1 diritto assegnato (restituisce true se ne trova almeno 1 con permessi2funzione.readwrite='S') - - - - - - - ricarica e ri-traduce la mappa sito per l'utente... - - - - - retituisce il nome apgina dai permessi utente - - - - - - restituisce cognome e nome di un utente dato username... - - username - - - - - restituisce cognome e nome di un utente data la matricola... - - matricola - - - - - restituisce cognome e nome di un utente dato username e dominio... - - username - dominio - - - - - restituisce cognome e nome di un utente dato username... - - username - - - - - restituisce cognome e nome di un utente dato username e dominio... - - username - dominio - - - - - restituisce cognome e nome di un utente dato username eventualmente comprensivo di dominio... - - {dominio\}userName - - - - - restituisce l'elenco delle funzioni abilitate dato modulo ed username partendo dalla radice dell'albero dei diritti - - - - - - - - restituisce l'elenco degli utenti dato i diritti che devono avere come modulo/funzione - - nome del modulo - nome della funzione - tabella utenti - - - - restituisce l'elenco delle email degli utenti dato i diritti che devono avere come modulo/funzione - - nome del modulo - nome della funzione - stringa di email separate da "," - - - - crea un nuovo utente con le credenziali indicate - - - - - - - - - - - - assegna il diritto all'utente indicato - - - - - - - - - - - toglier il diritto all'utente indicato - - - - - - - - - - - restituisce la tabella (per utente corrente) dei CDC abilitati per l'applicazione attuale da sessione (se non c'è salva...) - - modulo di cui si testano i diritti - - - - - versione statica della classe utente come singleton UtenTeSignletoN - - - - - restituisce la tabella diritti da session - - - - - tabella dei permessi utente - - - - - tabella dei permessi utente di tipo "WRITE" enabled - - - - - retituisce username AD - - - - - oggetto utente con metodi get/set - - - - - oggetto dominio con metodi get/set - - - - - oggetto modulo (applicazione) con metodi get/set - - - - - oggetto lingua utente con metodi get/set - - - - - oggetto runMode corrente - - - - - restituisce true se utente forzato da forceUser.aspx - - - - - restituisce i valori della riga utente da db - - - - - restituisce una stringa formattata con cognome, nome e matricola - - - - - restituisce una stringa della sigla dell'utente - - - - - restituisce una stringa formattata con cognome e nome - - - - - restituisce una stringa formattata con cognome - - - - - restituisce una stringa formattata con nome - - - - - fornisce un file XML della mappa del sito abilitato per l'utente... - - - - - è un boolean che indica se in session ci siano user/dominio e quindi utente autenticato in rpecedenza... - - - - - Accesso in lettura e scrittura al filesystem per gestione files upload e download - - - - - path di lavoro dei metodi leggi/scrivi - - - - - verifica esistenza directory ed eventualmente crea restituendo nome completo di "/" finale - - - - - - - restituisce una tab di files dato l'elenco dei files - - - - - - - setta le directory - - - - - - oggetto WebClient - - - - - inizializza il metodo alla cartella indicata - - - non serve +... x retrocompatibilità... - - - - metodo di avvio empty - - - - - cerca di caricare il fileinfo o da httpcontext-application re-position o direttamente come workpath + nomefile - - - - - - - cerca di caricare il fileinfo o da httpcontext-application re-position o direttamente come workpath + nomefile - - - - - - - - cerca di caricare la directoryInfo o da httpcontext-application re-position o direttamente come workpath - - - - - - - Legge i dati da uno stream fino a quando arriva alla fine. - I dati sono restituiti come un byte[] array. un eccezione IOException è - sollevata se una delle chiamate IO sottostanti fallisce. - - Lo stream da cui leggere - Lunghezza buffer iniziale (-1 = default 32k) - - - - verifica esistenza directory, eventualmente crea e restituisce controllo DirectoryInfo - - - - - - ottiene il dataset dei files presenti nella directory indicata esplicitamente - - dir da indicizzare... già mappata! ( es SteamwareStrings.getFilePath(...) ) - - - - - ottiene il dataset dei files presenti nella directory indicata all'istanziazione dell'oggetto - - - - - - ottiene il dataset dei files DEL TIPO "like {param}" presenti nella directory indicata all'istanziazione dell'oggetto - - - - - - elenco dei files come array di oggetti FileInfo - - - - - - elenco dei files come array di oggetti FileInfo filtrati per parametro - - - - - - - elimina la directory di lavoro se è dir virtuale mappata - - - - - - elimina tutti i files con la regexp indicata da una directory, true se cancellato almeno uno - - regexp selezione files in dir (* = tutti!!!) - - - - - verifica se il file indicato esista in workDir - - - - - - - elimina il file indicato dalla directory di lavoro - - - - - - - restituisce lo stream del file richiesto - - - - - - - restituisce la stringa letta dal file richiesto - - - - - - - scrive il file dallo stream byte[] inviato - - - - - - - - scrive il file dalla stringa inviata - - - - - - - - converte una string in un byte[] - - - - - - - converte un byte[] in una string - - - - - - - sposta il file da From a To... - - - - - - - - - copia il file da From a To... - - - - - - - - - copia il file da From a To... - - - - - - - - - - imposta la dir di lavoro - - - - - - imposta la dir di lavoro - - - non serve +... x retrocompatibilità... - - - - imposta la dir di lavoro impostandola dal mapPath corretto della web app... - - - - - - esegue un comando in shell - - - - - - - - - esegue un comando in shell - - - - - - - - - Scarica un file dall'url fornito nella directory indicata x il filemover col nome richiesto - - url del file - nome con cui salvare il file - - - - - comprime zip il file indicato - - - - - - - comprime zip i files corrispondenti alla RegExp indicata nella dir corrente - - Espressione ricerca, come *.txt - Nome del file zip da creare - - - - - calcola la dim della directory corrente... - - - - - - - elimina il file + vecchio - - - - - - - versione statica (singleton) del'oggetto fileMover - - - - - classe per effettuare confronto tra valori disomogeneri per tipo e costruire diff testuali - - - - - valore originale - - - - - nuovo valore - - - - - dictionary dei parametri vecchi - - - - - dictionary dei parametri nuovi - - - - - inizializzazione classe - - - - - valorizza i diff dei valori old e new - - - - - calcola solo il vettore dei valori old (x delete) - - - - - oggetto statico per il confronto valori - - - - - stringa diff dei valori originali modificati - - - - - stringa diff dei valori nuovi modificati - - - - - dictionary dei parametri old - - - - - dictionary dei parametri new - - - - - classe gestione logging esteso di eventi e note utente (correlabili) - - - - - TableAdapter di accesso alla tabella anagrafica filtraggi - - - - - TableAdapter di accesso alla tabella anagrafica record - - - - - TableAdapter di accesso alla tabella logging record di eventi - - - - - TableAdapter di accesso alla tabella logging utente - - - - - TableAdapter di accesso alla vista logging eventi - - - - - TableAdapter di accesso alla vista logging utente - - - - - effettua setup dei connection strings da web.config delal singola applicazione - - - - - avvio i tari tableAdapters - - - - - avvio della classe istanziando db e - - - - - oggetto statico di accesso ai metodi della classe... - - - - - tabella eventi - - - - - - tabella note - - - - - - tabella eventi secondo filtro - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - - - - - tabella note secondo filtro - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - - - - - tabella eventi secondo filtro e condizione ulteriore WHERE esplicitata - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - ulteriore condizione WHERE per filtrare i dati (testo {0} della condizione "WHERE {0}" - - - - - tabella note secondo filtro e condizione ulteriore WHERE esplicitata - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - ulteriore condizione WHERE per filtrare i dati (testo {0} della condizione "WHERE {0}" - - - - - tabella note secondo filtro - - filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento - - - - - inserisce l'evento indicato dai parametri - - user che ha generato l'evento - pagina/form applicaizone in cui l'evento si è generato - valore originale(se c'è) - valore nuovo/modificato - descrizione evento (poi gestita con anagrafica interna) - filtro logico evento (poi gestita con anagrafica interna) - - - - inserisce la nota utente indicata dai parametri, restituisce idx della nota creata... - - user che ha inserito la nota - testo della nota - valore ulteriore da associare alla nota (es: label, codice, versione, ...) - filtro logico evento (poi gestita con anagrafica interna) - intero dell'idx della nota creata - - - - associa l'evento e la nota indicati - - idx del record da associare - idx chiave della nota da associare - - - - associa l'ultimo evento del filtro indicato alla nota - - filtro associato all'ultimo evento... - idx chiave della nota da associare - - - - segna come cestinati tutti gli eventi dell'utente indicato non ancora associati o cestinati - - utente generatore dell'evento - - - - segna come cestinati tutti gli eventi dell'utente indicato non ancora associati o cestinati - - utente generatore dell'evento - - - - Elimina gli eventi cestinati generati dall'utente indicato - - utente generatore dell'evento - - - - Elimina gli eventi cestinati anteriori alla data selezionata - - dataOra dell'evento - - - - effettua la registrazione dell'evento in session - - - - - metodo di comportamento del controllo di logging - - - - - nasconde pannello log - - - - - memorizza log inserito - - - - - mostra pannello log - - - - - metodo di comportamento del controllo di logging - - - - - indica il primo step del doppio livello di approvazione (completamento) - - - - - SOLO con incremento indice di revisione dell'oggetto approvato - - - - - SOLO mantenendo indice di revisione corrente - - - - - permette SIA con revisione che senza (e anche rev -1) - - - - - Pagina base applicazioni SteamWare da cui derivare le altre - - - - - Iniziazlizzazione void (non fa nulla) - - - - - Metodo MAIN: viene eseguita al caricamento ed effettua delle routines per il controllo utente e istanzia l'oggetto memLayer - - - - - - - rimanda alla pagina di Work In Progress salvando in session un titolo ed una descrizione che al pagina wip poi mostrerà all'utente - - titolo da mostrare nella pagina WIP - descrizione da mostrare nella pagina WIP - diff --git a/GMW/GMW_data/bin/Release/GMW_data.dll b/GMW/GMW_data/bin/Release/GMW_data.dll index 7c8823dc..c2387366 100644 Binary files a/GMW/GMW_data/bin/Release/GMW_data.dll and b/GMW/GMW_data/bin/Release/GMW_data.dll differ diff --git a/GMW/GMW_data/obj/Debug/GMW_data.dll b/GMW/GMW_data/obj/Debug/GMW_data.dll index 6041d5a1..830998a0 100644 Binary files a/GMW/GMW_data/obj/Debug/GMW_data.dll and b/GMW/GMW_data/obj/Debug/GMW_data.dll differ diff --git a/GMW/GMW_data/obj/Debug/Refactor/GMW_data.dll b/GMW/GMW_data/obj/Debug/Refactor/GMW_data.dll index 5ae16175..227ed0ba 100644 Binary files a/GMW/GMW_data/obj/Debug/Refactor/GMW_data.dll and b/GMW/GMW_data/obj/Debug/Refactor/GMW_data.dll differ diff --git a/GMW/GMW_data/obj/Debug/TempPE/DS_Applicazione.Designer.cs.dll b/GMW/GMW_data/obj/Debug/TempPE/DS_Applicazione.Designer.cs.dll index 1ecb3f4e..d207c93b 100644 Binary files a/GMW/GMW_data/obj/Debug/TempPE/DS_Applicazione.Designer.cs.dll and b/GMW/GMW_data/obj/Debug/TempPE/DS_Applicazione.Designer.cs.dll differ diff --git a/GMW/GMW_data/obj/Debug/TempPE/DS_magazzino.Designer.cs.dll b/GMW/GMW_data/obj/Debug/TempPE/DS_magazzino.Designer.cs.dll index 73a01a11..36f5a6e7 100644 Binary files a/GMW/GMW_data/obj/Debug/TempPE/DS_magazzino.Designer.cs.dll and b/GMW/GMW_data/obj/Debug/TempPE/DS_magazzino.Designer.cs.dll differ diff --git a/GMW/GMW_data/obj/Release/GMW_data.dll b/GMW/GMW_data/obj/Release/GMW_data.dll index 7c8823dc..c2387366 100644 Binary files a/GMW/GMW_data/obj/Release/GMW_data.dll and b/GMW/GMW_data/obj/Release/GMW_data.dll differ diff --git a/GMW/GMW_data/reportPrinter.cs b/GMW/GMW_data/reportPrinter.cs index 17646f91..4edad36c 100644 --- a/GMW/GMW_data/reportPrinter.cs +++ b/GMW/GMW_data/reportPrinter.cs @@ -20,6 +20,7 @@ public class reportPrinter #region area codice da non modificare private int m_currentPageIndex; + protected int logLevel = 0; private IList m_streams; /// /// ciclo da fornire al renderizzatore dei report, per salvare 1 immagine da ogni pagina del report @@ -234,12 +235,73 @@ public class reportPrinter Dispose(); } + /// + /// effettua la stampa del cartellino indicato + /// + /// + /// + /// + /// + public bool stampaCartellino(tipoCartellino cartellino, string UDC) + { + bool answ = false; + string printerName = ""; + string outForm = ""; + string pagWidth = ""; + string pagHeigth = ""; + string margin = ""; + reportRichiesto report = reportRichiesto.CartellinoPesa; + switch (cartellino) + { + case tipoCartellino.MP: + printerName = memLayer.ML.confReadString("printerCartMP"); + outForm = "EMF"; + pagWidth = memLayer.ML.confReadString("PageWidthCartMP"); + pagHeigth = memLayer.ML.confReadString("PageHeightCartMP"); + margin = memLayer.ML.confReadString("MarginMP"); + report = reportRichiesto.CartellinoMP; + break; + case tipoCartellino.soloTara: + printerName = memLayer.ML.confReadString("printerCartTara"); + outForm = "EMF"; + pagWidth = memLayer.ML.confReadString("PageWidthCartTara"); + pagHeigth = memLayer.ML.confReadString("PageHeightCartTara"); + margin = memLayer.ML.confReadString("MarginTara"); + report = reportRichiesto.CartellinoTara; + break; + case tipoCartellino.completo: + printerName = memLayer.ML.confReadString("printerCartCompleto"); + outForm = "EMF"; + pagWidth = memLayer.ML.confReadString("PageWidthCartCompleto"); + pagHeigth = memLayer.ML.confReadString("PageHeightCartCompleto"); + margin = memLayer.ML.confReadString("MarginCompleto"); + report = reportRichiesto.CartellinoPesa; + break; + default: + break; + } + devInfoParam deviceInfo = new devInfoParam(outForm, pagHeigth, pagWidth, margin, margin, margin, margin); + try + { + if (logLevel > 5) logger.lg.scriviLog(String.Format("Sto per inviare un report alla stampante {0}", printerName), tipoLog.INFO); + reportPrinter.obj.printReport(report, printerName, UDC, deviceInfo); + if (logLevel > 5) logger.lg.scriviLog(String.Format("inviato comando print alla stampante {0}", printerName), tipoLog.INFO); + answ = true; + } + catch (Exception e) + { + logger.lg.scriviLog(String.Format("Errore in fase di creazione e stampa report: stampante {0}, errore riscontrato {1}", printerName, e), tipoLog.EXCEPTION); + } + return answ; + } + /// /// oggetto protected /// /// protected reportPrinter() { + logLevel = memLayer.ML.confReadInt("_logLevel"); } /// /// singleton pubblico @@ -253,6 +315,7 @@ public class reportPrinter /// public enum reportRichiesto { + CartellinoMP, CartellinoPesa, //CartellinoProduzione, CartellinoTara diff --git a/GMW/GMW_data/utils.cs b/GMW/GMW_data/utils.cs index 53c9efab..9ed5db79 100644 --- a/GMW/GMW_data/utils.cs +++ b/GMW/GMW_data/utils.cs @@ -83,6 +83,7 @@ namespace GMW_data } public enum tipoCartellino { + MP, soloTara, completo }