Имя: Пароль:
1C
1С v8
Выгрузка в XML структуры БД
0 Aleksey T
 
22.11.13
13:09
Есть обработка для 7.7 выдающий файл xml соответствия объектов конфигурации и таблиц и полей в БД вида:
-<ОбъектКонфигурации>

<Синоним>Бланки cтрогой отчетности</Синоним>

<ИмяТаблицы>Справочник.БланкиСтрогойОтчетности</ИмяТаблицы>

<Метаданные>Справочник.БланкиСтрогойОтчетности</Метаданные>

<ИмяТаблицыХранения>sc11401</ИмяТаблицыХранения>


-<Реквизиты>


-<Реквизит>

<ИмяПоля>Код</ИмяПоля>

<Синоним>Код</Синоним>

<ИмяПоляХранения>CODE</ИмяПоляХранения>

<Метаданные>Документ.Дата</Метаданные>


-<ТипыЗначения>

<Тип/>

</ТипыЗначения>

</Реквизит>


-<Реквизит>

<ИмяПоля>ПометкаУдаления</ИмяПоля>

<Синоним>ПометкаУдаления</Синоним>

<ИмяПоляХранения>ISMARK</ИмяПоляХранения>

<Метаданные>Документ.Номер</Метаданные>


-<ТипыЗначения>

<Тип/>

</ТипыЗначения>

</Реквизит>


-<Реквизит>

<ИмяПоля>ЭтоГруппа</ИмяПоля>

<Синоним>ЭтоГруппа</Синоним>

<ИмяПоляХранения>ISFOLDER</ИмяПоляХранения>

<Метаданные>Документ.Проведен</Метаданные>


-<ТипыЗначения>

<Тип/>

</ТипыЗначения>

</Реквизит>


-<Реквизит>

<ИмяПоля>Родитель</ИмяПоля>

<Синоним>Родитель</Синоним>

<ИмяПоляХранения>PARENTID</ИмяПоляХранения>

<Метаданные>Документ.Проведен</Метаданные>


-<ТипыЗначения>

<Тип/>

</ТипыЗначения>

</Реквизит>


-<Реквизит>

<ИмяПоля>Подчинен</ИмяПоля>

<Синоним>Подчинен</Синоним>

<ИмяПоляХранения>PARENTEXT</ИмяПоляХранения>

<Метаданные>Документ.Проведен</Метаданные>


-<ТипыЗначения>

<Тип/>

</ТипыЗначения>

</Реквизит>

</Реквизиты>

</ОбъектКонфигурации>

Как такое реализовать для 8.2?
P.S.: я юный подован))
1 Maxus43
 
22.11.13
13:38
зачем? Есть стандартная выгрузка конфигурации в файлы (пообъектно), в 8.3 есть выгрузка в xml
2 Defender aka LINN
 
22.11.13
13:51
(0) Тебе что именно надо? Структуру в XML? Или имена таблиц? И для чего?
3 Aleksey T
 
22.11.13
14:30
(1) (2) Принесли чудо-прогу, которая напрямую соединяется с БД, и ей нужен вот такой файл. Для чего эта прога непонятно - все тоже самое, что можно сделать и 1С (построить отчеты) но мне НАДО сделать сказали. Вот таки дела
4 Aleksey T
 
22.11.13
14:32
(1) (2) прога типа КликВью что ли)
5 Aleksey T
 
22.11.13
14:36
Вообще есть вот такой шаблон:

<?xml version="1.0" encoding="UTF-8"?>
    
<Имя Задачи>
<Конфигурация Задачи>
    <Описание БД>
<Тип СУБД> * </Тип СУБД>    //Из типов, обрабатываемых Calligraph’ом {MS SQL, ORACLE, SYBASE, CACHE, … }
<Версия СУБД> * </ Версия СУБД>
        <Имя БД> Имя под которым БД известна </Имя БД>
        <Полный адрес БД> Адрес на носителях информации </Полный адрес БД>  
        <Имя драйвера> * </Имя драйвера>
        <Адрес драйвера> Адрес на носителях информации </ Адрес драйвера>
    </Описание БД>

    <Данные пользователя>
        <Логин пользователя> * </Логин пользователя>
        <Пароль пользователя> * </Пароль пользователя>
    </Данные пользователя>

    <Список разрешенных пользователю реквизитов>
        <Название> Понятие под которым знает этот реквизит пользователь </Название>
        <Имя таблицы> * </Имя таблицы>
        <Имя поля в таблице> * </Имя поля в таблице>
        <Тип реквизита> * </Тип реквизита>
        <Длина реквизита в байтах> * </Длина реквизита в байтах>
    </Список разрешенных пользователю реквизитов>

    <Описание таблиц и их связей>    
//Для таблиц задействованных в запросе, в т.ч. и для таблиц, в которых  нет запрошенных параметров, но через которые связаны нужные таблицы
        < Имя первой таблицы>  * </Имя первой таблицы>    
            //Из пары, описывающей связь между двумя связанными таблицами
        <Имя поля для связи в первой таблице> * </Имя поля для связи в первой таблице>
        <Тип поля для связи в первой таблице> * </Тип поля для связи в первой таблице>
        <Длина поля для связи в первой таблице> * </Длина поля для связи в первой таблице>

        < Имя второй таблицы> * </Имя второй таблицы>    
            //Из пары, описывающей связь между двумя связанными таблицами
        <Имя поля для связи во второй таблице> * </Имя поля для связи во второй таблице>
        <Тип поля для связи во второй таблице> * </Тип поля для связи во второй таблице>
        <Длина поля для связи во второй таблице> * </Длина поля для связи во второй таблице>

        <Тип связи первой таблицы со второй> * </Тип связи первой таблицы со второй>      
            // { INNER, LEFT (OUTER), RIGHT (OUTER), FULL (OUTER), UNION JOIN }.
    </Описание таблиц и их связей>    

</Конфигурация задачи>
</Имя Задачи>


*    
Красным выделены «Открытые» данные XML-файла. Остальные данные не нужны для формирования «Образа» документа генератором отчетов Calligraph, и, следовательно, не требуется их передача на сервер, где  размещена услуга.