private void PopolateSMLBTarget(ArtefactIdentity artefactIdentity, AvailableStructures StructureType)
        {
            lbSMTargetCode.Items.Clear();

            ISdmxObjects sdmxObjects = GetSdmoxObjectsFromAI(artefactIdentity, StructureType);

            foreach (IDimension dim in sdmxObjects.DataStructures.FirstOrDefault().DimensionList.Dimensions)
            {
                lbSMTargetCode.Items.Add(dim.Id);
            }

            ResetLBScrollPosition();
        }
        private ISdmxObjects GetSdmoxObjectsFromAI(ArtefactIdentity artefactIdentity, AvailableStructures StructureType)
        {
            ISdmxObjects sdmxObjects = null;

            switch (StructureType)
            {
                case AvailableStructures.KEY_FAMILY:
                    sdmxObjects = _wsmodel.GetDataStructure(artefactIdentity, false, false);
                    break;
                case AvailableStructures.DATAFLOW:
                    sdmxObjects = _wsmodel.GetDataFlow(artefactIdentity, false, false);
                    ICrossReference dsd = sdmxObjects.Dataflows.FirstOrDefault().DataStructureRef;

                    sdmxObjects = _wsmodel.GetDataStructure(new ArtefactIdentity(dsd.MaintainableId, dsd.AgencyId, dsd.Version), false, false);
                    break;
            }

            return sdmxObjects;
        }