[РЕШЕНО] Реглментное задание

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Tasya, 11 дек 2015.

  1. TopicStarter Overlay
    Tasya
    Offline

    Tasya Опытный в 1С

    Регистрация:
    9 сен 2013
    Сообщения:
    148
    Симпатии:
    3
    Баллы:
    29
    Добрый день!
    1С 8.2.19.76
    Клиент-серверный вариант

    Создала обработку: Импорт данных из csv файла и загрузка в документы.
    Файл csv лежит локально на сервере 1С
    Когда запускаю обработку на клиенте (по кнопке на произвольной формы) - все работает.
    Когда создаю регламентное задание - задание завершено успешно, но ничего не загружается.
    Служба агента 1С запущена от пользователя USR1C82, данный пользователь входит в группу Администраторы на сервере. Вот код процедуры регламентного задания:

    Код:
    &НаСервере
    Процедура ВыполнитьКоманду(ИдентификаторКоманды) Экспорт
    
         Путь = "D:\Files\1.csv";
         ТекстовыйДокумент = Новый ТекстовыйДокумент();
         ПрочитанныйФайл = ТекстовыйДокумент.Прочитать(Путь);
         КоличествоСтрок = ТекстовыйДокумент.КоличествоСтрок();
         Док = Документы.Запросы.НайтиПоНомеру("99790");
         ДокОбъект = Док.ПолучитьОбъект();
         ДокОбъект.НовоеПоле = КоличествоСтрок;
         ДокОбъект.Записать();
    КонецПроцедуры
    
    У меня не считывает файл в текстовый документ тут ТекстовыйДокумент.Прочитать(Путь). С чем это может быть связано?
  2. nomad_irk
    Online

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    Сервер не имеет доступа к файлу.
  3. TopicStarter Overlay
    Tasya
    Offline

    Tasya Опытный в 1С

    Регистрация:
    9 сен 2013
    Сообщения:
    148
    Симпатии:
    3
    Баллы:
    29
    А что сделать. чтобы он имел? Файл ничем не занят
  4. nomad_irk
    Online

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    Передать на сервер файл в виде двоичных данных.
  5. TerANik
    Offline

    TerANik Профессионал в 1С

    Регистрация:
    19 ноя 2014
    Сообщения:
    997
    Симпатии:
    70
    Баллы:
    54
    Код:
    &НаСервере
    Процедура ВыполнитьКоманду(ИдентификаторКоманды) Экспорт
    
         Путь = "D:\Files\1.csv";
         ТекстовыйДокумент = Новый ТекстовыйДокумент;
    ТекстовыйДокумент.Прочитать(Путь);
         КоличествоСтрок = ТекстовыйДокумент.КоличествоСтрок();
         Док = Документы.Запросы.НайтиПоНомеру("99790");
         ДокОбъект = Док.ПолучитьОбъект();
         ДокОбъект.НовоеПоле = КоличествоСтрок;
         ДокОбъект.Записать();
    КонецПроцедуры
    А если так?
    --- Объединение сообщений, 11 дек 2015 ---
    Ну по идее если он лежит на сервере, единственное проверить доступ на папку, он должен его видеть.?
  6. TopicStarter Overlay
    Tasya
    Offline

    Tasya Опытный в 1С

    Регистрация:
    9 сен 2013
    Сообщения:
    148
    Симпатии:
    3
    Баллы:
    29
    Так тоже не работает. ПрочитанныйФайл я добавила. чтобы проверить, читает ли он по пути файл - выяснилось, что не читает.
    Файл лежит на сервере в папке и права у пользователя USR1C82 есть на эту папку.
    Файл ничем не занят. Вроде должно работать, но не работает(((
  7. TerANik
    Offline

    TerANik Профессионал в 1С

    Регистрация:
    19 ноя 2014
    Сообщения:
    997
    Симпатии:
    70
    Баллы:
    54
    Ам.. т.е. изначальный вариант был без Прочитать?
  8. TopicStarter Overlay
    Tasya
    Offline

    Tasya Опытный в 1С

    Регистрация:
    9 сен 2013
    Сообщения:
    148
    Симпатии:
    3
    Баллы:
    29
    Изначальный вариант был такой как у вас с методом Прочитать.
    Просто я решила Результат поместить в переменную ПрочитанныйФайл и посмотреть, что она выведет - ничего.
    То есть обработка останавливается на этой строке кода.
  9. TerANik
    Offline

    TerANik Профессионал в 1С

    Регистрация:
    19 ноя 2014
    Сообщения:
    997
    Симпатии:
    70
    Баллы:
    54
    Так прочитать это не функция чтобы возвращать какой то результат. Вот последовательность которая необходима

    Код:
     Текст = Новый ТекстовыйДокумент;
    Текст.Прочитать("c:\temp\text.txt");
    КоличествоСтрок = Текст.КоличествоСтрок();
    
  10. TopicStarter Overlay
    Tasya
    Offline

    Tasya Опытный в 1С

    Регистрация:
    9 сен 2013
    Сообщения:
    148
    Симпатии:
    3
    Баллы:
    29
    Да, согласна. Но все равно не работает.

    Код:
    &НаСервере
    Процедура ВыполнитьКоманду(ИдентификаторКоманды) Экспорт
         Путь = "D:\Files\1.csv";
         ТекстовыйДокумент = Новый ТекстовыйДокумент();
         ТекстовыйДокумент.Прочитать(Путь);
         КоличествоСтрок = ТекстовыйДокумент.КоличествоСтрок();
         Док = Документы.Запросы.НайтиПоНомеру("99790");
         ДокОбъект = Док.ПолучитьОбъект();
         ДокОбъект.НовоеПоле = КоличествоСтрок;
         ДокОбъект.Записать();
    КонецПроцедуры
    Я даже в фоновом задании сообщений об ошибках никаких не получаю. Ни на что не ругается.....(((
  11. TopicStarter Overlay
    Tasya
    Offline

    Tasya Опытный в 1С

    Регистрация:
    9 сен 2013
    Сообщения:
    148
    Симпатии:
    3
    Баллы:
    29
    Неужели никто не загружает данные из файла регламентным заданием?
  12. nomad_irk
    Online

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    Загружает, просто нужно иметь более детальное представление о происходящих процессах, чего у вас пока, по всей видимости, нет.
    Не сочтите это за грубость, но, возможно, оно к вам придет чутка позже :)
  13. TopicStarter Overlay
    Tasya
    Offline

    Tasya Опытный в 1С

    Регистрация:
    9 сен 2013
    Сообщения:
    148
    Симпатии:
    3
    Баллы:
    29
    Наверное, представление о происходящих процессах приходит с опытом, который я только начинаю приобретать.
    И я думала, что на таких форумах люди у которых опыт есть, при желании подсказывают в каком направлении искать истину. Спасибо.
  14. nomad_irk
    Online

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    Так уже подсказали: что-то не так с правами доступа к файлу.
    Как вы определили, что у пользователя USR1C82 необходимые права доступа к файлу есть?
  15. TopicStarter Overlay
    Tasya
    Offline

    Tasya Опытный в 1С

    Регистрация:
    9 сен 2013
    Сообщения:
    148
    Симпатии:
    3
    Баллы:
    29
    В свойствах папки, в которой лежит файл, на вкладке Безопасность у пользователя USR1C82 выставлены все разрешения.
    Соответственно, в свойствах файла они унаследованы для этого пользователя
  16. nomad_irk
    Online

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    Хорошо. Доступ к диску D у этого пользователя так же есть?
    Сервис 1с запущен на этой же машине и через него происходит работа в БД?
  17. TopicStarter Overlay
    Tasya
    Offline

    Tasya Опытный в 1С

    Регистрация:
    9 сен 2013
    Сообщения:
    148
    Симпатии:
    3
    Баллы:
    29
    Доступ к диску D есть у группы Administrators, а пользователь USR1C82 входит в эту группу, соответственно у него тоже есть доступ к диску D.
    Служба Агент сервера 1С запущена на этой же машине и под этим же пользователем.
  18. nomad_irk
    Online

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    Хорошо. Внутри процедуры фонового задания

    НайтиФайлы("D:\", "*.*") что возвращает?
  19. TopicStarter Overlay
    Tasya
    Offline

    Tasya Опытный в 1С

    Регистрация:
    9 сен 2013
    Сообщения:
    148
    Симпатии:
    3
    Баллы:
    29
    Ничего не возвращает.
  20. TerANik
    Offline

    TerANik Профессионал в 1С

    Регистрация:
    19 ноя 2014
    Сообщения:
    997
    Симпатии:
    70
    Баллы:
    54
    Код:
    ФайлНаДиске = Новый Файл("D:\Files\1.csv");
    Сообщить(ФайлНаДиске .Существует());
    А что этот код вернет? видит ли фоновое задание файл?
Похожие темы
  1. yourname
    Ответов:
    2
    Просмотров:
    1.112
  2. RomIgnash
    Ответов:
    14
    Просмотров:
    1.397
  3. lala55
    Ответов:
    17
    Просмотров:
    520
Загрузка...

Поделиться этой страницей