//------------------------------------------------------------------------+
 //                     buttonbuttonAzzeraValori_Click                     |
 //------------------------------------------------------------------------+
 private void buttonbuttonAzzeraValori_Click(object sender, RoutedEventArgs e)
 {
     //_xTXP.Save();
     foreach (XmlNode item in _xTXP.Document.SelectNodes("//Node"))
     {
         if (item.Attributes["Checked"] == null)
         {
             XmlAttribute attr = _xTXP.Document.CreateAttribute("Checked");
             item.Attributes.Append(attr);
         }
         item.Attributes["Checked"].Value = "False";
         if (item.Attributes["NotaTDL"] == null)
         {
             XmlAttribute attr = _xTXP.Document.CreateAttribute("NotaTDL");
             item.Attributes.Append(attr);
         }
         item.Attributes["NotaTDL"].Value = "";
         StaticUtilities.MarkNodeAsModified(item, App.OBJ_MOD); _isModified = true;
     }
     RevisoftApplication.XmlManager x = new XmlManager();
     x.TipoCodifica           = RevisoftApplication.XmlManager.TipologiaCodifica.Normale;
     _xTXP.isModified         = _isModified; _xTXP.Save(_isModified);
     _isModified              = false;
     TreeXmlProvider.Document = x.LoadEncodedFile(_xTXP.File);
     TreeXmlProvider.Refresh();
     LoadDataSource();
 }
        public void LoadTreeSource()
        {
            //Titolo attivita
            Utilities u = new Utilities();

            txtTitoloAttivita.Text = u.TitoloAttivita(_TipoAttivita);

            //carico dati
            RevisoftApplication.XmlManager x = new XmlManager();
            x.TipoCodifica           = RevisoftApplication.XmlManager.TipologiaCodifica.Normale;
            TreeXmlProvider.Document = x.LoadEncodedFile(SelectedTreeSource);

            if (!u.CheckXmlDocument(TreeXmlProvider.Document, ((App.TipoFile)(Convert.ToInt32(IDTree))), "Tree"))
            {
                this.Close();
                return;
            }

            if (firsttime)
            {
                firsttime = false;

                foreach (XmlNode item in TreeXmlProvider.Document.SelectNodes("//Node"))
                {
                    if (item.ParentNode.Name == "Tree")
                    {
                        item.Attributes["Expanded"].Value = "True";
                    }
                    else
                    {
                        item.Attributes["Expanded"].Value = "False";
                    }

                    item.Attributes["Selected"].Value = "False";

                    if (item.Attributes["HighLighted"] == null)
                    {
                        XmlAttribute attr = item.OwnerDocument.CreateAttribute("HighLighted");
                        attr.Value = "Black";
                        item.Attributes.Append(attr);
                    }

                    item.Attributes["HighLighted"].Value = "Black";
                }
            }

            TreeXmlProvider.Refresh();
            LoadDataSource();
        }
Beispiel #3
0
        //----------------------------------------------------------------------------+
        //                                    Open                                    |
        //----------------------------------------------------------------------------+
        private void Open_old()
        {
            if (Check())
            {
                //carico file
                try
                {
                    document = x.LoadEncodedFile(filebackup);
                    Utilities u = new Utilities();
                    if (!u.CheckXmlDocument(document, App.TipoFile.BackUp))
                    {
                        throw new Exception("Documento non valido. ID diverso da standard TipoFile");
                    }
                }
                catch (Exception ex)
                {
                    string log = ex.Message;

                    Error(WindowGestioneMessaggi.TipologieMessaggiErrore.ErroreInCaricamentoFileBackUp);
                }
            }
        }
Beispiel #4
0
        public void LoadTreeSource()
        {
            RevisoftApplication.XmlManager x = new XmlManager();
            x.TipoCodifica           = RevisoftApplication.XmlManager.TipologiaCodifica.Normale;
            TreeXmlProvider.Document = x.LoadEncodedFile(SelectedTreeSource);

            Utilities u = new Utilities();

            if (!u.CheckXmlDocument(TreeXmlProvider.Document, App.TipoFile.Formulario, "Tree"))
            {
                this.Close();
                return;
            }

            if (firsttime)
            {
                firsttime = false;

                foreach (XmlNode item in TreeXmlProvider.Document.SelectNodes("//Node"))
                {
                    if (item.ParentNode.Name == "Tree")
                    {
                        item.Attributes["Expanded"].Value = "True";
                    }
                    else
                    {
                        item.Attributes["Expanded"].Value = "False";
                    }

                    item.Attributes["Selected"].Value = "False";
                }
            }

            TreeXmlProvider.Refresh();

            LoadDataSource();
        }
        private void ReloadNodi()
        {
            Hashtable htID                   = new Hashtable();
            Hashtable htAliasAdditivo        = new Hashtable();
            ArrayList alCheckCompletezzaNodi = new ArrayList();

            List <DateTime> dates    = new List <DateTime>();
            List <string>   strings  = new List <string>();
            bool            alldates = true;

            htSessioni.Clear();
            htSessioniAlias.Clear();
            htSessioniID.Clear();

            RevisoftApplication.XmlManager x = new XmlManager();
            x.TipoCodifica = RevisoftApplication.XmlManager.TipologiaCodifica.Normale;

            for (int i = 0; i < SessioneFile.Split('|').Count(); i++)
            {
                ht.Add(SessioneAlias.Split('|')[i], SessioneFile.Split('|')[i]);
                htID.Add(SessioneAlias.Split('|')[i], SessioneID.Split('|')[i]);

                try
                {
                    htAliasAdditivo.Add(SessioneAlias.Split('|')[i], SessioneAliasAdditivo.Split('|')[i]);
                }
                catch (Exception ex)
                {
                    cBusinessObjects.logger.Error(ex, "wWorkAreaTreeLimited.ReloadNodi1 exception");
                    string log = ex.Message;
                    htAliasAdditivo.Add(SessioneAlias.Split('|')[i], "");
                }

                string aliastmp = SessioneAlias.Split('|')[i];

                strings.Add(aliastmp);

                if (aliastmp == "")
                {
                    aliastmp = "31/12/" + DateTime.Now.Year.ToString();
                }

                DateTime data;
                try
                {
                    data = Convert.ToDateTime(aliastmp);
                    dates.Add(data);
                }
                catch (Exception ex)
                {
                    cBusinessObjects.logger.Error(ex, "wWorkAreaTreeLimited.ReloadNodi2 exception");
                    string log = ex.Message;
                    alldates = false;
                }
            }

            if (alldates)
            {
                dates.Sort();
                dates.Reverse();
            }

            for (int i = 0; i < strings.Count; i++)
            {
                string alias;
                if (alldates)
                {
                    alias = dates[i].ToShortDateString();
                    if (alias == "31/12" + DateTime.Now.Year.ToString())
                    {
                        alias = "";
                    }
                }
                else
                {
                    alias = strings[i];
                }

                htSessioni.Add(i, ht[alias].ToString());
                htSessioniID.Add(i, htID[alias].ToString());

                XmlDocument tmpDoc = x.LoadEncodedFile(ht[alias].ToString());

                foreach (XmlNode node in tmpDoc.SelectNodes("/Dati//Dato"))
                {
                    if (!alCheckCompletezzaNodi.Contains(node.Attributes["ID"].Value))
                    {
                        alCheckCompletezzaNodi.Add(node.Attributes["ID"].Value);
                    }
                }
            }

            for (int i = 0; i < strings.Count; i++)
            {
                string alias;
                if (alldates)
                {
                    alias = dates[i].ToShortDateString();
                    if (alias == "31/12" + DateTime.Now.Year.ToString())
                    {
                        alias = "";
                    }
                }
                else
                {
                    alias = strings[i];
                }

                XmlDocument tmpDoc = x.LoadEncodedFile(ht[alias].ToString());

                XmlNode nodeTree = TreeXmlProvider.Document.SelectSingleNode("/Tree");
                if (nodeTree != null)
                {
                    XmlNode nodeSessioni = nodeTree.SelectSingleNode("Sessioni");
                    if (i == 0 && nodeSessioni != null)
                    {
                        nodeSessioni.ParentNode.RemoveChild(nodeSessioni);
                        nodeSessioni = null;
                    }

                    if (nodeSessioni == null)
                    {
                        nodeSessioni = nodeTree.OwnerDocument.CreateNode(XmlNodeType.Element, "Sessioni", "");
                        nodeTree.AppendChild(nodeSessioni);
                        nodeSessioni = nodeTree.SelectSingleNode("Sessioni");
                    }

                    XmlNode nodeSessione = nodeTree.SelectSingleNode("Sessioni/Sessione[@Alias=\"" + alias + "\"]");
                    if (nodeSessione == null)
                    {
                        nodeSessione = nodeSessioni.OwnerDocument.CreateNode(XmlNodeType.Element, "Sessione", "");

                        XmlAttribute attr = nodeSessioni.OwnerDocument.CreateAttribute("Alias");

                        try
                        {
                            switch ((App.TipoFile)(System.Convert.ToInt32(IDTree)))
                            {
                            case App.TipoFile.Bilancio:
                            case App.TipoFile.Conclusione:
                            case App.TipoFile.Revisione:
                                attr.Value = ConvertDataToEsercizio(alias.Split('/')[2]);
                                htSessioniAlias.Add(i, ConvertDataToEsercizio(alias.Split('/')[2]));
                                break;

                            case App.TipoFile.Vigilanza:
                            case App.TipoFile.Verifica:
                            case App.TipoFile.Incarico:
                            case App.TipoFile.IncaricoCS:
                            case App.TipoFile.IncaricoSU:
                            case App.TipoFile.IncaricoREV:
                                attr.Value = alias.Split('/')[0] + "/" + alias.Split('/')[1] + "\r\n" + alias.Split('/')[2] + ((htAliasAdditivo[alias].ToString() == "") ? "" : "\r\n" + htAliasAdditivo[alias].ToString());
                                htSessioniAlias.Add(i, alias.Split('/')[0] + "/" + alias.Split('/')[1] + "/" + alias.Split('/')[2] + ((htAliasAdditivo[alias].ToString() == "") ? "" : " - " + htAliasAdditivo[alias].ToString()));
                                break;

                            case App.TipoFile.ISQC:
                                attr.Value = alias.Split('/')[0] + "/" + alias.Split('/')[1] + "/" + alias.Split('/')[2] + ((htAliasAdditivo[alias].ToString() == "") ? "" : "\r\n" + htAliasAdditivo[alias].ToString());
                                htSessioniAlias.Add(i, alias.Split('/')[0] + "/" + alias.Split('/')[1] + "/" + alias.Split('/')[2] + ((htAliasAdditivo[alias].ToString() == "") ? "" : " - " + htAliasAdditivo[alias].ToString()));
                                break;

                            case App.TipoFile.Licenza:
                            case App.TipoFile.Master:
                            case App.TipoFile.Info:
                            case App.TipoFile.Messagi:
                            case App.TipoFile.ImportExport:
                            case App.TipoFile.ImportTemplate:
                            case App.TipoFile.BackUp:
                            case App.TipoFile.Formulario:
                            case App.TipoFile.ModellPredefiniti:
                            case App.TipoFile.DocumentiAssociati:
                            default:
                                break;
                            }
                        }
                        catch (Exception ex)
                        {
                            cBusinessObjects.logger.Error(ex, "wWorkAreaTreeLimited.ReloadNodi3 exception");
                            string log = ex.Message;
                            attr.Value = strings[i];
                        }

                        nodeSessione.Attributes.Append(attr);

                        attr = nodeSessioni.OwnerDocument.CreateAttribute("Selected");
                        if (SelectedDataSource == ht[alias].ToString())
                        {
                            switch ((App.TipoFile)(System.Convert.ToInt32(IDTree)))
                            {
                            case App.TipoFile.Bilancio:
                            case App.TipoFile.Conclusione:
                            case App.TipoFile.Revisione:
                                selectedAliasCodificato = ConvertDataToEsercizio(alias.Split('/')[2]);
                                break;

                            case App.TipoFile.Vigilanza:
                            case App.TipoFile.Verifica:
                            case App.TipoFile.Incarico:
                            case App.TipoFile.IncaricoCS:
                            case App.TipoFile.IncaricoSU:
                            case App.TipoFile.IncaricoREV:
                                selectedAliasCodificato = alias.Split('/')[0] + "/" + alias.Split('/')[1] + "\r\n" + alias.Split('/')[2] + ((htAliasAdditivo[alias].ToString() == "") ? "" : "\r\n" + htAliasAdditivo[alias].ToString());
                                break;

                            case App.TipoFile.ISQC:
                                selectedAliasCodificato = alias.Split('/')[0] + "/" + alias.Split('/')[1] + "/" + alias.Split('/')[2] + ((htAliasAdditivo[alias].ToString() == "") ? "" : "\r\n" + htAliasAdditivo[alias].ToString());
                                break;

                            case App.TipoFile.Licenza:
                            case App.TipoFile.Master:
                            case App.TipoFile.Info:
                            case App.TipoFile.Messagi:
                            case App.TipoFile.ImportExport:
                            case App.TipoFile.ImportTemplate:
                            case App.TipoFile.BackUp:
                            case App.TipoFile.Formulario:
                            case App.TipoFile.ModellPredefiniti:
                            case App.TipoFile.DocumentiAssociati:
                            default:
                                break;
                            }

                            selectedAlias = alias;
                            attr.Value    = "#AA" + YearColor[-1].ToString();
                        }
                        else
                        {
                            attr.Value = "White";
                        }
                        nodeSessione.Attributes.Append(attr);

                        nodeSessioni.AppendChild(nodeSessione);
                    }
                }

                foreach (string ID in alCheckCompletezzaNodi)
                {
                    nodeTree = TreeXmlProvider.Document.SelectSingleNode("/Tree//Node[@ID=" + ID + "]");
                    if (nodeTree != null)
                    {
                        XmlNode node = tmpDoc.SelectSingleNode("/Dati//Dato[@ID='" + ID + "']");

                        if (node != null && !htStati.ContainsKey(node.Attributes["ID"].Value))
                        {
                            htStati.Add(node.Attributes["ID"].Value, node);
                        }

                        XmlNode nodeSessioni = nodeTree.SelectSingleNode("Sessioni");
                        if (i == 0 && nodeSessioni != null)
                        {
                            nodeSessioni.ParentNode.RemoveChild(nodeSessioni);
                            nodeSessioni = null;
                        }

                        if (nodeSessioni == null)
                        {
                            XmlNode newElemOut = nodeTree.OwnerDocument.CreateNode(XmlNodeType.Element, "Sessioni", "");
                            nodeTree.AppendChild(newElemOut);
                            nodeSessioni = nodeTree.SelectSingleNode("Sessioni");
                        }

                        XmlNode nodeSessione = nodeTree.SelectSingleNode("Sessioni/Sessione[@Alias=\"" + alias + "\"]");
                        if (nodeSessione == null)
                        {
                            nodeSessione = nodeSessioni.OwnerDocument.CreateNode(XmlNodeType.Element, "Sessione", "");

                            XmlAttribute attr = nodeSessioni.OwnerDocument.CreateAttribute("Alias");

                            try
                            {
                                switch ((App.TipoFile)(System.Convert.ToInt32(IDTree)))
                                {
                                case App.TipoFile.Bilancio:
                                case App.TipoFile.Conclusione:
                                case App.TipoFile.Revisione:
                                    attr.Value = ConvertDataToEsercizio(alias.Split('/')[2]);
                                    break;

                                case App.TipoFile.Vigilanza:
                                case App.TipoFile.Verifica:
                                case App.TipoFile.Incarico:
                                case App.TipoFile.IncaricoCS:
                                case App.TipoFile.IncaricoSU:
                                case App.TipoFile.IncaricoREV:
                                    attr.Value = alias.Split('/')[0] + "/" + alias.Split('/')[1] + "\r\n" + alias.Split('/')[2] + ((htAliasAdditivo[alias].ToString() == "") ? "" : "\r\n" + htAliasAdditivo[alias].ToString());
                                    break;

                                case App.TipoFile.ISQC:
                                    attr.Value = alias.Split('/')[0] + "/" + alias.Split('/')[1] + "/" + alias.Split('/')[2] + ((htAliasAdditivo[alias].ToString() == "") ? "" : "\r\n" + htAliasAdditivo[alias].ToString());
                                    break;

                                case App.TipoFile.Licenza:
                                case App.TipoFile.Master:
                                case App.TipoFile.Info:
                                case App.TipoFile.Messagi:
                                case App.TipoFile.ImportExport:
                                case App.TipoFile.ImportTemplate:
                                case App.TipoFile.BackUp:
                                case App.TipoFile.Formulario:
                                case App.TipoFile.ModellPredefiniti:
                                case App.TipoFile.DocumentiAssociati:
                                default:
                                    break;
                                }
                            }
                            catch (Exception ex)
                            {
                                cBusinessObjects.logger.Error(ex, "wWorkAreaTreeLimited.ReloadNodi4 exception");
                                string log = ex.Message;
                                attr.Value = strings[i];
                            }

                            nodeSessione.Attributes.Append(attr);

                            attr = nodeSessioni.OwnerDocument.CreateAttribute("Selected");
                            if (SelectedDataSource == ht[alias].ToString())
                            {
                                attr.Value = "#AA" + YearColor[-1].ToString();
                            }
                            else
                            {
                                int anno = Convert.ToInt32(alias.Substring(alias.Length - 4, 4));

                                if (i % 2 == 0)
                                {
                                    attr.Value = "#80" + YearColor[anno].ToString();
                                }
                                else
                                {
                                    attr.Value = "#AA" + YearColor[anno].ToString();
                                }
                            }
                            nodeSessione.Attributes.Append(attr);

                            attr = nodeSessioni.OwnerDocument.CreateAttribute("Stato");
                            if (nodeTree != null && nodeTree.ParentNode != null && nodeTree.ParentNode.Name == "Tree")
                            {
                                if (SelectedDataSource == ht[alias].ToString() && nodeTree.Attributes["Osservazioni"] != null && nodeTree.Attributes["Osservazioni"].Value.Trim() != "")
                                {
                                    attr.Value = (Convert.ToInt32(App.TipoTreeNodeStato.NodoFazzoletto)).ToString();
                                }
                                else
                                {
                                    attr.Value = (Convert.ToInt32(App.TipoTreeNodeStato.Sconosciuto)).ToString();
                                }
                            }
                            else
                            {
                                attr.Value = getStato(nodeTree, tmpDoc);

                                if (nodeTree.Attributes["Report"].Value == "True")
                                {
                                    attr.Value = (Convert.ToInt32(App.TipoTreeNodeStato.SolaLettura)).ToString();
                                }
                            }

                            nodeSessione.Attributes.Append(attr);

                            nodeSessioni.AppendChild(nodeSessione);
                        }
                    }
                }
                _x.Save();
            }
        }
        public void VisualizzaMessaggio()
        {
            _ChuisuraRegolare = false;



            string xKey   = "/RevisoftMessageFile";
            string errMsg = "Undefined";

            switch (App.ErrorLevel)
            {
            case App.ErrorTypes.Segnalazione:
                labelTitolo.Content    = "Segnalazione";
                labelTitolo.Foreground = Brushes.Gray;
                xKey  += "/Segnalazione/Nodo[@Key='" + _TipoMessaggioSegnalazione.ToString() + "']";
                errMsg = _TipoMessaggioSegnalazione.ToString();
                break;

            case App.ErrorTypes.Avviso:
                labelTitolo.Content    = "Avviso";
                labelTitolo.Foreground = App._arrBrushes[0];
                xKey  += "/Avvisi/Nodo[@Key='" + _TipoMessaggioAvviso.ToString() + "']";
                errMsg = _TipoMessaggioAvviso.ToString();
                break;

            case App.ErrorTypes.Errore:
                labelTitolo.Content    = "Errore";
                labelTitolo.Foreground = Brushes.Red;
                xKey  += "/Errori/Nodo[@Key='" + _TipoMessaggioErrore.ToString() + "']";
                errMsg = _TipoMessaggioErrore.ToString();
                break;

            case App.ErrorTypes.ErroreBloccante:
                labelTitolo.Content    = "Errore Bloccante";
                labelTitolo.Foreground = Brushes.Red;
                xKey  += "/ErroriBloccanti/Nodo[@Key='" + _TipoMessaggioErroreBloccante.ToString() + "']";
                errMsg = _TipoMessaggioErroreBloccante.ToString();
                break;
            }


            //andrea 2.9
            //Verifico presenza file messaggio
            if (!System.IO.File.Exists(App.AppMessageFile))
            {
                MessageBox.Show("Message File mancante. Installazione incompleta\n\n" + App.AppMessageFile + "\n\nErrore: " + errMsg);
                RevisoftApplication.Utilities u = new Utilities();
                u.ChiudiApplicazione();
            }



            //leggo file messaggi
            RevisoftApplication.XmlManager x = new XmlManager();
            XmlDocument f = new XmlDocument();

            x.TipoCodifica = RevisoftApplication.XmlManager.TipologiaCodifica.Normale;
            f = x.LoadEncodedFile(App.AppMessageFile);
            XmlNode n = f.SelectSingleNode(xKey);

            //nodo mancante
            if (n == null)
            {
                //Abstract
                textBlockAbstract.Text = "Messaggio non trovato";
                //Descrizione
                textBlockDescrizione.Text = "Tipo: " + App.ErrorLevel.ToString() + "\nCodice errore: " + errMsg;
            }
            else
            {
                //Abstract
                textBlockAbstract.Text = n.Attributes["Titolo"].InnerText;
                //Descrizione
                textBlockDescrizione.Text = n.Attributes["Descrizione"].InnerText;
            }

            //apro finestra
            base.ShowDialog();
        }
Beispiel #7
0
        private void buttonApri_Click(object sender, RoutedEventArgs e)
        {
            MasterFile mf = MasterFile.Create();
            string     selectedSession      = "-1";
            string     selectedSessionTitle = "";

            foreach (object item in stpSessioniISQC.Children)
            {
                if (item.GetType().Name == "RadioButton")
                {
                    if (((RadioButton)(item)).IsChecked == true)
                    {
                        selectedSession      = ((RadioButton)(item)).Tag.ToString();
                        selectedSessionTitle = ((RadioButton)(item)).Content.ToString();
                    }
                }
            }

            if (selectedSession == "-1")
            {
                e.Handled = true;
                return;
            }

            Hashtable ht = mf.GetISQC(selectedSession);

            XmlDataProviderManager _xNew = new XmlDataProviderManager(App.AppDataDataFolder + "\\" + ht["FileData"].ToString());

            WindowWorkArea wa = new WindowWorkArea(ref _xNew);

            //Nodi
            wa.NodeHome = 0;

            RevisoftApplication.XmlManager xt = new XmlManager();
            xt.TipoCodifica = RevisoftApplication.XmlManager.TipologiaCodifica.Normale;
            XmlDataProvider TreeXmlProvider = new XmlDataProvider();

            TreeXmlProvider.Document = xt.LoadEncodedFile(App.AppDataDataFolder + "\\" + ht["File"].ToString());

            if (TreeXmlProvider.Document != null && TreeXmlProvider.Document.SelectSingleNode("/Tree") != null)
            {
                foreach (XmlNode item in TreeXmlProvider.Document.SelectNodes("/Tree//Node"))
                {
                    switch (((App.TipoAttivita)(Convert.ToInt32(_IDTree))))
                    {
                    case App.TipoAttivita.Revisione:
                        if (item.Attributes["ID"].Value == "181")
                        {
                            wa.Nodes.Add(0, item);
                        }
                        break;

                    case App.TipoAttivita.Bilancio:
                        if (item.Attributes["ID"].Value == "182")
                        {
                            wa.Nodes.Add(0, item);
                        }
                        break;

                    case App.TipoAttivita.Conclusione:
                        if (item.Attributes["ID"].Value == "183")
                        {
                            wa.Nodes.Add(0, item);
                        }
                        break;

                    case App.TipoAttivita.Verifica:
                        if (item.Attributes["ID"].Value == "185")
                        {
                            wa.Nodes.Add(0, item);
                        }
                        break;

                    default:
                        e.Handled = true;
                        return;
                    }
                }
            }

            if (wa.Nodes.Count == 0)
            {
                e.Handled = true;
                return;
            }

            wa.NodeNow = wa.NodeHome;

            wa.Owner = Window.GetWindow(this);

            //posizione e dimensioni finestra
            wa.WindowStartupLocation = System.Windows.WindowStartupLocation.CenterScreen;
            wa.Height    = System.Windows.SystemParameters.PrimaryScreenHeight * 90.0 / 100.0;
            wa.Width     = System.Windows.SystemParameters.PrimaryScreenWidth * 90.0 / 100.0;
            wa.MaxHeight = System.Windows.SystemParameters.PrimaryScreenHeight * 90.0 / 100.0;
            wa.MaxWidth  = System.Windows.SystemParameters.PrimaryScreenWidth * 90.0 / 100.0;
            wa.MinHeight = System.Windows.SystemParameters.PrimaryScreenHeight * 90.0 / 100.0;
            wa.MinWidth  = System.Windows.SystemParameters.PrimaryScreenWidth * 90.0 / 100.0;

            //Sessioni
            wa.Sessioni.Clear();
            wa.Sessioni.Add(0, App.AppDataDataFolder + "\\" + ht["FileData"].ToString());

            wa.SessioniTitoli.Clear();
            wa.SessioniTitoli.Add(0, selectedSessionTitle);

            wa.SessioniID.Clear();
            wa.SessioniID.Add(0, selectedSession);

            wa.SessioneHome = 0;
            wa.SessioneNow  = 0;

            //Variabili
            wa.ReadOnly            = true;
            wa.ReadOnlyOLD         = true;
            wa.ApertoInSolaLettura = true;

            //passaggio dati
            wa.IDTree     = "28";
            wa.IDSessione = selectedSession;
            wa.IDCliente  = _IDCliente;

            wa.Stato        = App.TipoTreeNodeStato.Sconosciuto;
            wa.OldStatoNodo = wa.Stato;

            //apertura
            wa.Load();

            App.MessaggioSolaScrittura      = "Carta in sola lettura, premere tasto ESCI";
            App.MessaggioSolaScritturaStato = "Carta in sola lettura, premere tasto ESCI";

            wa.ShowDialog();

            App.MessaggioSolaScrittura      = "Occorre selezionare Sblocca Stato per modificare il contenuto.";
            App.MessaggioSolaScritturaStato = "Sessione in sola lettura, impossibile modificare lo stato.";

            base.Close();
        }
Beispiel #8
0
        public void SetBackUpFile(string nomefileBackUp)
        {
#if (!DBG_TEST)
            SetBackUpFile_old(nomefileBackUp); return;
#endif
            try
            {
                FileInfo      buf         = new FileInfo(nomefileBackUp);
                string        cartellatmp = App.TMP_FOLDER + Guid.NewGuid().ToString();
                DirectoryInfo di          = new DirectoryInfo(cartellatmp);
                if (di.Exists)
                {
                    // errore directory già esistente aspettare processo terminato da parte
                    // di altro utente
                    return;
                }
                di.Create();
                // nuove cartelle per i file necessari
                DirectoryInfo d_rdf = new DirectoryInfo(cartellatmp + "\\" + App.DataFolder);      // ex "\\RDF"
                d_rdf.Create();
                DirectoryInfo d_uuff = new DirectoryInfo(cartellatmp + "\\" + App.UserFileFolder); // ex "\\UserUF"
                d_uuff.Create();
                //----------------------------------------------------------------------------+
                //                            lettura master file                             |
                //----------------------------------------------------------------------------+
                MasterFile  mf    = new MasterFile();
                XmlDocument mfDoc = mf.GetDocument();
                if (mfDoc == null)
                {
                    return;
                }
                //----------------------------------------------------------------------------+
                //   scansione di tutti i nodi contenenti "FileData" e quindi anche "File"    |
                //----------------------------------------------------------------------------+
                string      fName;
                XmlManager  manager = new XmlManager();
                XmlDocument doc;
                string[]    attrs = { "File", "FileData" };
                foreach (XmlNode node in mfDoc.SelectNodes("//*[@FileData]"))
                {
                    foreach (string s in attrs)
                    {
                        // salvataggio albero se esiste
                        if (node.Attributes[s] != null)
                        {
                            fName = node.Attributes[s].Value;
                            doc   = manager.LoadEncodedFile(fName);
                            if (doc != null)
                            {
                                manager.SaveEncodedFile_old(
                                    cartellatmp + @"\" + App.DataFolder + @"\" + fName, doc.OuterXml);
                            }
                        }
                    }
                }
                //----------------------------------------------------------------------------+
                //                         copia di tutti i documenti                         |
                //----------------------------------------------------------------------------+
                foreach (string dir in Directory.GetDirectories(App.AppDocumentiFolder,
                                                                "*", SearchOption.AllDirectories))
                {
                    Directory.CreateDirectory(dir.Replace(App.AppDocumentiFolder, d_uuff.FullName));
                }
                foreach (string item in Directory.GetFiles(App.AppDocumentiFolder,
                                                           "*.*", SearchOption.AllDirectories))
                {
                    File.Copy(item, item.Replace(App.AppDocumentiFolder, d_uuff.FullName), true);
                }
                //----------------------------------------------------------------------------+
                //                           scrittura master file                            |
                //----------------------------------------------------------------------------+
                manager.SaveEncodedFile_old(
                    cartellatmp + @"\" + App.AppMasterDataFile.Split('\\').Last(), mfDoc.OuterXml);
                //----------------------------------------------------------------------------+
                //                          scrittura file documenti                          |
                //----------------------------------------------------------------------------+
                fName = "revisoftapp.rdocf";
                doc   = manager.LoadEncodedFile(fName);
                if (doc != null)
                {
                    manager.SaveEncodedFile_old(cartellatmp + @"\" + fName, doc.OuterXml);
                }

                //creo lo zip
                Ionic.Zip.ZipFile zip = new Ionic.Zip.ZipFile();
                zip.Password = App.ZipFilePassword;
                zip.AddDirectory(di.FullName);
                zip.MaxOutputSegmentSize = MaxOutputSegmentSize;
                zip.Save(nomefileBackUp);
                // cancello i dati temporanei
                di.Delete(true);
            }
            catch (Exception ex)
            {
                string log = ex.ToString();
                System.IO.File.WriteAllText(
                    System.IO.Path.Combine(App.AppLogFolder,
                                           String.Format("{0:yyyyMMddHHmmss}_bklog.txt", DateTime.Now)), log);
                Error(WindowGestioneMessaggi.TipologieMessaggiErrore.ErroreInSalvataggioFileMaster);
            }
        }
Beispiel #9
0
        private void LoadDataSource()
        {
            _x = new XmlDataProviderManager(SelectedDataSource);

            RevisoftApplication.XmlManager x = new XmlManager();
            x.TipoCodifica = RevisoftApplication.XmlManager.TipologiaCodifica.Normale;

            XmlDocument tmpDoc = x.LoadEncodedFile(SelectedDataSource);

            Utilities u = new Utilities();

            if (!u.CheckXmlDocument(tmpDoc, App.TipoFile.Formulario, "Data"))
            {
                this.Close();
                return;
            }

            foreach (XmlNode node in tmpDoc.SelectNodes("/Dati//Dato"))
            {
                XmlNode nodeTree = TreeXmlProvider.Document.SelectSingleNode("/Tree//Node[@ID=" + node.Attributes["ID"].Value + "]");

                if (nodeTree != null)
                {
                    string estensione = "";
                    string file       = "";
                    string image      = ".\\Images\\icone\\Stato\\nothing.png";

                    try
                    {
                        estensione = node.SelectSingleNode("Valore").Attributes["NomeFile"].Value.Split('.').Last();
                        file       = node.SelectSingleNode("Valore").Attributes["NomeFile"].Value.Replace("ruf\\", "");
                        string pathfile = App.AppFormularioFolder + "\\" + file;
                        if (!(new FileInfo(pathfile)).Exists)
                        {
                            estensione = "";
                            file       = "";
                        }
                    }
                    catch (Exception ex)
                    {
                        cBusinessObjects.logger.Error(ex, "wFormulario.LoadDataSource exception");
                        string log = ex.Message;
                    }

                    switch (estensione)
                    {
                    case "doc":
                    case "docx":
                        image = ".\\Images\\icone\\Documenti\\word.png";
                        break;

                    case "pdf":
                        image = ".\\Images\\icone\\Documenti\\pdf.png";
                        break;

                    case "xls":
                    case "xlsx":
                        image = ".\\Images\\icone\\Documenti\\excel.png";
                        break;

                    case "zip":
                        image = ".\\Images\\icone\\Documenti\\zip.png";
                        break;

                    default:
                        image = ".\\Images\\icone\\Documenti\\nothing.png";
                        break;
                    }

                    try
                    {
                        nodeTree.Attributes["TipoDocumento"].Value = image;
                    }
                    catch (Exception ex)
                    {
                        cBusinessObjects.logger.Error(ex, "wFormulario.CreateAttributeTipoDocumento exception");
                        string       log  = ex.Message;
                        XmlAttribute attr = nodeTree.OwnerDocument.CreateAttribute("TipoDocumento");
                        attr.Value = image;
                        nodeTree.Attributes.Append(attr);
                    }

                    try
                    {
                        nodeTree.Attributes["NomeFile"].Value = file;
                    }
                    catch (Exception ex)
                    {
                        cBusinessObjects.logger.Error(ex, "wFormulario.CreateAttributeNomeFile exception");
                        string       log  = ex.Message;
                        XmlAttribute attr = nodeTree.OwnerDocument.CreateAttribute("NomeFile");
                        attr.Value = file;
                        nodeTree.Attributes.Append(attr);
                    }
                }
            }
        }
        //----------------------------------------------------------------------------+
        //                               LoadTreeSource                               |
        //----------------------------------------------------------------------------+

        public void LoadTreeSource()
        {
            if (Data == "")
            {
                Data = DateTime.Now.ToShortDateString();
            }
            ArrayList pianificatehere = new ArrayList();

            txtData.Text = Data;
            RevisoftApplication.XmlManager x = new XmlManager();
            x.TipoCodifica = RevisoftApplication.XmlManager.TipologiaCodifica.Normale;
            MasterFile mf    = MasterFile.Create();
            ArrayList  files = new ArrayList();

            switch (TipoAttivita)
            {
            case App.TipoAttivita.Incarico:
                SelectedTreeSource = App.AppTemplateTreeIncarico;
                files = mf.GetIncarichi(IDCliente);
                break;

            case App.TipoAttivita.ISQC:
                SelectedTreeSource = App.AppTemplateTreeISQC;
                files = mf.GetISQCs(IDCliente);
                break;

            case App.TipoAttivita.Revisione:
                SelectedTreeSource = App.AppTemplateTreeRevisione;
                files = mf.GetRevisioni(IDCliente);
                break;

            case App.TipoAttivita.Bilancio:
                SelectedTreeSource = App.AppTemplateTreeBilancio;
                files = mf.GetBilanci(IDCliente);
                break;

            case App.TipoAttivita.Conclusione:
                SelectedTreeSource = App.AppTemplateTreeConclusione;
                files = mf.GetConclusioni(IDCliente);
                break;

            case App.TipoAttivita.Verifica:
                files = mf.GetVerifiche(IDCliente);
                SelectedTreeSource = App.AppTemplateTreeVerifica;
                ArrayList al = mf.GetPianificazioniVerifiche(IDCliente);
                foreach (Hashtable itemHT in al)
                {
                    ALXTPP.Add(itemHT["ID"].ToString());
                }
                break;

            case App.TipoAttivita.Vigilanza:
                files = mf.GetVigilanze(IDCliente);
                SelectedTreeSource = App.AppTemplateTreeVigilanza;
                ArrayList al2 = mf.GetPianificazioniVigilanze(IDCliente);
                foreach (Hashtable itemHT in al2)
                {
                    ALXTPP.Add(itemHT["ID"].ToString());
                }
                break;

            default:
                return;
            }
            if (files.Count > 0)
            {
                string   maxID = "0", id;
                DateTime lastdate = Convert.ToDateTime("01/01/1900");
                string   tobeused = "";
                foreach (Hashtable itemHT in files)
                {
                    if (itemHT.Contains("ID"))
                    {
                        id = itemHT["ID"].ToString();
                        if (Convert.ToInt32(id) > Convert.ToInt32(maxID))
                        {
                            maxID = id; tobeused = itemHT["File"].ToString();
                        }
                    }
                }
                _xTXP = new XmlDataProviderManager(tobeused);
                TreeXmlProvider.Document = x.LoadEncodedFile(tobeused);
            }
            else
            {
                _xTXP = new XmlDataProviderManager(SelectedTreeSource);
                TreeXmlProvider.Document = x.LoadEncodedFile(SelectedTreeSource);
            }
            if (firsttime)
            {
                firsttime = false;
                foreach (XmlNode item in _xTXP.Document.SelectNodes("//Node"))
                {
                    if (item.Attributes["WidthNota"] == null)
                    {
                        XmlAttribute attr = _xTXP.Document.CreateAttribute("WidthNota");
                        item.Attributes.Append(attr);
                    }
                    if (item.SelectNodes("Node").Count > 0)
                    {
                        item.Attributes["WidthNota"].Value = "0";
                    }
                    else
                    {
                        item.Attributes["WidthNota"].Value = "Auto";
                    }
                    if (item.Attributes["Checked"] == null)
                    {
                        XmlAttribute attr = _xTXP.Document.CreateAttribute("Checked");
                        item.Attributes.Append(attr);
                        item.Attributes["Checked"].Value = "False";
                    }
                    if (item.Attributes["NotaTDL"] == null)
                    {
                        XmlAttribute attr = _xTXP.Document.CreateAttribute("NotaTDL");
                        item.Attributes.Append(attr);
                        item.Attributes["NotaTDL"].Value = "";
                    }
                    item.Attributes["Expanded"].Value = "True";
                    item.Attributes["Selected"].Value = "False";
                    if (item.Attributes["Pianificato"] == null)
                    {
                        XmlAttribute attr = item.OwnerDocument.CreateAttribute("Pianificato");
                        attr.Value = "";
                        item.Attributes.Append(attr);
                    }
                    DataTable pianificazione        = null;
                    DataTable pianificazioneTestata = null;
                    foreach (string ALitemXTPP in ALXTPP)
                    {
                        bool   donehere = false;
                        string IDPHERE  = "";
                        string datac    = "";

                        if (TipoAttivita == App.TipoAttivita.Verifica)
                        {
                            IDPHERE = "100013";
                            pianificazioneTestata = cBusinessObjects.GetData(int.Parse(IDPHERE), typeof(PianificazioneVerificheTestata), int.Parse(IDCliente), int.Parse(ALitemXTPP), 26);
                            pianificazione        = cBusinessObjects.GetData(int.Parse(IDPHERE), typeof(PianificazioneVerifiche), int.Parse(IDCliente), int.Parse(ALitemXTPP), 26);
                        }
                        else
                        {
                            IDPHERE = "100003";
                            pianificazioneTestata = cBusinessObjects.GetData(int.Parse(IDPHERE), typeof(PianificazioneVerificheTestata), int.Parse(IDCliente), int.Parse(ALitemXTPP), 27);

                            pianificazione = cBusinessObjects.GetData(int.Parse(IDPHERE), typeof(PianificazioneVerifiche), int.Parse(IDCliente), int.Parse(ALitemXTPP), 27);
                        }
                        foreach (DataRow itemXPP in pianificazione.Rows)
                        {
                            if (itemXPP["NODE_ID"].ToString() != item.Attributes["ID"].Value)
                            {
                                continue;
                            }
                            foreach (DataRow dd in pianificazioneTestata.Rows)
                            {
                                if (dd["ID"].ToString() == itemXPP["PianificazioneID"].ToString())
                                {
                                    datac = dd["Data"].ToString();
                                }
                            }
                            if (datac != Data)
                            {
                                continue;
                            }
                            if (itemXPP["Checked"].ToString() == "True")
                            {
                                item.Attributes["Pianificato"].Value = "P";
                                item.Attributes["Checked"].Value     = "True";
                                StaticUtilities.MarkNodeAsModified(item, App.OBJ_MOD); _isModified = true;
                                pianificatehere.Add(item.Attributes["ID"].Value);
                                break;
                            }
                        }
                        if (donehere)
                        {
                            break;
                        }
                    }
                }
                _xTXP.Save();

                foreach (XmlNode item in TreeXmlProvider.Document.SelectNodes("//Node"))
                {
                    if (item.Attributes["NotaTDL"] == null)
                    {
                        XmlAttribute attr = TreeXmlProvider.Document.CreateAttribute("NotaTDL");
                        item.Attributes.Append(attr);
                        item.Attributes["NotaTDL"].Value = "";
                    }
                    if (item.Attributes["Checked"] == null)
                    {
                        XmlAttribute attr = TreeXmlProvider.Document.CreateAttribute("Checked");
                        item.Attributes.Append(attr);
                        item.Attributes["Checked"].Value = "False";
                    }
                    if (item.Attributes["Pianificato"] == null)
                    {
                        XmlAttribute attr = TreeXmlProvider.Document.CreateAttribute("Pianificato");
                        item.Attributes.Append(attr);
                        item.Attributes["Pianificato"].Value = "";
                    }
                    if (pianificatehere.Contains(item.Attributes["ID"].Value))
                    {
                        item.Attributes["Pianificato"].Value = "P";
                    }
                    if (item.Attributes["WidthNota"] == null)
                    {
                        XmlAttribute attr = TreeXmlProvider.Document.CreateAttribute("WidthNota");
                        item.Attributes.Append(attr);
                    }
                    if (item.SelectNodes("Node").Count > 0)
                    {
                        item.Attributes["WidthNota"].Value = "0";
                    }
                    else
                    {
                        item.Attributes["WidthNota"].Value = "Auto";
                    }
                    if (item.Attributes["Pianificato"].Value == "P")
                    {
                        item.Attributes["Checked"].Value = "True";
                        //item.Attributes["NotaTDL"].Value = "";
                    }
                    StaticUtilities.MarkNodeAsModified(item, App.OBJ_MOD); _isModified = true;
                }
            }
            Utilities u = new Utilities();

            labelAttivita.Content = u.TitoloAttivita(_TipoAttivita);
            TreeXmlProvider.Refresh();
            LoadDataSource();
        }