DuplicatedImportExportIds: Array;
DuplicatedImportExportIds: System.Array;
Свойство DuplicatedImportExportIds возвращает идентификаторы, которые совпадают у схем импорта и экспорта.
Нельзя преобразовать справочник НСИ, содержащий схему импорта/экспорта с идентификатором P7_RDS_CONVERT_OBJECT_SCHEMA.
Для выполнения примера предполагается наличие репозитория НСИ с ключом 16008, содержащего справочники НСИ, которые требуется преобразовать в табличные справочники НСИ.
Добавьте ссылки на системные сборки Metabase, Rds.
Sub UserProc;
Var
RDS_DB: IRdsDatabase;
Converter: IRdsDictionaryConverter;
List: IRdsDictionaryConverterList;
NotConv: IMetabaseObjectDescriptors;
pReasons: IRdsNotConvertibleReasons;
pReason: IRdsNotConvertibleReason;
ReasonMetaDictConstr: IRdsNotConvertibleReasonMetaDictionaryConstraint;
i, j, k: Integer;
Begin
RDS_DB := MetabaseClass.Active.Bind(16008) As IRdsDatabase;
Converter := New RdsDictionaryConverter.Create;
List := Converter.AllRdsDatabase(RDS_DB);
NotConv := List.NotConvertibleDictionaries;
For i := 0 To NotConv.Count - 1 Do
pReasons := List.GetNotConvertibleReasons(NotConv.Item(i).Key);
For j := 0 To pReasons.Count - 1 Do
pReason := pReasons.Item(j);
ReasonMetaDictConstr := pReason As IRdsNotConvertibleReasonMetaDictionaryConstraint;
Debug.Write("Совпадающие идентификаторы схем импорта/экспорта: ");
For k := 0 To ReasonMetaDictConstr.DuplicatedImportExportIds.Length - 1 Do
Debug.WriteLine(ReasonMetaDictConstr.DuplicatedImportExportIds[k]);
End For;
End For;
End For;
End Sub UserProc;
Imports Prognoz.Platform.Interop.Metabase;
Imports Prognoz.Platform.Interop.Rds;
…
Public Shared Sub Main(Params: StartParams);
Var
RDS_DB: IRdsDatabase;
Converter: IRdsDictionaryConverter;
List: IRdsDictionaryConverterList;
NotConv: IMetabaseObjectDescriptors;
pReasons: IRdsNotConvertibleReasons;
pReason: IRdsNotConvertibleReason;
ReasonMetaDictConstr: IRdsNotConvertibleReasonMetaDictionaryConstraint;
i, j, k: Integer;
DuplicatedIds: System.Array;
Begin
RDS_DB := Params.Metabase.Bind(16008) As IRdsDatabase;
Converter := New RdsDictionaryConverter.Create();
List := Converter.AllRdsDatabase(RDS_DB);
NotConv := List.NotConvertibleDictionaries;
For i := 0 To NotConv.Count - 1 Do
pReasons := List.GetNotConvertibleReasons(NotConv.Item[i].Key);
For j := 0 To pReasons.Count - 1 Do
pReason := pReasons.Item[j];
ReasonMetaDictConstr := pReason As IRdsNotConvertibleReasonMetaDictionaryConstraint;
System.Diagnostics.Debug.Write("Совпадающие идентификаторы схем импорта/экспорта: ");
For k := 0 To ReasonMetaDictConstr.DuplicatedImportExportIds.Length - 1 Do
DuplicatedIds := ReasonMetaDictConstr.DuplicatedImportExportIds;
System.Diagnostics.Debug.WriteLine(DuplicatedIds[k]);
End For;
End For;
End For;
End Sub;
В результате выполнения примера в окно консоли будут выведены совпадающие идентификаторы схем импорта/экспорта.
См. также: