IRdsNotConvertibleReasonDuplicatedId.DuplicatedId

Синтаксис

DuplicatedId: String;

DuplicatedId: string;

Описание

Свойство DuplicatedId возвращает дублирующийся идентификатор.

Комментарии

Для получения ключей объектов используйте свойство IRdsNotConvertibleReasonDuplicatedId.Keys.

Пример Fore

Для выполнения примера предполагается наличие репозитория НСИ с ключом 16008, содержащего справочники НСИ, которые требуется преобразовать в табличные справочники НСИ.

Добавьте ссылки на системные сборки Metabase, Rds.

Sub UserProc;
Var
    RDS_DB: IRdsDatabase;
    Converter: IRdsDictionaryConverter;
    List: IRdsDictionaryConverterList;
    NotConv: IMetabaseObjectDescriptors;
    pReasons: IRdsNotConvertibleReasons;
    pReason: IRdsNotConvertibleReason;
    ReasonDuplicatedId: IRdsNotConvertibleReasonDuplicatedId;
    i, j, k: Integer;
Begin
    RDS_DB := MetabaseClass.Active.Bind(16008As 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);
            ReasonDuplicatedId := pReason As IRdsNotConvertibleReasonDuplicatedId;
            Debug.Write("Дублирующийся идентификатор: ");
            Debug.WriteLine(ReasonDuplicatedId.DuplicatedId);
            Debug.Write("Ключи: ");
            For k := 0 To ReasonDuplicatedId.Keys.Length - 1 Do
                Debug.WriteLine(ReasonDuplicatedId.Keys[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;
    ReasonDuplicatedId: IRdsNotConvertibleReasonDuplicatedId;
    i, j, k: Integer;
    Keys: System.Array;
Begin
    RDS_DB := Params.Metabase.Bind(16008As 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];
            ReasonDuplicatedId := pReason As IRdsNotConvertibleReasonDuplicatedId;
            System.Diagnostics.Debug.Write("Дублирующийся идентификатор: ");
            System.Diagnostics.Debug.WriteLine(ReasonDuplicatedId.DuplicatedId);
            System.Diagnostics.Debug.Write("Ключи: ");
            For k := 0 To ReasonDuplicatedId.Keys.Length - 1 Do
                Keys := ReasonDuplicatedId.Keys;
                System.Diagnostics.Debug.WriteLine(Keys[k]);
            End For;
        End For;
    End For;
End Sub;

В результате выполнения примера в окно консоли будут выведены дублирующиеся идентификаторы и соответствующие им ключи объектов.

См. также:

IRdsNotConvertibleReasonDuplicatedId