«Внедряли мы как-то 1С:ERP в одной крупной торговой сети.
Еще в самом начале проекта появилась задача по загрузке остатков (куда ж без нее?) из действующей системы заказчика (не 1С). В качестве формата передачи данных выбрали Excel, т. к. в этом случае не требовалась доработка исходной системы.
Итоговая задача сводилось к следующему: необходимо было прочитать файл с остатками, получившиеся данные распознать, затем свернуть строки по набору полей «Организация, Склад, Подразделение, Номенклатура, Характеристика и т. д.» с суммированием количества и стоимости. Далее, для каждого набора «Организация, Подразделение, Склад» создавался отдельный документ «Ввод начальных остатков» с заполнением табличной части. Причем для простоты тестирования и отладки, а также чтобы не плодить лишние документы при каждой загрузке одного и того же файла, существующие документы, отвечающие параметрам поиска, перезаписывались. На форме обработки была соответствующая «галочка». В общем, все как обычно.
Написал обработку, ее протестировали на тестовых примерах. Все работает.
Ближе к старту, клиент начал постепенно скидывать файлы с остатками для загрузки. Консультант грузит, документы создаются, все хорошо.
Сверяем итог в 1С с первоисточником – не сходится. Клиент выгружает файлы Excel еще раз, уверяет, что файлы созданы правильно. Консультант грузит файлы, сверяет каждый файл, все загружается верно. Общий результат все равно не сходится. Файлы огромные (общий объем под 200000 строк), грузятся долго. Поиск ошибки затягивается. Старт под угрозой, задача получает наивысший приоритет. Каждое звено цепи работает без ошибок, но остатки в двух системах никак не хотят сойтись.
Как часто бывает, причина лежала на поверхности, но ее почему-то сразу никто не увидел. Дело в том, что клиент предоставил несколько файлов с остатками. И в разных файлах существовали строки с одинаковыми наборами «Организация, Подразделение, Склад» (и даже с одинаковой номенклатурой). Соответственно, следуя алгоритму, обработка загрузки пересоздавала некоторые документы, которые были созданы ранее при загрузке данных из других файлов.
Загрузили файлы с небольшим смещением по времени (поиск происходил также и по дате документа) и остатки сошлись».
Via Виталий Онянов
Присоединяйтесь к ОК, чтобы подписаться на группу и комментировать публикации.
Нет комментариев