Сотрудники по зарплате постоянно дергали меня для выгрузки файла по зп в Сбербанк, меня всегда раздражала это мута с дискетами постоянно это вставь подпиши другую вставь подпиши и так 4 раза ааааааа
Решил сделать так что файл нужно как то подписать без этик вставить вытащить вставить вытащить (я про дискеты )
Долго решал проблему, первая попытка была сделана на Delphi 7 работает )), но она была как отдельная программа (полностью меня не устроила), хотелось что то другое хотел что бы файл можно было бы подписать не посредственно из 1С. И вот все таки решил проблему )).
Не чего нового в обработке почти нет с точки зрения выгрузки в DBF.
Вся особенность заключается в написании батника. И так начнем поэтапно.
- Должна стоять ПО Sbersign
- скачать NirCMD нужна для отсылки пароля при подписи файла кличем ЭЦП
- Скачать Virtual Floppy Drive. эмулятор дисковода для создания виртуальных дискет
Для начало на машине в настройках «Языка и службы текстового ввода» в параметрах клавы задать сочетание клавиш (допустим анг-CTRL+SHIFT+1 а для рус-CTRL+SHIFT+2)Вы спросите зачем это нужно …. а затем что при подписи файла ПО Sbersign он запрашивает пароль, а мой батник его отправляет, так вот если раскладка не верна, то и пароль будет не верен, по этому батник ссылаясь на эту комбинацию меняет раскладку на анг и возвращает обратно в рус.
Теперь настраиваем VFP все описания по настройке VFP приведены в ссылках.
кидаем в католокИБ 1С NirCMD скаченный батник New2.bat.
В extforms обработку по выгрузке в ДБФ
настраиваем New2.bat под свою систему…
1:C:
ircmdc.exe cmdwait 100 sendkeypress ctrl+leftshift+1- устанавливает раскладку анг
2:start «» /b C:
ircmdc.exe cmdwait 1000 sendkeypress «пароль администратора домена пример: 1 2 3 4 (символы писать через пробел)» enter
runas /user:Domenuser (доменпользователь(админ)) «c:Virtual Floppyvfd.exe close a:» — извлекает дискету из виртуального дисковода с админскими правами
rem — podpisat fail
3:start «» /b C:
ircmdc.exe cmdwait 5000 sendkeypress z leftshift+M leftshift+W r enter — запуск nircmd c паролем ЭЦП
rem — %1 param/ peredaet put k failu
4:C:sbersignsbersign.exe /s %1 -запуск sbersign для подписи файла
…
…
rem — menyaem raskladku na Ru
C:
ircmdc.exe cmdwait 100 sendkeypress ctrl+leftshift+2
НЕ забывайте разрулить права не то не подпишет (sbersign не умет подписывать сетевые файлы)
Не судите строго если что то не смог объяснить …
Автор читай художественную литературу и по более, повышай гуманитарный уровень. Это ж позор — вроде специалист умственного труда, а стилистика и пунктуация на уровне 5-го класса средней школы.
(1) спс )) буду знать
«
» — но умеет подписывать на подключенном сетевом диске.
Да и с Virtual Floppy заморочки лишние, достаточно в настройках указать путь где лежит ЭЦП, хоть на на этом же диске. Если подписей несколько, то можно записать их все на одну флешку в разные подпапки, а настройки путей для каждой подписи изменять reg-файлом.