Цитата |
---|
Александр написал: Настроил загрузку, создал задачу для ТСД выгрузка проходит, но данные остаются в ТСД (не удаляются)в самом ТСД стоит удалять автоматически (Утилиты - Установки - Режим удаления - Автоматически) |
Эта настройка работает только для работы через ГП. Удалением данных в ТСД руководит обработка 1С. Там есть специальная команда.
Цитата |
---|
Александр написал: В 1с уст. флаг очищать Но после загрузки данных в 1С ТСД не очищается |
Там 2 флага. Первый очищает Файл данных (очищать данные после загрузки из ТСД). БД в ТСД очищены не будут. Они очистятся перед загрузкой новых данных. Либо в обработке добавить команду очищения.
Очищение БД после выгрузки убрано по такой причине: 1С не умеет частями принимать БД, а всю полностью. Поэтому сначала компонента грузит все данные к себе, подготавливает в виде, понятной для 1С и отдает 1С. Затем 1С их обрабатывает. На больших БД это занимает очень много времени. К тому же 1С никак не дает знать - закончила она загрузку и была ли какая ошибка. Если вслепую очистить данные, то мы можем потерять все что насобирали. Это очень опасно.
ФД обычно состоят из пары сотен записей и всегда передается построчно. Ошибок за всю наши историю с ФД не возникало, поэтому очищение ФД можно сделать сразу после выгрузки. Но все равно не рекомендуется, т.к. в случае ошибки обработки принятых данных в 1С мы (компонента) об этом не узнаем.
Теперь обобщу. Есть галки, но на свой страх и риск. Одна удаляет данные из ФД сразу, вторая перед загрузкой БД в ТСД очищает ее. Если нужно удалять данные после гарантированного удачного приема, необходимо вписать в обработку пару строк кода - проверки результата загрузки и принудительного удаления данных.
По этой-же причине и нет автоматического удаления. Если обмен через ГП - там понятно, что все прошло успешно и можно удалить. В случае с 1С мы этого не узнаем и такая ситуация опасна потерей данных