|   |   | 
| 
 | работа с метаданными | ☑ | ||
|---|---|---|---|---|
| 0
    
        Black Dragon 27.08.13✎ 16:56 | 
        Доброго дня!
 есть такой код: Для Каждого ТабЧасть Из МетаДок.ТабличныеЧасти Цикл Запись.ЗаписатьНачалоЭлемента("ТабличнаяЧасть"); Запись.ЗаписатьАтрибут("Имя",Строка(ТабЧасть.Имя)); Для Каждого Реквизит Из ТабЧасть.Реквизиты Цикл Запись.ЗаписатьНачалоЭлемента("Реквизит"); Запись.ЗаписатьАтрибут("Имя",Строка(Реквизит.Имя)); Запись.ЗаписатьАтрибут("Тип",Строка(Реквизит.Тип)); Запись.ЗаписатьАтрибут("Значение",Строка(ТабЧасть[Реквизит.Имя])); КонецЦикла; Запись.ЗаписатьКонецЭлемента(); КонецЦикла; как получить в атрибуте "Значение" само значение реквизита таб части? | |||
| 1
    
        Maxus43 27.08.13✎ 16:57 | 
        не проще сериализовать и записать в xml весь док сразу?     | |||
| 2
    
        Михаил Козлов 27.08.13✎ 17:00 | 
        Что-то не понял, насчет значения реквизита: откуда Вы собираетесь его получать? Цикл по реквизитам, а не по строкам ТЧ.
 (1)+ | |||
| 3
    
        Black Dragon 27.08.13✎ 17:02 | 
        точно! Семен Семеныч! чего-то туплю)     | |||
| 4
    
        Black Dragon 27.08.13✎ 17:09 | 
        Премного благодарен!     | |||
| 5
    
        Black Dragon 28.08.13✎ 10:42 | 
        Однако есть ньюансы! получаю xml с выгрузкой доков
 <Документы> <DocumentObject.ЗарплатаКВыплатеОрганизаций> <Ref>1d52d517-b4a5-11e2-82b2-001e6712e121</Ref> <DeletionMark>false</DeletionMark> <Date>2013-05-04T14:57:01</Date> <Number>ЦФС00000049</Number> <Posted>true</Posted> <Организация>2f268184-3f74-11e2-9ac4-001e6712e121</Организация> <ПериодРегистрации>2013-04-01T00:00:00</ПериодРегистрации> <СпособВыплаты>ЧерезКассу</СпособВыплаты> <Ответственный>1140641b-3ed0-11e2-9ac4-001e6712e121</Ответственный> <Комментарий/> <ДнейНеВыплаты>0</ДнейНеВыплаты> <КраткийСоставДокумента>Бурдович Е.В., Ванюшенков О.Ю., Гарипова Е.С., Селицкий А.А.</КраткийСоставДокумента> <ХарактерВыплаты>Зарплата</ХарактерВыплаты> <ПодразделениеОрганизации>00000000-0000-0000-0000-000000000000</ПодразделениеОрганизации> <ДокументОснование xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/> <ДатаНачала>0001-01-01T00:00:00</ДатаНачала> <ДатаОкончания>0001-01-01T00:00:00</ДатаОкончания> <Банк>00000000-0000-0000-0000-000000000000</Банк> <ПроцентВыплаты>100</ПроцентВыплаты> <ПредварительныйУчетУдержаний>false</ПредварительныйУчетУдержаний> <Округление/> <СуммаДокумента>18727.15</СуммаДокумента> <ДанныеПрошлойВерсии>false</ДанныеПрошлойВерсии> <Зарплата> <Row> <Физлицо>ad58d764-3d38-11e2-9ac4-001e6712e121</Физлицо> <Сумма>5999.4</Сумма> <ВыплаченностьЗарплаты>Выплачено</ВыплаченностьЗарплаты> <КомпенсацияЗаЗадержкуЗарплаты>0</КомпенсацияЗаЗадержкуЗарплаты> <Авторасчет>true</Авторасчет> <Начислено>5999.4</Начислено> <Удержано>0</Удержано> </Row> <Row> <Физлицо>147f20a8-b0c4-11e2-82b2-001e6712e121</Физлицо> <Сумма>726.95</Сумма> <ВыплаченностьЗарплаты>Выплачено</ВыплаченностьЗарплаты> <КомпенсацияЗаЗадержкуЗарплаты>0</КомпенсацияЗаЗадержкуЗарплаты> <Авторасчет>true</Авторасчет> <Начислено>726.95</Начислено> <Удержано>0</Удержано> </Row> <Row> <Физлицо>d2a43e45-8a0d-11e2-9d99-001e6712e121</Физлицо> <Сумма>6000.4</Сумма> <ВыплаченностьЗарплаты>Выплачено</ВыплаченностьЗарплаты> <КомпенсацияЗаЗадержкуЗарплаты>0</КомпенсацияЗаЗадержкуЗарплаты> <Авторасчет>true</Авторасчет> <Начислено>6000.4</Начислено> <Удержано>0</Удержано> </Row> <Row> <Физлицо>b58c45d1-70eb-11e2-82d8-001e6712e121</Физлицо> <Сумма>6000.4</Сумма> <ВыплаченностьЗарплаты>Выплачено</ВыплаченностьЗарплаты> <КомпенсацияЗаЗадержкуЗарплаты>0</КомпенсацияЗаЗадержкуЗарплаты> <Авторасчет>true</Авторасчет> <Начислено>6000.4</Начислено> <Удержано>0</Удержано> </Row> </Зарплата> </DocumentObject.ЗарплатаКВыплатеОрганизаций> но ведь здесь нет ни типов данных реквизитов ни их наименований как в конфигураторе) суть в том, что нужна полная картина взаимосвязей между объектами | |||
| 6
    
        Black Dragon 28.08.13✎ 10:52 | 
        хотел сделать универсальный механизм - по реквизитам и так все понятно, однако по табличной части есть вопросы - если у дока несколько таб частей, имена которых нам заранее не известны - тогда как? по метаданным могу получить список таб частей, как затем сделать перебор строк таб частей?     | |||
| 7
    
        Rie 28.08.13✎ 10:55 | 
        (6) Циклом по таб. части.     | |||
| 8
    
        Rie 28.08.13✎ 10:56 | 
        +(7) Только почему "строк" - реквизитов (если метаданных)?
 Или имеется в виду - получить таб. часть объекта и её строки перебрать? Для каждого СтрокаТЧ из Док[ИмяТабЧасти] Цикл | |||
| 9
    
        Maxus43 28.08.13✎ 11:01 | 
        типы и т.д. у xml в xmlschema указывается     | |||
| 10
    
        Black Dragon 28.08.13✎ 11:23 | 
        я предполагаю такую систему:
 <Документ "Имя"=... "Номер"=.... "Дата"=...> <Реквизиты> <Реквизит "Имя"=... "Тип"=... "Значение"=...> ..... </Реквизиты> <ТабличныеЧасти> <ТабличнаяЧасть "Имя"=...> <СтрокаТЧ "НомерСтроки"=...> <РевизитТЧ "Имя"=... "Тип"=... "Значение"=...> ... </СтрокаТЧ> </ТабличнаяЧасть> .... </ТабличныеЧасти> </Документ> как-то так | |||
| 11
    
        Serginio1 28.08.13✎ 11:35 | 
        Или создать свою схему по метаданным
 v8: XSD схема программно с нуля. | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |