private bool SendQuerySubmit(ICodelistMutableObject cl) { try { ISdmxObjects sdmxObjects = new SdmxObjectsImpl(); int indexOrder = 1; foreach (ICodeMutableObject code in cl.Items) { IEnumerable<IAnnotationMutableObject> annotations = (from a in code.Annotations where a.Type == "@ORDER@" select a).OfType<IAnnotationMutableObject>(); if (annotations.Count() > 0) { IAnnotationMutableObject annotation = annotations.First(); ITextTypeWrapperMutableObject iText = new TextTypeWrapperMutableCore(); iText.Value = (indexOrder++).ToString(); iText.Locale = "en"; annotation.Text.Clear(); annotation.Text.Add(iText); } else { code.AddAnnotation(GetAnnotationOrder(indexOrder++)); } lblCodeListDetail.Text = code.Names[0].Value ; } sdmxObjects.AddCodelist(cl.ImmutableInstance); WSModel modelCodeList = new WSModel(); XmlDocument result = modelCodeList.SubmitStructure(sdmxObjects); Utils.GetXMLResponseError(result); return true; } catch (Exception ex) { return false; } }
protected void btnDelete_Click(object sender, EventArgs e) { /* * 1. Faccio il retrieve dell'artefact da eliminare * 2. Ottengo un SDMXObjects * 3. Trasformo l'SDMXObjects in un oggetto xml * 4. Carico il template * 5. Cerco il tag "structures" nell'sdmxobjects che contiene l'artefatto da eliminare * 6. Inserisco il contenuto dello structure nel template * 7. Richiamo il metodo submitstructure per effettuare l'eliminazione * 8. Controllo il successo dell'eliminazione e rifaccio il DataBind() */ WSModel wsModel = new WSModel(); WSUtils wsUtils = new WSUtils(); ISdmxObjects sdmxObjects; XmlDocument xDocStructure; XmlDocument xDocTemplate; XmlDocument xDocResponse; try { //sdmxObjects = wsModel.GetCodeList(new ArtefactIdentity(ucID, ucAgency, ucVersion), true); sdmxObjects = GetSdmxObjects(); xDocStructure = wsUtils.GetXMLDocFromSdmxObjects(sdmxObjects, StructureOutputFormatEnumType.SdmxV21StructureDocument); //Carico il template xDocTemplate = new XmlDocument(); xDocTemplate.Load(Server.MapPath(@".\SdmxQueryTemplate\SubmitStructureDelete.xml")); // Il nodo root "Structure" del template XmlNode xTempStructNode = xDocTemplate.SelectSingleNode("//*[local-name()='Structures']"); // Aggiungo al template lo structure da eliminare xTempStructNode.InnerXml = xDocStructure.SelectSingleNode("//*[local-name()='Structures']").InnerXml; // Richiamo il SubmitStructure per effettuare la Delete xDocResponse = wsModel.SubmitStructure(xDocTemplate); string CheckError = Utils.GetXMLResponseError(xDocResponse); if (CheckError != String.Empty) { //Utils.ShowDialog(CheckError); Utils.ShowDialog( Resources.Messages.err_artefact_is_a_reference ); Utils.ForceBlackClosing(); return; } //Utils.ExecuteScript(Parent.Page, "location.reload();"); Utils.ReloadPage(); //ScriptManager.RegisterStartupScript(this, typeof(Page), UniqueID, "closePopup();", true); } catch (Exception ex) { Utils.AppendScript("closePopup();"); Utils.ShowDialog("An error occurred: " + ex.Message); } }
/// <summary> /// Salva il DataFlow nel registry /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnSaveSS_Click(object sender, EventArgs e) { if (!ValidateSSData()) return; try { _ssMutable.Id = txtSSID.Text; _ssMutable.AgencyId = GetAgencyValue(); _ssMutable.Version = txtVersion.Text; _ssMutable.Names.Clear(); foreach (ITextTypeWrapperMutableObject name in AddTextName.TextObjectList) { _ssMutable.Names.Add(name); } _ssMutable.Descriptions.Clear(); if (AddTextDescription.TextObjectList != null) { foreach (ITextTypeWrapperMutableObject descr in AddTextDescription.TextObjectList) { _ssMutable.Descriptions.Add(descr); } } _ssMutable.FinalStructure = TertiaryBool.ParseBoolean(chkIsFinal.Checked); if (txtURI.Text != String.Empty) _ssMutable.Uri = new Uri(txtURI.Text); if (txtValidFrom.Text != String.Empty) _ssMutable.StartDate = DateTime.ParseExact(txtValidFrom.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture); if (txtValidTo.Text != String.Empty) _ssMutable.EndDate = DateTime.ParseExact(txtValidTo.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture); _ssMutable.Annotations.Clear(); if (AnnotationGeneral.AnnotationObjectList != null) foreach (var annotation in AnnotationGeneral.AnnotationObjectList) { _ssMutable.AddAnnotation(annotation); } //string[] DSDValues = txtDSD.Text.Split(','); //IStructureReference dsdRef = new StructureReferenceImpl(DSDValues[1], //DSDValues[0], DSDValues[2], //SdmxStructureType.GetFromEnum(SdmxStructureEnumType.Dsd), //new string[] { _ntdString }); //_ssMutable.DataStructureRef = dsdRef; SetSSToSession(); WSModel wsModel = new WSModel(); XmlDocument xRet = wsModel.SubmitStructure(_sdmxObjects); string err = Utils.GetXMLResponseError(xRet); if (err != "") { Utils.ShowDialog(err); return; } Session[_snInsSS] = null; Session[_snSdmxObjects] = null; //Utils.ShowDialog("Operation succesfully"); Utils.ResetBeforeUnload(); Utils.AppendScript("location.href='./StructureSet.aspx';"); } catch (Exception ex) { Utils.ShowDialog(ex.Message); } }
private bool SendQuerySubmit(IOrganisationUnitSchemeMutableObject ous) { try { ISdmxObjects sdmxObjects = new SdmxObjectsImpl(); sdmxObjects.AddOrganisationUnitScheme(ous.ImmutableInstance); WSModel modelOrganizationUnitScheme = new WSModel(); XmlDocument result = modelOrganizationUnitScheme.SubmitStructure(sdmxObjects); Utils.GetXMLResponseError(result); return true; } catch (Exception ex) { return false; } }
/// <summary> /// Salva il DataFlow nel registry /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnSaveDF_Click(object sender, EventArgs e) { /* * 1. Aggiungo all'oggetto _dfMutable: * Le info della General * La collection di Names * La Collecction delle Desctiptions * 2. Richiamo il metodo che prende in input un ISdmxObjects che richiama il SaveStructure * 3. Visualizzo un messaggio di conferma,resetto le Session e faccio un redirect alla lista delle DF */ if (!ValidateDFData()) return; try { _dfMutable.Id = txtDFID.Text; _dfMutable.AgencyId = GetAgencyValue(); _dfMutable.Version = txtVersion.Text; _dfMutable.Names.Clear(); foreach (ITextTypeWrapperMutableObject name in AddTextName.TextObjectList) { _dfMutable.Names.Add(name); } _dfMutable.Descriptions.Clear(); if (AddTextDescription.TextObjectList != null) { foreach (ITextTypeWrapperMutableObject descr in AddTextDescription.TextObjectList) { _dfMutable.Descriptions.Add(descr); } } _dfMutable.FinalStructure = TertiaryBool.ParseBoolean(chkIsFinal.Checked); if (txtURI.Text != String.Empty) _dfMutable.Uri = new Uri(txtURI.Text); if (txtValidFrom.Text != String.Empty) _dfMutable.StartDate = DateTime.ParseExact(txtValidFrom.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture); if (txtValidTo.Text != String.Empty) _dfMutable.EndDate = DateTime.ParseExact(txtValidTo.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture); _dfMutable.Annotations.Clear(); if (AnnotationGeneral.AnnotationObjectList != null) foreach (var annotation in AnnotationGeneral.AnnotationObjectList) { _dfMutable.AddAnnotation(annotation); } string[] DSDValues = txtDSD.Text.Split(','); IStructureReference dsdRef = new StructureReferenceImpl(DSDValues[1], DSDValues[0], DSDValues[2], SdmxStructureType.GetFromEnum(SdmxStructureEnumType.Dsd), new string[] { _ntdString }); _dfMutable.DataStructureRef = dsdRef; SetDfToSession(); WSModel wsModel = new WSModel(); XmlDocument xRet = wsModel.SubmitStructure(_sdmxObjects); string err = Utils.GetXMLResponseError(xRet); if (err != "") { Utils.ShowDialog(err); return; } //Session[_snInsDf] = null; //Session[_snSdmxObjects] = null; //Utils.ShowDialog("Operation succesfully"); Utils.ResetBeforeUnload(); Utils.AppendScript("location.href='./DataFlow.aspx';"); } catch (Exception ex) { Utils.ShowDialog(ex.Message); } }
/// <summary> /// Salva la DSD nel registry /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnSaveDSD_Click(object sender, EventArgs e) { /* * 1. Aggiungo all'oggetto _dsdMutable: * Le info della General * La collection di Names * La Collecction delle Descriptions * La Primary Measure * Le Dimension sono presenti nell'oggetto _dsdMutable * I Gruppi sono presenti nell'oggetto _dsdMutable * Gli Attributes sono presenti nell'oggetto _dsdMutable * 2. Richiamo il metodo che prende in input un ISdmxObjects che richiama il SaveStructure * 3. Visualizzo un messaggio di conferma,resetto le Session e faccio un redirect alla lista delle DSD */ if (!ValidateDSDData()) return; try { _dsdMutable.Id = txtDSDID.Text; _dsdMutable.AgencyId = cmbAgencies.SelectedValue; _dsdMutable.Version = txtVersion.Text; _dsdMutable.Names.Clear(); foreach (ITextTypeWrapperMutableObject name in AddTextName.TextObjectList) { _dsdMutable.Names.Add(name); } _dsdMutable.Descriptions.Clear(); if (AddTextDescription.TextObjectList != null) { foreach (ITextTypeWrapperMutableObject descr in AddTextDescription.TextObjectList) { _dsdMutable.Descriptions.Add(descr); } } _dsdMutable.FinalStructure = TertiaryBool.ParseBoolean(chkIsFinal.Checked); if (txtDSDURI.Text != String.Empty) _dsdMutable.Uri = new Uri(txtDSDURI.Text); if (txtValidFrom.Text != String.Empty) _dsdMutable.StartDate = DateTime.ParseExact(txtValidFrom.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture); if (txtValidTo.Text != String.Empty) _dsdMutable.EndDate = DateTime.ParseExact(txtValidTo.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture); // PM string[] pmValues = txtConcept.Text.Substring(0, txtConcept.Text.IndexOf(" ")).Split(','); string pmConcept = txtConcept.Text.Substring(txtConcept.Text.LastIndexOf(" ") + 1); _dsdMutable.AddPrimaryMeasure(new StructureReferenceImpl(pmValues[1], pmValues[0], pmValues[2], SdmxStructureEnumType.Concept, pmConcept)); if (txtCodelist.Text != "") { string[] pmCLValues = txtCodelist.Text.Split(','); IRepresentationMutableObject rep = new RepresentationMutableCore(); rep.Representation = new StructureReferenceImpl(pmCLValues[1], pmCLValues[0], pmCLValues[2], SdmxStructureEnumType.CodeList, null); _dsdMutable.PrimaryMeasure.Representation = rep; } _dsdMutable.Annotations.Clear(); if (AnnotationGeneral.AnnotationObjectList != null) foreach (var annotation in AnnotationGeneral.AnnotationObjectList) { _dsdMutable.AddAnnotation(annotation); } _dsdMutable.PrimaryMeasure.Annotations.Clear(); if (AnnotationPrimaryMeasure.AnnotationObjectList != null) foreach (var annotation in AnnotationPrimaryMeasure.AnnotationObjectList) { _dsdMutable.PrimaryMeasure.AddAnnotation(annotation); } SetDsdToSession(); WSModel wsModel = new WSModel(); XmlDocument xRet = wsModel.SubmitStructure(_sdmxObjects); string err = Utils.GetXMLResponseError(xRet); if (err != "") { Utils.ShowDialog(err); return; } Session[_snInsDSD] = null; Session[_snSdmxObjects] = null; //Utils.ShowDialog("Operation succesfully"); Utils.ResetBeforeUnload(); //Utils.ShowDialog(successMessage, 300); Utils.AppendScript("location.href='./KeyFamily.aspx';"); } catch (Exception ex) { Utils.ShowDialog(ex.Message); } }
private bool SendQuerySubmit(IDataConsumerSchemeMutableObject dataConsumerScheme) { try { ISdmxObjects sdmxObjects = new SdmxObjectsImpl(); sdmxObjects.AddDataConsumerScheme(dataConsumerScheme.ImmutableInstance); WSModel modelDataConsumerScheme = new WSModel(); XmlDocument result = modelDataConsumerScheme.SubmitStructure(sdmxObjects); Utils.GetXMLResponseError(result); return true; } catch (Exception ex) { return false; } }
/// <summary> /// Salva la HCL nel Registry /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnSaveHcl_Click(object sender, EventArgs e) { if (!ValidateHclData()) return; try { _hclMutable.Id = txtHclID.Text; _hclMutable.AgencyId = cmbAgencies.SelectedValue; _hclMutable.Version = txtVersion.Text; _hclMutable.Names.Clear(); foreach (ITextTypeWrapperMutableObject name in AddTextName.TextObjectList) { _hclMutable.Names.Add(name); } _hclMutable.Descriptions.Clear(); if (AddTextDescription.TextObjectList != null) { foreach (ITextTypeWrapperMutableObject descr in AddTextDescription.TextObjectList) { _hclMutable.Descriptions.Add(descr); } } _hclMutable.FinalStructure = TertiaryBool.ParseBoolean(chkIsFinal.Checked); if (txtURI.Text != String.Empty) _hclMutable.Uri = new Uri(txtURI.Text); if (txtValidFrom.Text != String.Empty) _hclMutable.StartDate = DateTime.ParseExact(txtValidFrom.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture); if (txtValidTo.Text != String.Empty) _hclMutable.EndDate = DateTime.ParseExact(txtValidTo.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture); _hclMutable.Annotations.Clear(); if (AnnotationGeneral.AnnotationObjectList != null) foreach (var annotation in AnnotationGeneral.AnnotationObjectList) { _hclMutable.AddAnnotation(annotation); } SetHclToSession(); WSModel wsModel = new WSModel(); XmlDocument xRet = wsModel.SubmitStructure(_sdmxObjects); string err = Utils.GetXMLResponseError(xRet); if (err != "") { Utils.ShowDialog(err); return; } Session[_snInsCC] = null; Session[_snSdmxObjects] = null; Utils.ResetBeforeUnload(); Utils.AppendScript("location.href='./Hcl.aspx';"); } catch (Exception ex) { Utils.ShowDialog(ex.Message); } }
private bool SendQuerySubmit(ICategorySchemeMutableObject cs) { try { ISdmxObjects sdmxObjects = new SdmxObjectsImpl(); for (int i = 0; i < cs.Annotations.Count; ) if (cs.Annotations[i].Type.Trim() == "CategoryScheme_node_order") cs.Annotations.RemoveAt(i); else i++; sdmxObjects.AddCategoryScheme(cs.ImmutableInstance); WSModel modelCategoryScheme = new WSModel(); XmlDocument result = modelCategoryScheme.SubmitStructure(sdmxObjects); if (Utils.GetXMLResponseError(result) != "") { Utils.ShowDialog(Utils.GetXMLResponseError(result), 350, "Error"); return false; } return true; } catch (Exception ex) { throw ex; } }
private bool SendQuerySubmit(ICategorisationMutableObject cat) { try { ISdmxObjects sdmxObjects = new SdmxObjectsImpl(); /* int indexOrder = 1; foreach (ICodeMutableObject code in cl.Items) { IEnumerable<IAnnotationMutableObject> annotations = (from a in code.Annotations where a.Type == "@ORDER@" select a).OfType<IAnnotationMutableObject>(); IAnnotationMutableObject annotation = (annotations.Count() > 0) ? annotations.First() : GetAnnotationOrder(indexOrder++); code.AddAnnotation(annotation); lblCodeListDetail.Text = code.Names[0].Value ; }*/ sdmxObjects.AddCategorisation(cat.ImmutableInstance); WSModel modelCategorization = new WSModel(); XmlDocument result = modelCategorization.SubmitStructure(sdmxObjects); if (Utils.GetXMLResponseError(result) != "") { Utils.ShowDialog(Utils.GetXMLResponseError(result), 350, "Error"); return false; } return true; } catch (Exception ex) { throw ex; } }
protected void btnConfirmImport_Click(object sender, EventArgs e) { bool oneRowIsOk = false; GridViewRowCollection rows = gridView.Rows; foreach (GridViewRow row in rows) { if (((CheckBox)row.Cells[4].Controls[1]).Checked) { oneRowIsOk = true; break; } } if (oneRowIsOk) { WSModel wsModel = new WSModel(); XmlDocument xDocStructure = new XmlDocument(); XmlDocument xDocMessage = new XmlDocument(); XmlDocument xRet; WSUtils utils = new WSUtils(); List<ImportedItem> myItems = Session[IMPORTED_ITEMS_STRING] as List<ImportedItem>; ISdmxObjects sdmxObjects = (ISdmxObjects)Session[IMPORTED_SDMX_OBJECT]; ISdmxObjects newSdmxObjects = new SdmxObjectsImpl(); List<ImportedItem> reportItems = new List<ImportedItem>(); string objectsSummary = string.Empty; foreach (GridViewRow row in gridView.Rows) { string currentId = ((Label)row.Cells[0].Controls[1]).Text; string currentAgency = ((Label)row.Cells[1].Controls[1]).Text; string currentVersion = ((Label)row.Cells[2].Controls[1]).Text; ImportedItem myCurrentItem = myItems.Find(item => item.ID.Equals(currentId) && item.Agency.Equals(currentAgency) && item.Version.Equals(currentVersion)); if (((CheckBox)row.Cells[4].Controls[1]).Checked) { switch (myCurrentItem._type) { case "CODELIST": ICodelistObject tmpCodeList = sdmxObjects.Codelists.First(codelist => codelist.Id.Equals(currentId) && codelist.AgencyId.Equals(currentAgency) && codelist.Version.Equals(currentVersion)); newSdmxObjects.AddCodelist(tmpCodeList); objectsSummary += string.Format(Resources.Messages.msg_codelist_imported, tmpCodeList.Id, tmpCodeList.AgencyId, tmpCodeList.Version); break; case "CONCEPT_SCHEME": IConceptSchemeObject tmpConceptScheme = sdmxObjects.ConceptSchemes.First(conceptScheme => conceptScheme.Id.Equals(currentId) && conceptScheme.AgencyId.Equals(currentAgency) && conceptScheme.Version.Equals(currentVersion)); newSdmxObjects.AddConceptScheme(tmpConceptScheme); objectsSummary += string.Format(Resources.Messages.msg_concept_scheme_imported, tmpConceptScheme.Id, tmpConceptScheme.AgencyId, tmpConceptScheme.Version); break; case "CATEGORY_SCHEME": ICategorySchemeObject tmpCategoryScheme = sdmxObjects.CategorySchemes.First(categoryScheme => categoryScheme.Id.Equals(currentId) && categoryScheme.AgencyId.Equals(currentAgency) && categoryScheme.Version.Equals(currentVersion)); newSdmxObjects.AddCategoryScheme(tmpCategoryScheme); objectsSummary += string.Format(Resources.Messages.msg_category_scheme_imported, tmpCategoryScheme.Id, tmpCategoryScheme.AgencyId, tmpCategoryScheme.Version); break; case "DSD": IDataStructureObject tmpDataStructure = sdmxObjects.DataStructures.First(dataStructure => dataStructure.Id.Equals(currentId) && dataStructure.AgencyId.Equals(currentAgency) && dataStructure.Version.Equals(currentVersion)); newSdmxObjects.AddDataStructure(tmpDataStructure); objectsSummary += string.Format(Resources.Messages.msg_data_structure_imported, tmpDataStructure.Id, tmpDataStructure.AgencyId, tmpDataStructure.Version); break; case "AGENCY_SCHEME": IAgencyScheme tmpAgencyScheme = sdmxObjects.AgenciesSchemes.First(agencyScheme => agencyScheme.Id.Equals(currentId) && agencyScheme.AgencyId.Equals(currentAgency) && agencyScheme.Version.Equals(currentVersion)); newSdmxObjects.AddAgencyScheme(tmpAgencyScheme); objectsSummary += string.Format(Resources.Messages.msg_agency_scheme_imported, tmpAgencyScheme.Id, tmpAgencyScheme.AgencyId, tmpAgencyScheme.Version); break; case "DATA_PROVIDER_SCHEME": IDataProviderScheme tmpDataProviderScheme = sdmxObjects.DataProviderSchemes.First(dataProviderScheme => dataProviderScheme.Id.Equals(currentId) && dataProviderScheme.AgencyId.Equals(currentAgency) && dataProviderScheme.Version.Equals(currentVersion)); newSdmxObjects.AddDataProviderScheme(tmpDataProviderScheme); objectsSummary += string.Format(Resources.Messages.msg_data_provider_scheme_imported, tmpDataProviderScheme.Id, tmpDataProviderScheme.AgencyId, tmpDataProviderScheme.Version); break; case "DATA_CONSUMER_SCHEME": IDataConsumerScheme tmpDataConsumerScheme = sdmxObjects.DataConsumerSchemes.First(dataConsumerScheme => dataConsumerScheme.Id.Equals(currentId) && dataConsumerScheme.AgencyId.Equals(currentAgency) && dataConsumerScheme.Version.Equals(currentVersion)); newSdmxObjects.AddDataConsumerScheme(tmpDataConsumerScheme); objectsSummary += string.Format(Resources.Messages.msg_data_consumer_scheme_imported, tmpDataConsumerScheme.Id, tmpDataConsumerScheme.AgencyId, tmpDataConsumerScheme.Version); break; case "ORGANIZATION_UNIT_SCHEME": IOrganisationUnitSchemeObject tmpOrganizationUnitScheme = sdmxObjects.OrganisationUnitSchemes.First(organizationUnitScheme => organizationUnitScheme.Id.Equals(currentId) && organizationUnitScheme.AgencyId.Equals(currentAgency) && organizationUnitScheme.Version.Equals(currentVersion)); newSdmxObjects.AddOrganisationUnitScheme(tmpOrganizationUnitScheme); objectsSummary += string.Format(Resources.Messages.msg_organization_unit_scheme_imported, tmpOrganizationUnitScheme.Id, tmpOrganizationUnitScheme.AgencyId, tmpOrganizationUnitScheme.Version); break; case "STRUCTURE_SET": IStructureSetObject tmpStructureSet = sdmxObjects.StructureSets.First(structureSet => structureSet.Id.Equals(currentId) && structureSet.AgencyId.Equals(currentAgency) && structureSet.Version.Equals(currentVersion)); newSdmxObjects.AddStructureSet(tmpStructureSet); objectsSummary += string.Format(Resources.Messages.msg_structure_set_imported, tmpStructureSet.Id, tmpStructureSet.AgencyId, tmpStructureSet.Version); break; case "CONTENT_CONSTRAINT": IContentConstraintObject tmpContentConstraint = sdmxObjects.ContentConstraintObjects.First(contentConstraint => contentConstraint.Id.Equals(currentId) && contentConstraint.AgencyId.Equals(currentAgency) && contentConstraint.Version.Equals(currentVersion)); newSdmxObjects.AddContentConstraintObject(tmpContentConstraint); objectsSummary += string.Format(Resources.Messages.msg_content_constraint_imported, tmpContentConstraint.Id, tmpContentConstraint.AgencyId, tmpContentConstraint.Version); break; case "HIERARCHICAL_CODELIST": IHierarchicalCodelistObject tmpHierarchicalCodelist = sdmxObjects.HierarchicalCodelists.First(hierarchicalCodelist => hierarchicalCodelist.Id.Equals(currentId) && hierarchicalCodelist.AgencyId.Equals(currentAgency) && hierarchicalCodelist.Version.Equals(currentVersion)); newSdmxObjects.AddHierarchicalCodelist(tmpHierarchicalCodelist); objectsSummary += string.Format(Resources.Messages.msg_hierarchical_codelist_imported, tmpHierarchicalCodelist.Id, tmpHierarchicalCodelist.AgencyId, tmpHierarchicalCodelist.Version); break; case "CATEGORISATION": ICategorisationObject tmpCategorisation = sdmxObjects.Categorisations.First(cat => cat.Id.Equals(currentId) && cat.AgencyId.Equals(currentAgency) && cat.Version.Equals(currentVersion)); newSdmxObjects.AddCategorisation(tmpCategorisation); objectsSummary += string.Format(Resources.Messages.msg_categorisation_imported, tmpCategorisation.Id, tmpCategorisation.AgencyId, tmpCategorisation.Version); break; } reportItems.Add(myCurrentItem); } } Session[REPORT_ITEMS] = reportItems; // Carico l'SDMXObject in un XML Message da passare al WS //xDocMessage = utils.GetXmlMessage(newSdmxObjects); newSdmxObjects = PopolateAnnotationID(newSdmxObjects); //Richiamo il metodo SubmitStructure per l'inserimento nel DB try { xRet = wsModel.SubmitStructure(newSdmxObjects); } catch (Exception ex) { Utils.ShowDialog(ex.Message); Utils.ForceBlackClosing(); return; } string CheckError = Utils.GetXMLResponseError(xRet); if (CheckError != String.Empty) { Utils.ShowDialog(CheckError); Utils.ForceBlackClosing(); return; } // lblInfo.Text = CreateArtefactImportedString(sdmxObjects); lblInfo.Text = objectsSummary; gridView.DataSource = null; gridView.DataBind(); } else { Utils.ShowDialog( Resources.Messages.err_at_least_one_row ); Utils.AppendScript("openPopUp('importedItemsGridDiv', 600);"); return; } Utils.AppendScript("openPopUp('dialog-form', 600);"); /*gridView.DataSource = myItems; gridView.DataBind();*/ }
private bool SendQuerySubmit(IConceptSchemeMutableObject cs) { try { ISdmxObjects sdmxObjects = new SdmxObjectsImpl(); sdmxObjects.AddConceptScheme(cs.ImmutableInstance); WSModel modelConceptScheme = new WSModel(); XmlDocument result = modelConceptScheme.SubmitStructure(sdmxObjects); if (Utils.GetXMLResponseError(result) != "") { Utils.ShowDialog(Utils.GetXMLResponseError(result), 350, "Error"); return false; } return true; } catch (Exception ex) { throw ex; } }
protected void btnDuplicate_Click(object sender, EventArgs e) { string Error = ValidateDSDData(); if (Error != String.Empty) { OpenDuplicatePopUp(); Utils.ShowDialog(Error, 300, Resources.Messages.err_duplicate_artefact); return; } if ( ucMaintanableArtefact.Id.ToString().Equals( txtDSDID.Text.Trim() ) && ucMaintanableArtefact.AgencyId.ToString().Equals( cmbAgencies.SelectedValue.ToString().Trim() ) && ucMaintanableArtefact.Version.ToString().Equals( txtVersion.Text.Trim() ) ) { OpenDuplicatePopUp(); Utils.ShowDialog( Resources.Messages.equal_global_identificators ); return; } ucMaintanableArtefact.Id = txtDSDID.Text; ucMaintanableArtefact.AgencyId = cmbAgencies.SelectedValue; ucMaintanableArtefact.Version = txtVersion.Text; ucMaintanableArtefact.FinalStructure = TertiaryBool.ParseBoolean(false); ISdmxObjects sdmxObjects = new SdmxObjectsImpl(); ISdmxObjects tmpSdmxObject = null; WSModel tmpWsModel = new WSModel(); bool itemAdded = false; switch (ucStructureType) { case SdmxStructureEnumType.AgencyScheme: sdmxObjects.AddAgencyScheme((Org.Sdmxsource.Sdmx.Api.Model.Objects.Base.IAgencyScheme)ucMaintanableArtefact.ImmutableInstance); break; case SdmxStructureEnumType.Categorisation: sdmxObjects.AddCategorisation((Org.Sdmxsource.Sdmx.Api.Model.Objects.CategoryScheme.ICategorisationObject)ucMaintanableArtefact.ImmutableInstance); break; case SdmxStructureEnumType.CategoryScheme: sdmxObjects.AddCategoryScheme((Org.Sdmxsource.Sdmx.Api.Model.Objects.CategoryScheme.ICategorySchemeObject)ucMaintanableArtefact.ImmutableInstance); break; case SdmxStructureEnumType.CodeList: try { tmpSdmxObject = tmpWsModel.GetCodeList(new ArtefactIdentity( txtDSDID.Text.Trim(), cmbAgencies.SelectedValue.ToString().Trim(),txtVersion.Text.Trim() ) , true ,false ); } catch (Exception ex) { if ( ex.Message.ToLower().Equals( "no results found" ) ) { sdmxObjects.AddCodelist((Org.Sdmxsource.Sdmx.Api.Model.Objects.Codelist.ICodelistObject)ucMaintanableArtefact.ImmutableInstance); itemAdded = true; } } if ( !itemAdded ) { Utils.ShowDialog( "Oggetto già presente nel database" ); return; } break; case SdmxStructureEnumType.ConceptScheme: try { tmpSdmxObject = tmpWsModel.GetConceptScheme(new ArtefactIdentity( txtDSDID.Text.Trim(), cmbAgencies.SelectedValue.ToString().Trim(),txtVersion.Text.Trim() ) , true ,false ); } catch (Exception ex) { if ( ex.Message.ToLower().Equals( "no results found" ) ) { sdmxObjects.AddConceptScheme((Org.Sdmxsource.Sdmx.Api.Model.Objects.ConceptScheme.IConceptSchemeObject)ucMaintanableArtefact.ImmutableInstance); itemAdded = true; } } if ( !itemAdded ) { Utils.ShowDialog( "Oggetto già presente nel database" ); return; } break; case SdmxStructureEnumType.ContentConstraint: try { tmpSdmxObject = tmpWsModel.GetContentConstraint(new ArtefactIdentity( txtDSDID.Text.Trim(), cmbAgencies.SelectedValue.ToString().Trim(),txtVersion.Text.Trim() ) , true ,false ); } catch (Exception ex) { if ( ex.Message.ToLower().Equals( "no results found" ) ) { sdmxObjects.AddContentConstraintObject((Org.Sdmxsource.Sdmx.Api.Model.Objects.Registry.IContentConstraintObject)ucMaintanableArtefact.ImmutableInstance); itemAdded = true; } } if ( !itemAdded ) { Utils.ShowDialog( "Oggetto già presente nel database" ); return; } break; case SdmxStructureEnumType.DataConsumerScheme: try { tmpSdmxObject = tmpWsModel.GetDataConsumerScheme(new ArtefactIdentity( txtDSDID.Text.Trim(), cmbAgencies.SelectedValue.ToString().Trim(),txtVersion.Text.Trim() ) , true ,false ); } catch (Exception ex) { if ( ex.Message.ToLower().Equals( "no results found" ) ) { sdmxObjects.AddDataConsumerScheme((Org.Sdmxsource.Sdmx.Api.Model.Objects.Base.IDataConsumerScheme)ucMaintanableArtefact.ImmutableInstance); itemAdded = true; } } if ( !itemAdded ) { Utils.ShowDialog( "Oggetto già presente nel database" ); return; } break; case SdmxStructureEnumType.DataProviderScheme: try { tmpSdmxObject = tmpWsModel.GetDataProviderScheme(new ArtefactIdentity( txtDSDID.Text.Trim(), cmbAgencies.SelectedValue.ToString().Trim(),txtVersion.Text.Trim() ) , true ,false ); } catch (Exception ex) { if ( ex.Message.ToLower().Equals( "no results found" ) ) { sdmxObjects.AddDataProviderScheme((Org.Sdmxsource.Sdmx.Api.Model.Objects.Base.IDataProviderScheme)ucMaintanableArtefact.ImmutableInstance); itemAdded = true; } } if ( !itemAdded ) { Utils.ShowDialog( "Oggetto già presente nel database" ); return; } break; case SdmxStructureEnumType.Dataflow: try { tmpSdmxObject = tmpWsModel.GetDataFlow(new ArtefactIdentity( txtDSDID.Text.Trim(), cmbAgencies.SelectedValue.ToString().Trim(),txtVersion.Text.Trim() ) , true ,false ); } catch (Exception ex) { if ( ex.Message.ToLower().Equals( "no results found" ) ) { sdmxObjects.AddDataflow((IDataflowObject)ucMaintanableArtefact.ImmutableInstance); itemAdded = true; } } if ( !itemAdded ) { Utils.ShowDialog( "Oggetto già presente nel database" ); return; } break; case SdmxStructureEnumType.Dsd: try { tmpSdmxObject = tmpWsModel.GetDataStructure(new ArtefactIdentity( txtDSDID.Text.Trim(), cmbAgencies.SelectedValue.ToString().Trim(),txtVersion.Text.Trim() ) , true ,false ); } catch (Exception ex) { if ( ex.Message.ToLower().Equals( "no results found" ) ) { sdmxObjects.AddDataStructure((IDataStructureObject)ucMaintanableArtefact.ImmutableInstance); itemAdded = true; } } if ( !itemAdded ) { Utils.ShowDialog( "Oggetto già presente nel database" ); return; } break; case SdmxStructureEnumType.HierarchicalCodelist: sdmxObjects.AddHierarchicalCodelist((Org.Sdmxsource.Sdmx.Api.Model.Objects.Codelist.IHierarchicalCodelistObject)ucMaintanableArtefact.ImmutableInstance); break; case SdmxStructureEnumType.OrganisationUnitScheme: try { tmpSdmxObject = tmpWsModel.GetOrganisationUnitScheme(new ArtefactIdentity( txtDSDID.Text.Trim(), cmbAgencies.SelectedValue.ToString().Trim(),txtVersion.Text.Trim() ) , true ,false ); } catch (Exception ex) { if ( ex.Message.ToLower().Equals( "no results found" ) ) { sdmxObjects.AddOrganisationUnitScheme((Org.Sdmxsource.Sdmx.Api.Model.Objects.Base.IOrganisationUnitSchemeObject)ucMaintanableArtefact.ImmutableInstance); itemAdded = true; } } if ( !itemAdded ) { Utils.ShowDialog( "Oggetto già presente nel database" ); return; } break; case SdmxStructureEnumType.StructureSet: try { tmpSdmxObject = tmpWsModel.GetStructureSet(new ArtefactIdentity( txtDSDID.Text.Trim(), cmbAgencies.SelectedValue.ToString().Trim(),txtVersion.Text.Trim() ) , true ,false ); } catch (Exception ex) { if ( ex.Message.ToLower().Equals( "no results found" ) ) { sdmxObjects.AddStructureSet((Org.Sdmxsource.Sdmx.Api.Model.Objects.Mapping.IStructureSetObject)ucMaintanableArtefact.ImmutableInstance); itemAdded = true; } } if ( !itemAdded ) { Utils.ShowDialog( "Oggetto già presente nel database" ); return; } break; } WSModel wsModel = new WSModel(); XmlDocument xRet = wsModel.SubmitStructure(sdmxObjects); string err = Utils.GetXMLResponseError(xRet); if (err != "") { Utils.ShowDialog(err); return; } ucMaintanableArtefact.Id = lblArtID.Text; ucMaintanableArtefact.AgencyId = lblArtAgency.Text; ucMaintanableArtefact.Version = lblArtVersion.Text; Utils.ShowDialog(Resources.Messages.succ_operation); Utils.ResetBeforeUnload(); //Utils.AppendScript("location.href='./KeyFamily.aspx';"); }