Сравнение файлов на сервере. Обычные формы, УТ 10.3 #729672


#0 by pessok
Коллеги, привет! Вот такой затык заимел на свою голову. Есть двай файлика текстовых, там CSV. Один берется с фтп, другой генерируется программно. Надо и сравнить, и, если есть отличия, обновить на фтп. Все это обернуто в регл. задание. Столкнулся с тем, СравнениеФайлов умеет только толстый клиент. Решил пойти методом проверки ОС, через  "fc". Тут уже сервер не умеет КомандаСистемы. Решил делать через Shell. На клиенте все прекрасно отрабатывает, на сервере не хочет создавать файл... Код:
#1 by pessok
+ вполне понятно, что файлы можно сравнить методами встроенного языка, но тут уже спортивный интерес
#2 by Господин ПЖ
сервер приложений про файлы на клиенте не в курсе... или прав нет
#3 by pessok
все файлы создаются на сервере приложений, через КаталогВременныхФайлов. Посему, думается, с правами тоже не должно быть проблем
#4 by pessok
+ т.е. сам файлик проверки создается регламентным заданием и вполне успешно кладется в тем USR1CV8, тоже самое и с получением файла с фтп. А вот файл сравнения не хочет... Если выполнить просто в cmd, то файл сравнения создается нормально
#5 by Йохохо
мб надо cd сделать, у тебя > текущий каталог
#6 by Господин ПЖ
в ФайлРезультат вообще есть что-то?
#7 by pessok
нет, он при выводе должен создаваться, для того и " > "
#8 by pessok
но он не создается
#9 by Господин ПЖ
сиди сравнивай в чем разница в синтаксисе... может у тебя пробелы в путях
#10 by pessok
на клиенте все отрабатывает. если тупо вычислить строку "fc /a "+ПервыйФайл+" "+ВторойФайл+" > "+ФайлРезультат и вставить в cmd на сервере - тоже отрабатывает. а вот регламентным не хочет, и это вгоняет меня в тупик
#11 by zulu_mix
crc32 еще не предлагали?
#12 by Господин ПЖ
чота не все так просто в фоновом... какие-то костылики везде типа ТекстовыйДокумент.Вывод = ИспользованиеВывода.Разрешить;
#13 by pessok
не, и, думаю, не надо ну так по идее, вывод текстового документа делает не 1С, а fc
#14 by Господин ПЖ
ну не знаю я что еще предложить... натравливай procmon на каталог/файлы, сиди смотри кто туда приходит и с какими правами...
#15 by pessok
это уже, пардон, онанизЬм. В общем задачку решил встроенным языком, банально: будем считать, что в регл. заданиям с Wscript.Shell происходит что-то грустное :(
#16 by pessok
даже встроенным языком есть некислый прирост скорости работы, из-за прерывания обработки при первом расхождении
#17 by zulu_mix
чейта не надо? мд5 посчитать у файлов и если разные то грузить Функция DecToHex(Знач Число)     Если Число = 0 Тогда Возврат "00"; КонецЕсли;
#18 by Господин ПЖ
>будем считать, что в регл. заданиям с Wscript.Shell происходит что-то грустное :( отмазка на уровне "голова предмет темный"
#19 by pessok
если я щас начну еще пихать в регл. задание ком-объекты, то фиг его знает, что там еще отвалится :) но спасибо за идею, интересно. ну дык а какие еще варианты? может быть это пламенный привет дяде Билли, но как это отлаживать - я себе слабо представляю
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С