1.
SemenSemenych
23.11.12 14:25
Сейчас в теме
Загрузка в 1С:Бухгалтерию 8.* первичных документов
Да, задача - стара как мир. Но мне не нравится традиционный подход, когда настраивается обмен, потом 1С вздрагивает и засасывает данные, а затем бухгалтер лезет в базу, смотреть, что там назагружалось и как.
Хотелось бы немного по-другому. Кто готов сделать? За деньги.
Схема (все это предназначено для загрузки данных из другой системы, но также и для загрузки из других конфигураций 1С):
1. Обработка по команде получает данные в формате XML по HTTP(S)
2. С помощью XSL-преобразования приводит полученный XML к необходимому для понимания обработкой формату. Формат выбирает разработчик, это может быть внутренний формат 1С, CommerceML и пр. XSL-таблицу мы сделаем. Можно оставить как рабочий - наш формат.
3. Для каждого импортированного документа обработка проверяет исходные данные - получится ли без ошибок создать документ в 1С. Если да - создает и переходит к следующему.
4. Если нет - обработка запрашивает уточнения. При уточнении необходимо дать возможность создавать правила: а) технические - соответствие полей в полученных данных и в 1С, б) учетные - что для данного источника/контрагента/договора/подразделения/счета - значение такого-то поля должно быть таким. Также необходим интеллектуальный поиск соответствий справочников. По кодам/GUID и наименованиям. Если соответствие в справочнике - не однозначное, то должны предлагаться «подходящие» варианты или подтверждение создания нового. При выборе существующего в справочнике значения нужно запоминать соответствие данных во внешнем источнике и в 1С - чтобы следующий раз не спрашивать.
5. Интерфейс видится следующим: слева - исходный документ (HTML, полученный путем XSLT-преобразования над полученным документом), справа - “wizard”, т.е. последовательность форм для уточнения данных, приводящий в итоге к заполненной форме самого документа. Плюс формы настройки, менеджер правил.
6. Нужно создавать в 1С уже проверенные и проведенные документы.
И для обмена данными с другими конфигурациями - нужно создать ответную часть (для Internet Information Server, чтобы данные получались по HTTP(S)).