Имя: Пароль:
1C
1C 7.7
v7: Запись логов
0 Neros
 
22.04.13
11:40
Добрый день.Помогите,столкнулся с такой проблемой:при записи логов из v7.7 и v8.2 по отдельности записываются успешно,но когда после записи из v8.2  в один лог ,то лог v7.7 записывает только цифровое значение:

Отчетность по Союз-ДС отправлена 19.04.13 17:35:42
                                19.04.13 17:59:51
1 ДенисЧ
 
22.04.13
11:40
Продолжайте наблюдения.
2 vladko
 
22.04.13
11:48
(0) что за логи, что за конфиги - не поймёшь, так что присоединяюсь к (1)
3 Neros
 
22.04.13
12:00
(2)Конфигурация предприятие,
V7.7
   Логи=СоздатьОбъект ("Текст");
   ДатаДляНазвания=Сред(Формат(ТекущаяДата(),"ДДДММГГГГ"),3);
   ДатаДляНазвания=СтрЗаменить(ДатаДляНазвания,".","");    
       
   НазваниеФайла="Logs"+ДатаДляНазвания+".txt";
   ПутьЛогов="E:\OTHER\AutoReportForBiotrade\Logs\"+ НазваниеФайла;
   Попытка
       Логи.Открыть(ПутьЛогов);    

СтрокаЛогов="Отчетность по "+НазваниеФирмы+" отправлена "+Строка(ТекущаяДата())+" "+Строка(ТекущееВремя());
   Логи.ДобавитьСтроку(СтрокаЛогов);
   Попытка
       Логи.Записать(ПутьЛогов);
   Исключение
       Сообщить ("Не удалось записать файл логов");
       Сообщить(ОписаниеОшибки());
   КонецПопытки;

v8.2
Исключение
       Сообщить(ОписаниеОшибки());
       Логи.ДобавитьСтроку(ОписаниеОшибки()+" "+Строка(ТекущаяДата()));
       ЗаписатьЛоги(Логи);
       Возврат;
   КонецПопытки;
   ПочтаНов.Отключиться();
   Для Каждого Строка Из АдресаПолучателей Цикл
       Сообщить("Письмо-отчет отправлено на адрес "+Строка);
   КонецЦикла;
   
   УдалитьФайлы(ПутьСохранения);
   
   Логи.ДобавитьСтроку("Отчетность по Атс-Н отправлена "+ТекущаяДата());
   ЗаписатьЛоги(Логи);
4 1Сергей
 
22.04.13
12:14
(3) в отладчике был?
5 Neros
 
22.04.13
12:24
(4)Да был,строка передаётся так как положено.

   Логи.ДобавитьСтроку(СтрокаЛогов);
в СтрокуЛогов передаётся
Отчетность по Союз-ДС отправлена 19.04.13 17:35:42
но на выходе получаю: 19.04.13 17:35:42
6 1Сергей
 
22.04.13
12:29
(5) видимо, восьмерка как-то не так записывает конец строки или конец файла. Посмотри в HEX какие там последние байты после записи из 7 и после записи из 8
7 ЧеловекДуши
 
22.04.13
12:42
(0)Не кошерный метод "Текст" писать в качестве лога :)
Так то метод "Текст" равносилен методу приложения "Блокнот" от Windows. Он заключается в тупом чтении всего фала в память, а в дальнейшем работать с ним.

Используй лучше это Книга знаний: Пример чтения и записи текстовых файлов (Scripting.FileSystemObject)
8 Dolly_EV
 
22.04.13
13:25
(5) в лог у тебя попадает вот это:
Логи.ДобавитьСтроку(ОписаниеОшибки()+" "+Строка(ТекущаяДата()));

просто ОписаниеОшибки() - пустое. т.е. в верхней Попытке чего-то не удалось, но - без описания этого чего-то
9 Dolly_EV
 
22.04.13
13:26
(5) а нет, вру. Так еще ТекущееВремя()...
НазваниеФирмы где-то выше собирается - там Строка?
10 Neros
 
22.04.13
13:49
(9) это из v8.2
Логи.ДобавитьСтроку(ОписаниеОшибки()+" "+Строка(ТекущаяДата()));
а проблема возникает при записи v7.7
СтрокаЛогов="Отчетность по "+НазваниеФирмы+" отправлена "+Строка(ТекущаяДата())+" "+Строка(ТекущееВремя());
   Логи.ДобавитьСтроку(СтрокаЛогов);
   Попытка
       Логи.Записать(ПутьЛогов);
11 Cthulhu
 
22.04.13
15:38
// Если немного попробовать головой не только кушать, но и думать:
Исключение
       Сообщить(ОписаниеОшибки()); // Сразу после выполнения этого кода "ОписаниеОшибки()" будет пустым! Просто потому, что ЭТОТ код выболнится БЕЗ ОШИБКИ!!
       Логи.ДобавитьСтроку(ОписаниеОшибки()+" "+Строка(ТекущаяДата()));
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн