1
0
mirror of https://github.com/netology-code/1c-homeworks.git synced 2024-11-30 08:06:56 +02:00
1c-homeworks/homework-7-3.md
2023-01-14 16:16:37 +03:00

70 lines
5.9 KiB
Markdown

# Задание к занятию "Распределенная информационная база"
Разработать пересылку данных между двумя узлами распределенной базы.
В качестве решения прислать один файл, содержащий все изменения по конфигурации.
## Задание 1. Создание конфигурации и плана обмена
### Описание задачи
Создать конфигурацию торгового предприятия и добавить в нее план обмена
### Требования к результату
Выгрузка информационной базы (.dt) с конфигурацией ТорговоеПредприятие, содержащая минимальные метаданные и план обмена.
### Процесс выполнения
* Создайте чистую конфигурацию
* Добавьте справочники Номенклатура и Контрагенты
* Добавьте документы ПриходнаяНакладная и РасходнаяНакладная
* В документах "накладных" добавьте в шапку реквизит Контрагент, а также табличную часть с колонками "Товар (СправочникСсылка.Номенклатура)", "Количество (Число)", "Цена (Число)", "Сумма (Число")
* Добавьте в конфигурацию план обмена Полный
* В плане обмена по кнопке "Состав" укажите все объекты метаданных и разрешите авторегистрацию
## Задание 2. Запись изменений в файл обмена
### Описание задачи
Внести изменения в информационную базу и выгрузить изменения для внешнего узла
### Требование к результату
Выгрузка информационной базы (.dt) из прошлого задания с командой, позволяющей сохранить изменения в файл обмена
### Процесс выполнения
* Создайте команду "Отправить данные" в плане обмена. В качестве типа параметра команды укажите ПланОбменаСсылка.Общий, команду разместите в командной панели формы
* В обработчике команды напишите алгоритм, который для выбранного узла обмена будет выгружать все изменения в файл XML.
* Используйте объекты ЗаписьСообщенияОбмена, ЗаписьXML, по примеру, указанному в презентации к лекции
* После формирования сообщения обмена добавьте код удаления всех зарегистрированных изменений для данного узла обмена
```bsl
ПланыОбмена.УдалитьРегистрациюИзменений(Узел);
```
* Файл с сообщением обмена должен сохраняться на машине клиента (передаваться с сервера на клиент)
* Запустите программу в режиме 1С:Предприятие
* Отредактируйте предопределенную запись в плане обмена, задайте ей код "ГЛ" и наименование "Главная база"
* Создайте новый элемент в плане обмена, задайте ей код "ВН" и наименование "Внешняя база"
* Введите в режиме 1С:Предприятие несколько записей в справочниках и сформируйте сообщение обмена.
## Задание 3. Чтение изменений из файла обмена
### Описание задачи
Получить изменения от внешнего узла и записать их в базу
### Требование к результату
Выгрузка информационной базы (.dt) из прошлого залания с командой, позволяющей загрузить изменения из файла обмена
### Процесс выполнения
* Создайте вторую команду в плане обмена, назовите ее "Получить изменения"
* В обработчике команды реализуйте алгоритм чтения сообщения обмена из выбранного пользователем файла
* Алгоритм обработчика должен позволять выбрать XML файл с клиентского компьютера
* Используйте объекты ЧтениеСообщенияОбмена, ЧтениеXML по примеру, указанному в презентации к лекции
* Выгрузите конфигурацию в файл CF и загрузите его в новую чистую информационную базу
* Создайте в режиме 1С:Предприятие в этой базе обратную конфигурацию узлов - предопределенному узлу код "ВН" и наименование "Внешняя база", а второму созданному узлу код "ГЛ" и наименование "Главная база"
* Загрузите в базу файл, сформированный в предыдущем задании.