Skip to content

Instantly share code, notes, and snippets.

@artbear
Created July 12, 2018 10:06
Show Gist options
  • Save artbear/49d2a7cc20c0c2ede907c55625cde7ea to your computer and use it in GitHub Desktop.
Save artbear/49d2a7cc20c0c2ede907c55625cde7ea to your computer and use it in GitHub Desktop.
Алгоритм для Консоли кода (ИР) формирования метаданных документа в MD формате
// Автор @vsuh https://gitter.im/EvilBeaver/oscript-library?at=5b47160fc2d95c60f4d26a27
ОчиститьСообщения();
мд = Метаданные.Документы.СчетФактураВыданный;
ркв = мд.Реквизиты;
тчч = мд.ТабличныеЧасти;
Сообщить("#### Документ "+мд.Синоним+"
|
|
|###### Реквизиты шапки:
|
|
||Имя|Наименование|Тип|
||---|------------|---|");
Для Каждого рр Из ркв Цикл
тт = рр.Тип.Типы()[0];
Если тт = Тип("Строка") Тогда
ТипРкв = "Строка("+рр.Тип.КвалификаторыСтроки.Длина+")";
ИначеЕсли тт = Тип("Число") Тогда
ТипРкв = "Число";
ИначеЕсли тт = Тип("Дата") Тогда
ТипРкв = "Дата";
ИначеЕсли тт = Тип("Булево") Тогда
ТипРкв = "Булево";
Иначе
мдТипа = Метаданные.НайтиПоТипу(тт);
ТипРкв = мдТипа.ПолноеИмя();
КонецЕсли;
Сообщить("|"+рр.Имя+"|"+рр.Синоним+"|"+ТипРкв+"|");
КонецЦикла;
//Перейти ~Конец;
/////////////////////////////////////////////////////////////////////////////
Сообщить("
|
|");
Для Каждого тч Из тчч Цикл
Сообщить("###### ТЧ "+тч.Имя+"
|"+тч.Синоним+"
|---
|");
ркв = тч.Реквизиты;
Сообщить("
|
|
||Имя|Наименование|Тип|
||---|------------|---|");
Для Каждого рр Из ркв Цикл
тт = рр.Тип.Типы()[0];
Если тт = Тип("Строка") Тогда
ТипРкв = "Строка("+рр.Тип.КвалификаторыСтроки.Длина+")";
ИначеЕсли тт = Тип("Число") Тогда
ТипРкв = "Число("+рр.Тип.КвалификаторыЧисла.Разрядность+","+рр.Тип.КвалификаторыЧисла.РазрядностьДробнойЧасти+")";
ИначеЕсли тт = Тип("Дата") Тогда
ТипРкв = "Дата";
ИначеЕсли тт = Тип("Булево") Тогда
ТипРкв = "Булево";
Иначе
мдТипа = Метаданные.НайтиПоТипу(тт);
ТипРкв = мдТипа.ПолноеИмя();
КонецЕсли;
Сообщить("|"+рр.Имя+"|"+рр.Синоним+"|"+ТипРкв+"|");
КонецЦикла;
Сообщить("
|
|");
КонецЦикла;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment