Добавил решения блока 07
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
# Задание к занятию "Распределенная информационная база"
|
||||
|
||||
Разработать пересылку данных между двумя узлами распределенной базы.
|
||||
В качестве решения прислать один файл, содержащий все изменения по конфигурации.
|
||||
|
||||
## Задание 1. Создание конфигурации и плана обмена
|
||||
|
||||
### Описание задачи
|
||||
|
||||
Создать конфигурацию торгового предприятия и добавить в нее план обмена
|
||||
|
||||
### Требования к результату
|
||||
|
||||
Выгрузка информационной базы (.dt) с конфигурацией ТорговоеПредприятие, содержащая минимальные метаданные и план обмена.
|
||||
|
||||
### Процесс выполнения
|
||||
|
||||
* Создайте чистую конфигурацию
|
||||
* Добавьте справочники Номенклатура и Контрагенты
|
||||
* Добавьте документы ПриходнаяНакладная и РасходнаяНакладная
|
||||
* В документах "накладных" добавьте в шапку реквизит Контрагент, а также табличную часть с колонками "Товар (СправочникСсылка.Номенклатура)", "Количество (Число)", "Цена (Число)", "Сумма (Число")
|
||||
* Добавьте в конфигурацию план обмена Полный
|
||||
* В плане обмена по кнопке "Состав" укажите все объекты метаданных и разрешите авторегистрацию
|
||||
|
||||
## Задание 2. Запись изменений в файл обмена
|
||||
|
||||
### Описание задачи
|
||||
|
||||
Внести изменения в информационную базу и выгрузить изменения для внешнего узла
|
||||
|
||||
### Требование к результату
|
||||
|
||||
Выгрузка информационной базы (.dt) из прошлого задания с командой, позволяющей сохранить изменения в файл обмена
|
||||
|
||||
### Процесс выполнения
|
||||
|
||||
* Создайте команду "Отправить данные" в плане обмена. В качестве типа параметра команды укажите ПланОбменаСсылка.Общий, команду разместите в панели действий формы
|
||||
* В обработчике команды напишите алгоритм, который для выбранного узла обмена будет выгружать все изменения в файл XML.
|
||||
* Используйте объекты ЗаписьСообщенияОбмена, ЗаписьXML, по примеру, указанному в презентации к лекции
|
||||
* После формирования сообщения обмена добавьте код удаления всех зарегистрированных изменений для данного узла обмена
|
||||
```bsl
|
||||
ПланыОбмена.УдалитьРегистрациюИзменений(Узел);
|
||||
```
|
||||
|
||||
* Файл с сообщением обмена должен сохраняться на машине клиента (передаваться с сервера на клиент)
|
||||
* Запустите программу в режиме 1С:Предприятие
|
||||
* Отредактируйте предопределенную запись в плане обмена, задайте ей код "ГЛ" и наименование "Главная база"
|
||||
* Создайте новый элемент в плане обмена, задайте ей код "ВН" и наименование "Внешняя база"
|
||||
* Введите в режиме 1С:Предприятие несколько записей в справочниках и сформируйте сообщение обмена.
|
||||
|
||||
## Задание 3. Чтение изменений из файла обмена
|
||||
|
||||
### Описание задачи
|
||||
|
||||
Получить изменения от внешнего узла и записать их в базу
|
||||
|
||||
### Требование к результату
|
||||
|
||||
Выгрузка информационной базы (.dt) из прошлого залания с командой, позволяющей загрузить изменения из файла обмена
|
||||
|
||||
### Процесс выполнения
|
||||
|
||||
* Создайте вторую команду в плане обмена, назовите ее "Получить изменения"
|
||||
* В обработчике команды реализуйте алгоритм чтения сообщения обмена из выбранного пользователем файла
|
||||
* Алгоритм обработчика должен позволять выбрать XML файл с клиентского компьютера
|
||||
* Используйте объекты ЧтениеСообщенияОбмена, ЧтениеXML по примеру, указанному в презентации к лекции
|
||||
* Выгрузите конфигурацию в файл CF и загрузите его в новую чистую информационную базу
|
||||
* Создайте в режиме 1С:Предприятие в этой базе обратную конфигурацию узлов - предопределенному узлу код "ВН" и наименование "Внешняя база", а второму созданному узлу код "ГЛ" и наименование "Главная база"
|
||||
* Загрузите в базу файл, сформированный в предыдущем задании.
|
Binary file not shown.
@@ -0,0 +1,61 @@
|
||||
<v8msg:Message xmlns:v8msg="http://v8.1c.ru/messages">
|
||||
<v8msg:Header>
|
||||
<v8msg:ExchangePlan>Полный</v8msg:ExchangePlan>
|
||||
<v8msg:To>ВН</v8msg:To>
|
||||
<v8msg:From>ГЛ</v8msg:From>
|
||||
<v8msg:MessageNo>3</v8msg:MessageNo>
|
||||
<v8msg:ReceivedNo>0</v8msg:ReceivedNo>
|
||||
</v8msg:Header>
|
||||
<v8msg:Body>
|
||||
<CatalogObject.Номенклатура>
|
||||
<Ref>86761b11-a94e-11ec-8018-c682962e9dd1</Ref>
|
||||
<DeletionMark>false</DeletionMark>
|
||||
<Code>000000001</Code>
|
||||
<Description>Клавиатуры</Description>
|
||||
</CatalogObject.Номенклатура>
|
||||
<CatalogObject.Контрагенты>
|
||||
<Ref>86761b10-a94e-11ec-8018-c682962e9dd1</Ref>
|
||||
<DeletionMark>false</DeletionMark>
|
||||
<Code>000000001</Code>
|
||||
<Description>Поставщик1</Description>
|
||||
</CatalogObject.Контрагенты>
|
||||
<CatalogObject.Контрагенты>
|
||||
<Ref>86761b13-a94e-11ec-8018-c682962e9dd1</Ref>
|
||||
<DeletionMark>false</DeletionMark>
|
||||
<Code>000000002</Code>
|
||||
<Description>Покупатель1</Description>
|
||||
</CatalogObject.Контрагенты>
|
||||
<DocumentObject.ПриходнаяНакладная>
|
||||
<Ref>86761b12-a94e-11ec-8018-c682962e9dd1</Ref>
|
||||
<DeletionMark>false</DeletionMark>
|
||||
<Date>2022-03-21T22:39:22</Date>
|
||||
<Number>000000001</Number>
|
||||
<Posted>true</Posted>
|
||||
<Контрагент>86761b10-a94e-11ec-8018-c682962e9dd1</Контрагент>
|
||||
<Товары>
|
||||
<Row>
|
||||
<Товар>86761b11-a94e-11ec-8018-c682962e9dd1</Товар>
|
||||
<Количество>1</Количество>
|
||||
<Цена>100</Цена>
|
||||
<Сумма>100</Сумма>
|
||||
</Row>
|
||||
</Товары>
|
||||
</DocumentObject.ПриходнаяНакладная>
|
||||
<DocumentObject.РасходнаяНакладная>
|
||||
<Ref>86761b14-a94e-11ec-8018-c682962e9dd1</Ref>
|
||||
<DeletionMark>false</DeletionMark>
|
||||
<Date>2022-03-21T22:39:45</Date>
|
||||
<Number>000000001</Number>
|
||||
<Posted>true</Posted>
|
||||
<Контрагент>86761b13-a94e-11ec-8018-c682962e9dd1</Контрагент>
|
||||
<Товары>
|
||||
<Row>
|
||||
<Товар>86761b11-a94e-11ec-8018-c682962e9dd1</Товар>
|
||||
<Количество>1</Количество>
|
||||
<Цена>100</Цена>
|
||||
<Сумма>100</Сумма>
|
||||
</Row>
|
||||
</Товары>
|
||||
</DocumentObject.РасходнаяНакладная>
|
||||
</v8msg:Body>
|
||||
</v8msg:Message>
|
Reference in New Issue
Block a user