Beispiel #1
0
        private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
        {
            switch (InputParameters["Action"].ToString().ToLower())
            {
            case "addnew":
                // In inserimento creo uno storage vuoto
                //(DocumentArchive)e.Argument = new DocumentArchive();
                storageAreaRule = new StorageAreaRule();
                if (InputParameters["IdArchive"].ToString() != String.Empty)
                {
                    attributes = Client.GetAttributesFromArchive((Guid)InputParameters["IdArchive"]);
                }

                break;

            case "modify":
                // Se sto modificando carico i dati da modificare
                storageAreaRule = Client.GetStorageAreaRule((Guid)InputParameters["IdStorageArea"], (Guid)InputParameters["IdAttribute"]);
                attributes      = Client.GetAttributesFromArchive((Guid)InputParameters["IdArchive"]);
                break;
            }

            archives = Client.GetArchivesFromStorage((Guid)InputParameters["IdStorage"]);

            if (InputParameters["IdArchive"].ToString() == String.Empty && archives.Count() > 0)
            {
                attributes = Client.GetAttributesFromArchive(archives[0].IdArchive);
            }
            ruleOperators = Client.GetRuleOperators();

            storageArea = Client.GetStorageArea((Guid)InputParameters["IdStorageArea"]);
        }
Beispiel #2
0
        /// <summary>
        /// Sincronizza i valori dei campi del Controllo con i valori della classe dell'oggetto del DB
        /// In caso di passaggio dati verso il database ( false ) restituisce false se i campi obbligatori non sono valorizzati
        /// </summary>
        /// <param name="storage">classe oggetto del db</param>
        /// <param name="fromStorage">true o false per la direzione del sincronismo dati</param>
        /// <returns>bool</returns>
        private bool SyncroMemoryDB(StorageAreaRule storageAreaRule, Boolean fromStorage)
        {
            Boolean campiRequiredPopolati = false;

            if (fromStorage)
            {
                // Popolo i controlli dai valori ottenuti dalla classe dell'oggetto DB
                if (storageAreaRule.Attribute != null)
                {
                    cbArchive.SelectedValue   = storageAreaRule.Attribute.Archive.IdArchive;
                    cbAttribute.SelectedValue = storageAreaRule.Attribute.IdAttribute;
                }
                txtOrder.Text  = Convert.ToString(storageAreaRule.RuleOrder);
                txtFilter.Text = storageAreaRule.RuleFilter;
                txtFormat.Text = storageAreaRule.RuleFormat;
                cbRuleOperators.SelectedItem = storageAreaRule.RuleOperator;
                ckCalculated.Checked         = storageAreaRule.IsCalculated.GetValueOrDefault();
                campiRequiredPopolati        = true;
            }
            else
            {
                // Qui controllo che i campi obbligatori siano valorizzati
                if (String.IsNullOrEmpty(txtFilter.Text) || String.IsNullOrEmpty(txtOrder.Text) || cbAttribute.SelectedValue == null)
                {
                    campiRequiredPopolati = false;
                }
                else
                {
                    // Popolo la classe dell'oggetto DB col valore dei controlli
                    storageAreaRule.StorageArea  = storageArea;
                    storageAreaRule.Attribute    = (BiblosDs.Document.AdminCentral.ServiceReferenceAdministration.Attribute)cbAttribute.SelectedItem;
                    storageAreaRule.RuleOrder    = (short)txtOrder.Value;
                    storageAreaRule.RuleFilter   = txtFilter.Text;
                    storageAreaRule.RuleFormat   = txtFormat.Text;
                    storageAreaRule.RuleOperator = (RuleOperator)cbRuleOperators.SelectedItem;
                    storageAreaRule.IsCalculated = ckCalculated.Checked;
                    campiRequiredPopolati        = true;
                }
            }

            return(campiRequiredPopolati);
        }