diff --git a/GMW/GMW/Style.css b/GMW/GMW/Style.css index dd21b616..b507bbb8 100644 --- a/GMW/GMW/Style.css +++ b/GMW/GMW/Style.css @@ -1396,6 +1396,12 @@ A:hover font-size: 10pt; color: Red; } +.erroreMidYellow +{ + font-weight: normal; + font-size: 10pt; + color: Yellow; +} .erroreBig { font-weight: normal; diff --git a/GMW/GMW/Web.config b/GMW/GMW/Web.config index 5254f1f8..f22d3884 100644 --- a/GMW/GMW/Web.config +++ b/GMW/GMW/Web.config @@ -63,7 +63,7 @@ - + diff --git a/GMW/GMW/WebUserControls/mod_bolle4odette.ascx b/GMW/GMW/WebUserControls/mod_bolle4odette.ascx index 997702c5..d247c265 100644 --- a/GMW/GMW/WebUserControls/mod_bolle4odette.ascx +++ b/GMW/GMW/WebUserControls/mod_bolle4odette.ascx @@ -36,6 +36,6 @@
- +
diff --git a/GMW/GMW/WebUserControls/mod_bolle4odette.ascx.cs b/GMW/GMW/WebUserControls/mod_bolle4odette.ascx.cs index af55e952..ffb09901 100644 --- a/GMW/GMW/WebUserControls/mod_bolle4odette.ascx.cs +++ b/GMW/GMW/WebUserControls/mod_bolle4odette.ascx.cs @@ -37,6 +37,7 @@ namespace GMW.WebUserControls string RaggMag = txtRaggMag.Text.Trim(); string GrpBolla = txtGrBolle.Text.Trim(); string particolare = ""; + bool tuttoOk = false; try { particolare = MagClass.magazzino.taElencoListePrelievo.getByCodLista(CodLista)[0].Particolare; @@ -48,13 +49,21 @@ namespace GMW.WebUserControls if (Odette.mgr.checkCodBolla(RaggMag, GrpBolla, NumBolla, DatBolla, particolare)) { // chiamo creazione etichette! - Odette.mgr.creaOdetteByBollaPackList(CodLista, RaggMag, GrpBolla, NumBolla, DatBolla, particolare, ddlLingua.SelectedValue); - lblWarning.Visible = false; - lblWarning.Text = ""; - // sollevo evento new! - if (eh_nuovoValore != null) + tuttoOk = Odette.mgr.creaOdetteByBollaPackList(CodLista, RaggMag, GrpBolla, NumBolla, DatBolla, particolare, ddlLingua.SelectedValue); + if (!tuttoOk) { - eh_nuovoValore(this, new EventArgs()); + lblWarning.Visible = true; + lblWarning.Text = memLayer.ML.StringSessionObj("errCreazOdette"); + } + else + { + lblWarning.Visible = false; + lblWarning.Text = ""; + // sollevo evento new! + if (eh_nuovoValore != null) + { + eh_nuovoValore(this, new EventArgs()); + } } } else diff --git a/GMW/GMW/WebUserControls/mod_bolle4odette.ascx.designer.cs b/GMW/GMW/WebUserControls/mod_bolle4odette.ascx.designer.cs index ec0c7e18..6400a348 100644 --- a/GMW/GMW/WebUserControls/mod_bolle4odette.ascx.designer.cs +++ b/GMW/GMW/WebUserControls/mod_bolle4odette.ascx.designer.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:2.0.50727.4952 +// Runtime Version:2.0.50727.4959 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/GMW/GMW/WebUserControls/mod_odette.ascx.cs b/GMW/GMW/WebUserControls/mod_odette.ascx.cs index 4226d63b..baca34c8 100644 --- a/GMW/GMW/WebUserControls/mod_odette.ascx.cs +++ b/GMW/GMW/WebUserControls/mod_odette.ascx.cs @@ -374,25 +374,7 @@ namespace GMW.WebUserControls { } return answ; } - /// - /// determina se ci siano odette x la lista di prelievo - /// - /// - /// - public bool hasOdette(string codLista) - { - bool answ = false; - try - { - DS_magazzino.ElencoListePrelievoRow riga = MagClass.magazzino.taElencoListePrelievo.getByCodLista(codLista)[0]; - DS_Odette.stp_OdetteStatoCreateRow rigaCreate = Odette.mgr.taOdCreate.GetData(codLista)[0]; - answ = rigaCreate.OdetteCreate > 0; - } - catch - { } - return answ; - } - + /// /// gestione cambio selezione valore /// @@ -405,11 +387,7 @@ namespace GMW.WebUserControls mod_bolle4odette1.Visible = CreaOdetteEnabled(codLista); // salvo in session il valore selezionato... memLayer.ML.setSessionVal(string.Format("{0}_sel", _idxGridView), grView.SelectedValue, true); - // aggiorno righe SE c'è almeno 1 odette... - if (hasOdette(codLista)) - { - aggiornaElencoRighe(); - } + aggiornaElencoRighe(); } /// /// aggiorna visualizzazione diff --git a/GMW/GMW/WebUserControls/mod_viewOdette.ascx b/GMW/GMW/WebUserControls/mod_viewOdette.ascx index bcb82dc6..6a6cef45 100644 --- a/GMW/GMW/WebUserControls/mod_viewOdette.ascx +++ b/GMW/GMW/WebUserControls/mod_viewOdette.ascx @@ -2,7 +2,7 @@ Inherits="GMW.WebUserControls.mod_viewOdette" %> <%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %> <%@ Register Src="mod_selettore_ajax.ascx" TagName="mod_selettore_ajax" TagPrefix="uc1" %> - + + + + @@ -30,11 +33,9 @@ - - - - - + + diff --git a/GMW/GMW/WebUserControls/mod_viewOdette.ascx.cs b/GMW/GMW/WebUserControls/mod_viewOdette.ascx.cs index 6f33c5f6..a8b2b6de 100644 --- a/GMW/GMW/WebUserControls/mod_viewOdette.ascx.cs +++ b/GMW/GMW/WebUserControls/mod_viewOdette.ascx.cs @@ -87,7 +87,9 @@ namespace GMW.WebUserControls #endregion - #region public + #endregion + + #region area codice variabile /// /// effettua update del modulo @@ -97,13 +99,6 @@ namespace GMW.WebUserControls resetSelezione(); } - - #endregion - - #endregion - - #region area codice variabile - /// /// carico le tabelle /// @@ -235,20 +230,6 @@ namespace GMW.WebUserControls } } /// - /// gestione evento richeista nuovo valore (mostra footer, ...) - /// - /// - /// - protected void btnNew_Click(object sender, EventArgs e) - { - GMW_data.MagClass.magazzino.addUdcPerLista(memLayer.ML.StringSessionObj("CodLista_sel")); - // sollevo evento nuovo valore... - if (eh_nuovoValore != null) - { - eh_nuovoValore(this, new EventArgs()); - } - } - /// /// post update... /// /// @@ -329,7 +310,7 @@ namespace GMW.WebUserControls { get { - return (intStatoLista == ((int)statoLista.scaricata) && codTipoLista == "04-OdetSP"); // !!! HARD-CODED tipo lista; + return Odette.mgr.listaHasOdette(memLayer.ML.StringSessionObj("CodListaOd_sel")); } } /// @@ -357,7 +338,7 @@ namespace GMW.WebUserControls /// protected void btnRistampaOdette_Click(object sender, EventArgs e) { - Odette.mgr.stampaOdettePackingList(memLayer.ML.StringSessionObj("CodLista_sel")); + Odette.mgr.stampaOdettePackingList(memLayer.ML.StringSessionObj("CodListaOd_sel")); } diff --git a/GMW/GMW/WebUserControls/mod_viewOdette.ascx.designer.cs b/GMW/GMW/WebUserControls/mod_viewOdette.ascx.designer.cs index 521443d7..82eeba56 100644 --- a/GMW/GMW/WebUserControls/mod_viewOdette.ascx.designer.cs +++ b/GMW/GMW/WebUserControls/mod_viewOdette.ascx.designer.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:2.0.50727.4952 +// Runtime Version:2.0.50727.4959 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/GMW/GMW/bin/GMW.dll b/GMW/GMW/bin/GMW.dll index 48a883e1..3635734c 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 d0ffbdae..236bbddb 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 b4c2defb..6809ec2a 100644 --- a/GMW/GMW/bin/SteamWare.XML +++ b/GMW/GMW/bin/SteamWare.XML @@ -4,3223 +4,5 @@ SteamWare - - - classe gesione log files applicazioni - - - - - directory base x logs - - - - - nome del file corrente - - - - - max mb di log da accumulare - - - - - controlla se si debba mantenere sotto controllo la dimensioen della cartella logs - - - - - 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 - - - - - indica se sia valido il dato, ovvero inizio e fine > 0 - - - - - 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 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. - - - - - 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. - - - - - 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 richiesta - - - - - - - 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 91ea6087..bb5cd879 100644 --- a/GMW/GMW/mazzAppSettings.config +++ b/GMW/GMW/mazzAppSettings.config @@ -7,7 +7,7 @@ - + diff --git a/GMW/GMW/obj/Debug/GMW.dll b/GMW/GMW/obj/Debug/GMW.dll index 48a883e1..3635734c 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 da150e22..6a1c7e02 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 78110553..c4239f74 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 bd6eefd7..8ae9e52f 100644 Binary files a/GMW/GMW/obj/Release/ResolveAssemblyReference.cache and b/GMW/GMW/obj/Release/ResolveAssemblyReference.cache differ diff --git a/GMW/GMW_data/GMW_data.csproj b/GMW/GMW_data/GMW_data.csproj index db4c0413..a32b3abd 100644 --- a/GMW/GMW_data/GMW_data.csproj +++ b/GMW/GMW_data/GMW_data.csproj @@ -195,6 +195,7 @@ SettingsSingleFileGenerator Settings.Designer.cs + diff --git a/GMW/GMW_data/Odette.cs b/GMW/GMW_data/Odette.cs index f6b7d906..e612155a 100644 --- a/GMW/GMW_data/Odette.cs +++ b/GMW/GMW_data/Odette.cs @@ -302,10 +302,11 @@ namespace GMW_data /// data bolla formato numerico YYYYMMDD /// codice particolare /// IT/EN/... - /// + /// in caso di errore e ritorno false, salva in sessione il messaggio di errore relativo in errCreazOdette public bool creaOdetteByBollaPackList(string CodLista, string RaggMag, string GrpBolla, decimal numBolla, decimal dataBolla, string particolare, string lingua) { bool answ = false; + string errCreazOdette = ""; int totUdc = 0; int udcOk = 0; DS_magazzino.RigheListePrelievoDataTable ElencoUdc = new DS_magazzino.RigheListePrelievoDataTable(); @@ -317,7 +318,8 @@ namespace GMW_data } catch { - logger.lg.scriviLog(string.Format("Errore: non ci sono UDC da creare per la PackList {0}", CodLista), tipoLog.ERROR); + errCreazOdette = string.Format("Errore: non ci sono UDC da creare per la PackList {0}", CodLista); + logger.lg.scriviLog(errCreazOdette, tipoLog.ERROR); } // in primis comunque verifico che la bolla ci sia altrimenti non procedo (anche se avrebbe già dovuto controllare...) if (checkCodBolla(RaggMag, GrpBolla, numBolla, dataBolla, particolare) && totUdc > 0) @@ -340,18 +342,21 @@ namespace GMW_data } else { - logger.lg.scriviLog(string.Format("Errore assegnazioen bolle/odette, il num di colli non corrisponde: num bolla {0} del {1}, lista prelievo {2}", numBolla, dataBolla, CodLista), tipoLog.ERROR); + errCreazOdette = string.Format("Errore assegnazione bolle/odette, il num di colli non corrisponde: num bolla {0} del {1}, lista prelievo {2}", numBolla, dataBolla, CodLista); + logger.lg.scriviLog(errCreazOdette, tipoLog.ERROR); } } else { - logger.lg.scriviLog(string.Format("Tentativo di generazione etichette odette da bolla inesistente: codice {0} del {1}", numBolla, dataBolla), tipoLog.ERROR); + errCreazOdette = string.Format("Tentativo di generazione etichette odette da bolla inesistente: codice {0} del {1}", numBolla, dataBolla); + logger.lg.scriviLog(errCreazOdette, tipoLog.ERROR); } // controllo se tutte le etichette sono sstate create if (totUdc == udcOk) { answ = true; } + memLayer.ML.setSessionVal("errCreazOdette", errCreazOdette); return answ; } /// @@ -408,6 +413,23 @@ namespace GMW_data } return answ; } + /// + /// determina se ci siano odette x la lista di prelievo + /// + /// + /// + public bool listaHasOdette(string codLista) + { + bool answ = false; + try + { + DS_Odette.stp_OdetteStatoCreateRow rigaCreate = taOdCreate.GetData(codLista)[0]; + answ = rigaCreate.OdetteCreate > 0; + } + catch + { } + return answ; + } #endregion diff --git a/GMW/GMW_data/SqlScripts/GMW_00385.sql b/GMW/GMW_data/SqlScripts/GMW_00385.sql new file mode 100644 index 00000000..47b62009 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/GMW_00385.sql @@ -0,0 +1,292 @@ + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_DtMtrx_import +* +* Recupera dati Gitterbox/DataMatrix partendo leggendo dati successivi all'ultimo import e importanto in tab GMW +* +* Steamware, S.E.L. +* mod: 2011.04.29 +* +****************************************/ +ALTER PROCEDURE dbo.stp_DtMtrx_import +( + @CodCS VARCHAR(2), + @IdxPosizione INT +) +AS + +------------------------------------------------------------------------------------------------------ +-- leggo data ultimo import (o creo record...) +------------------------------------------------------------------------------------------------------ +DECLARE @nomeFlusso AS NVARCHAR(50) +DECLARE @lastImport AS DATETIME +DECLARE @trovati AS INT + +-- imposto valori +SET @nomeFlusso = 'DataMatrix' +SET @lastImport = DATEADD(yy,-10,GETDATE()) -- inizializzo a -10 anni ... +-- sistemo tab registrazione import... +BEGIN TRAN + -- cerco nella tab log ultima data caricamento + SET @trovati = ( + SELECT COUNT(*) + FROM logImportFlussi + WHERE NomeFlusso = @nomeFlusso + ) + -- controllo se record c'è... + IF(@trovati > 0) + BEGIN + SET @lastImport = ( SELECT LastImport FROM LogImportFlussi WHERE NomeFlusso = @nomeFlusso ) + END + ELSE + BEGIN + -- lo creo! + INSERT INTO LogImportFlussi(NomeFlusso, LastImport) + VALUES (@nomeFlusso, @lastImport) + END +COMMIT TRAN +------------------------------------------------------------------------------------------------------ + + +------------------------------------------------------------------------------------------------------ +-- ora gestisco il vero caricamento... +------------------------------------------------------------------------------------------------------ + -- filtro e salvo in tabella... gitterbox validi SOLO se iniziano per "U" + DECLARE @newData TABLE + ( + CodDataMatrix numeric(23, 0) , + CodGitterbox char(10) , + NumConchiglia int , + NumDisegno numeric(7, 0) , + EsponenteDisegno tinyint , + CodDifettoScarto varchar(5) , + InizioPreparazione smalldatetime , + FinePreparazione smalldatetime , + InizioIniezione smalldatetime , + FineIniezione smalldatetime , + MagDestinazione varchar(2) , + DataImport smalldatetime + ) + INSERT INTO @newData + SELECT CodDataMatrix, LTRIM(RTRIM(CodGitterbox)), NumConchiglia, NumDisegno, EsponenteDisegno, CodDifettoScarto, InizioPreparazione, FinePreparazione, InizioIniezione, FineIniezione, MagDestinazione, DataImport + + FROM v_trasfDataMatrix + WHERE DataImport > @lastImport AND LEFT(CodGitterbox, 1) = 'U' + + + + -- creo UDC da gitterbox nuovi + INSERT INTO ElencoCartellini(UDC, Particolare, DataFus) + SELECT DISTINCT nd.CodGitterbox, null, MIN( InizioIniezione) + FROM @newData nd LEFT OUTER JOIN ElencoCartellini ec ON nd.CodGitterbox COLLATE SQL_Latin1_General_CP1_CI_AS = ec.UDC + WHERE ec.UDC IS NULL + GROUP BY nd.CodGitterbox + + DECLARE @udc NVARCHAR(50) + DECLARE @Particolare NVARCHAR(50) + DECLARE @NumDisegno NVARCHAR(50) + DECLARE @EsponenteDisegno NVARCHAR(50) + DECLARE @Qta INT + DECLARE @IdxCellaTo INT + DECLARE @adesso DATETIME + DECLARE @posTrovate INT + + SET @adesso = GETDATE() + SET @posTrovate = 0 + + DECLARE cursoreImport CURSOR FOR + SELECT nd.CodGitterbox, tp.Particolare, tp.NumDisegno, tp.EsponenteDisegno, dbo.getNumDatamatrix(nd.CodGitterbox) FROM @newData nd + INNER JOIN v_transcParticolari tp ON nd.NumDisegno = tp.NumDisegno AND nd.EsponenteDisegno = tp.EsponenteDisegno + + OPEN cursoreImport + FETCH NEXT FROM cursoreImport INTO @udc, @Particolare, @NumDisegno, @EsponenteDisegno, @Qta + + WHILE @@FETCH_STATUS = 0 + BEGIN + + -- aggiorno gli UDC gitterbox esistenti per quantità tra quelli dei dati da importare... + UPDATE ElencoCartellini + SET CodCS = @CodCS, + IdxPosizione = @IdxPosizione, + CreateDate = @adesso, + Particolare = @Particolare, + DisegnoGrezzo = @NumDisegno, + Esponente = @EsponenteDisegno, + Qta = @Qta, + Figura = '', + CodImballo ='', + Tara = 0, + PesoTot = 0, + PesoCad = 0, + CodStato = 'Fin', + NumCont = 1, + TurnoFus = 0, + ModDate = @adesso + WHERE UDC = @udc + + -- indico cella UDC corrente... calcolo la prima cella della nuova posizione... + SET @IdxCellaTo = ( + SELECT TOP 1 IdxCella FROM Celle + WHERE IdxBlocco = ( + SELECT IdxBlocco FROM Blocchi + WHERE CodMag=CAST(@IdxPosizione AS NVARCHAR(50))) + ) + -- controllo se posizione non ancora creata... + SET @posTrovate = ( SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE UDC = @udc ) + IF( @posTrovate =0) + BEGIN + INSERT INTO PosizioneUdcCorrente + VALUES (@udc, @IdxCellaTo, @CodCS, @adesso) + END + + FETCH NEXT FROM cursoreImport INTO @udc, @Particolare, @NumDisegno, @EsponenteDisegno, @Qta + + + END + + CLOSE cursoreImport + DEALLOCATE cursoreImport + + -- inserisco datamatrix da ultimo import + INSERT INTO ElencoDataMatrix + SELECT * FROM @newData + + -- aggiorno dati ultimo caricamento + SET @lastImport = ( SELECT ISNULL(MAX(DataImport),@lastImport) FROM @newData ) + UPDATE LogImportFlussi + SET LastImport = @lastImport + WHERE NomeFlusso = @nomeFlusso + + +RETURN +go + +commit +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2009-09-20 +-- Description: trigger x inserimento movimenti +-- nella coda di trasferimento batch +-- verso AS400 x UPDATE UDC +-- ============================================= +ALTER TRIGGER trg_updMovAS + ON ElencoCartellini + AFTER UPDATE +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + DECLARE @partOk AS BIT + DECLARE @currUdc AS NVARCHAR(50) + DECLARE @IdxPosFrom AS INT + DECLARE @IdxPosTo AS INT + DECLARE @magFrom AS NVARCHAR(50) + DECLARE @magTo AS NVARCHAR(50) + DECLARE @qta AS DECIMAL(10,2) + DECLARE @qtaOld AS DECIMAL(10,2) + DECLARE @IdxPosizioneComp INT + DECLARE @toAs400 BIT + + DECLARE cursore CURSOR FOR + SELECT CASE WHEN ISNULL(Particolare,'n.d.') = 'n.d.' THEN 0 ELSE 1 END, UDC FROM inserted + + OPEN cursore + FETCH NEXT FROM cursore INTO @partOk, @currUdc + + WHILE @@FETCH_STATUS = 0 + BEGIN + -- controllo che CI SIA il particolare (altrimenti non eseguo) + IF(@partOk = 1) + SET @qta = (SELECT Qta FROM inserted WHERE UDC = @currUdc) + SET @qtaOld = (SELECT Qta FROM deleted WHERE UDC = @currUdc) + -- se c'è stata modifica di quantità inizio a rettificare quella + IF ((UPDATE(Qta)) AND(@qta <> @qtaOld)) + BEGIN + -- registro il VERO movimento + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOD', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), @qta - Qta + FROM deleted + WHERE UDC = @currUdc AND CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + -- controllo: se il magazzino di destinazione richiede una compensazione registro il 2° movimento di compensazione + SET @IdxPosFrom = (SELECT IdxPosizione FROM deleted) + SET @IdxPosTo = (SELECT IdxPosizione FROM inserted) + -- calcolo il mag di compensazione + SET @IdxPosizioneComp = (SELECT CAST(ISNULL(CodMagAS_compensaz,0) AS INT) FROM AS400_MagCont WHERE (Attivo = 1) AND (CodMagAS = CAST(@IdxPosFrom AS NVARCHAR(50)))) + IF (@IdxPosizioneComp > 0) + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_COMP', Particolare, UDC, CAST(@IdxPosizioneComp AS NVARCHAR(50)), Qta - @qta + FROM deleted + WHERE UDC = @currUdc AND CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + END + + -- Prendo le posizioni di magazzino precedente e nuova + SET @IdxPosFrom = (SELECT IdxPosizione FROM deleted WHERE UDC = @currUdc) + SET @IdxPosTo = (SELECT IdxPosizione FROM inserted WHERE UDC = @currUdc) + + -- controllo se devo fare rettifiche quantità... + SET @toAs400 = ( + SELECT TOP 1 ISNULL(toAs400, 0) as valore + FROM TabTranPosizEventi + WHERE IdxPosizione = @IdxPosFrom AND IdxPosizioneTo = @IdxPosTo + ) + + -- controllo poi se sia cambiato il magazzino logico (IdxPosizione) e si richieda update verso AS400, altrimenti non lo inserisco + IF ((UPDATE(IdxPosizione)) AND @toAs400 = 1) + BEGIN + -- Le trasformo nelle equivalenti stringhe del codMag SE attive + SET @magFrom = (SELECT ISNULL(CodMagAS,'---') FROM AS400_MagCont WHERE Attivo = 1 AND CodMagAs = CAST(@IdxPosFrom AS NVARCHAR(50))) + SET @magTo = (SELECT ISNULL(CodMagAS,'---') FROM AS400_MagCont WHERE Attivo = 1 AND CodMagAs = CAST(@IdxPosTo AS NVARCHAR(50))) + + -- inserisco un movimento di deposito verso mag nuovo (SE attivo) + IF (@magFrom <> '---') + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOV', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), -@qta + FROM deleted + WHERE UDC = @currUdc AND CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + -- inserisco un movimento di prelievo verso mag vecchio (SE attivo) + IF (@magTo <> '---') + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOV', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), @qta + FROM inserted + WHERE UDC = @currUdc AND CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + END + FETCH NEXT FROM cursore INTO @partOk, @currUdc + END + + CLOSE cursore + DEALLOCATE cursore + +END + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(385, GETDATE()) +GO diff --git a/GMW/GMW_data/bin/Debug/GMW_data.dll b/GMW/GMW_data/bin/Debug/GMW_data.dll index d0ffbdae..236bbddb 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 b4c2defb..6809ec2a 100644 --- a/GMW/GMW_data/bin/Debug/SteamWare.xml +++ b/GMW/GMW_data/bin/Debug/SteamWare.xml @@ -4,3223 +4,5 @@ SteamWare - - - classe gesione log files applicazioni - - - - - directory base x logs - - - - - nome del file corrente - - - - - max mb di log da accumulare - - - - - controlla se si debba mantenere sotto controllo la dimensioen della cartella logs - - - - - 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 - - - - - indica se sia valido il dato, ovvero inizio e fine > 0 - - - - - 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 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. - - - - - 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. - - - - - 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 richiesta - - - - - - - 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 4ce08415..2f76dccd 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/bin/Release/SteamWare.dll b/GMW/GMW_data/bin/Release/SteamWare.dll index 95d4fa74..9751fad4 100644 Binary files a/GMW/GMW_data/bin/Release/SteamWare.dll and b/GMW/GMW_data/bin/Release/SteamWare.dll differ diff --git a/GMW/GMW_data/obj/Debug/GMW_data.dll b/GMW/GMW_data/obj/Debug/GMW_data.dll index d0ffbdae..236bbddb 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 44b149c5..5932a2cc 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/Release/GMW_data.dll b/GMW/GMW_data/obj/Release/GMW_data.dll index 4ce08415..2f76dccd 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/obj/Release/ResolveAssemblyReference.cache b/GMW/GMW_data/obj/Release/ResolveAssemblyReference.cache index c6adf15c..1bc557cb 100644 Binary files a/GMW/GMW_data/obj/Release/ResolveAssemblyReference.cache and b/GMW/GMW_data/obj/Release/ResolveAssemblyReference.cache differ diff --git a/GMW/GMW_installer/GMW_installer.vdproj b/GMW/GMW_installer/GMW_installer.vdproj index a3807060..d3fa792c 100644 --- a/GMW/GMW_installer/GMW_installer.vdproj +++ b/GMW/GMW_installer/GMW_installer.vdproj @@ -349,14 +349,14 @@ { "Name" = "8:Microsoft Visual Studio" "ProductName" = "8:GMW" - "ProductCode" = "8:{5949A25E-AD68-482E-A526-91D2F43F4C17}" - "PackageCode" = "8:{29ACCCA4-E39B-431C-9E86-19A003F9212C}" + "ProductCode" = "8:{9D42A66B-BE4D-45F0-92EF-247DA3C93CC9}" + "PackageCode" = "8:{E0D60204-B8B0-420C-8574-0A60F68BF041}" "UpgradeCode" = "8:{C9BC0732-DC92-4336-BAC9-A05A5D2A97C0}" "RestartWWWService" = "11:TRUE" "RemovePreviousVersions" = "11:FALSE" "DetectNewerInstalledVersion" = "11:TRUE" "InstallAllUsers" = "11:FALSE" - "ProductVersion" = "8:1.0.380" + "ProductVersion" = "8:1.0.385" "Manufacturer" = "8:SteamWare s.r.l." "ARPHELPTELEPHONE" = "8:+39-035460560" "ARPHELPLINK" = "8:http://www.steamware.net" diff --git a/GMW/GMW_installer/Release/GMW_installer.msi b/GMW/GMW_installer/Release/GMW_installer.msi index 72a59cb8..56173417 100644 Binary files a/GMW/GMW_installer/Release/GMW_installer.msi and b/GMW/GMW_installer/Release/GMW_installer.msi differ diff --git a/GMW/GMW_test_installer/GMW_test_installer.vdproj b/GMW/GMW_test_installer/GMW_test_installer.vdproj index a4261c44..26f50a90 100644 --- a/GMW/GMW_test_installer/GMW_test_installer.vdproj +++ b/GMW/GMW_test_installer/GMW_test_installer.vdproj @@ -62,6 +62,19 @@ "PrerequisitesLocation" = "2:1" "Url" = "8:GMW_Test" "ComponentsUrl" = "8:" + "Items" + { + "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Net.Framework.3.5.SP1" + { + "Name" = "8:.NET Framework 3.5 SP1" + "ProductCode" = "8:Microsoft.Net.Framework.3.5.SP1" + } + "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Windows.Installer.3.1" + { + "Name" = "8:Windows Installer 3.1" + "ProductCode" = "8:Microsoft.Windows.Installer.3.1" + } + } } } "Release" @@ -79,6 +92,27 @@ "PrivateKeyFile" = "8:" "TimeStampServer" = "8:" "InstallerBootstrapper" = "3:2" + "BootstrapperCfg:{63ACBE69-63AA-4F98-B2B6-99F9E24495F2}" + { + "Enabled" = "11:TRUE" + "PromptEnabled" = "11:TRUE" + "PrerequisitesLocation" = "2:1" + "Url" = "8:" + "ComponentsUrl" = "8:" + "Items" + { + "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Net.Framework.3.5.SP1" + { + "Name" = "8:.NET Framework 3.5 SP1" + "ProductCode" = "8:Microsoft.Net.Framework.3.5.SP1" + } + "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Windows.Installer.3.1" + { + "Name" = "8:Windows Installer 3.1" + "ProductCode" = "8:Microsoft.Windows.Installer.3.1" + } + } + } } } "Deployable" @@ -267,14 +301,14 @@ { "Name" = "8:Microsoft Visual Studio" "ProductName" = "8:GMW_test" - "ProductCode" = "8:{CC221957-50EF-47DB-B366-A2964A918C71}" - "PackageCode" = "8:{DB7B7C03-68A5-404D-8608-F02E4F015A13}" + "ProductCode" = "8:{A388E000-1250-44C2-89C0-D53D68D6C423}" + "PackageCode" = "8:{383F90BA-A3D7-4CF8-9458-FC77FFFB98A1}" "UpgradeCode" = "8:{6FD64E39-D93B-4ADA-ADF3-303A1BCA49C2}" "RestartWWWService" = "11:TRUE" "RemovePreviousVersions" = "11:TRUE" "DetectNewerInstalledVersion" = "11:TRUE" "InstallAllUsers" = "11:FALSE" - "ProductVersion" = "8:1.0.380" + "ProductVersion" = "8:1.0.385" "Manufacturer" = "8:SteamWare s.r.l." "ARPHELPTELEPHONE" = "8:+39-035460560" "ARPHELPLINK" = "8:http://www.steamware.net" diff --git a/GMW/GMW_test_installer/Release/GMW_test_installer.msi b/GMW/GMW_test_installer/Release/GMW_test_installer.msi index b2194c4e..d698eeeb 100644 Binary files a/GMW/GMW_test_installer/Release/GMW_test_installer.msi and b/GMW/GMW_test_installer/Release/GMW_test_installer.msi differ