8.х Вернуть результаты работы команды

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

  1. TopicStarter Overlay
    Sert
    Offline

    Sert Опытный в 1С

    Регистрация:
    4 фев 2011
    Сообщения:
    365
    Симпатии:
    12
    Баллы:
    29
    Создал обработку. Добавил ей команду. Нужно чтоб команда выполнила ряд действий, в результате которых будет список так же сформирован список с результатами выполнения команды. Вот этот список нужно получить наружу для того, чтоб потом этот список передать на обработку другой обработке. (звиняйте за тавтологию)
    Как и через что это можно сделать?
    Очень не желательно (совершенно не приемлемо) использовать для этого какие-либо глобальные "хранилища", файлы и т.д.
  2. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.735
    Симпатии:
    508
    Баллы:
    204
    Через команды не очень хорошо передавать результаты, это вам не функция. Команда - это скорее процедура. Либо перестраивайте логику, либо придется штаны через голову одевать.
  3. TerANik
    Offline

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

    Регистрация:
    19 ноя 2014
    Сообщения:
    997
    Симпатии:
    70
    Баллы:
    54
    У меня возникает ряд вопросов...
    1) Об одних и тех же понятиях команды разговаривают предыдущие постеры?
    2) В общих чертах что делают данные обработки?
  4. TopicStarter Overlay
    Sert
    Offline

    Sert Опытный в 1С

    Регистрация:
    4 фев 2011
    Сообщения:
    365
    Симпатии:
    12
    Баллы:
    29
    1. Я имел ввиду команду, которая в редактировании обработки в разделе "Команды" (не команды формы)
    2. Первая проверяет наличие новых файлов в оределённых папках и формирует массив структур (2 "колонки"). Вторая обработка должна обработать этот список, в смысле загрузить эти файлы. Хотя я наверное в рамках одной обработки сделаю, просто две команды "ПроверитьФайлы" и "ЗагрузитьФайлы". Точнее, это уже в виду отсутствия передачи параметров так решил делать. Или вообще одну команду, подумаю над этим вопросом. Просто думал разделить модули проверки и загрузки.
  5. TerANik
    Offline

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

    Регистрация:
    19 ноя 2014
    Сообщения:
    997
    Симпатии:
    70
    Баллы:
    54
    А зачем две команды? Нельзя обойтись одно? Или с точки зрения методологии проверку в загрузку прописать нельзя?
  6. TopicStarter Overlay
    Sert
    Offline

    Sert Опытный в 1С

    Регистрация:
    4 фев 2011
    Сообщения:
    365
    Симпатии:
    12
    Баллы:
    29
    Ну можно обойтись одной. Но хотелось разделить эти два действия совсем. Проверку проводить периодически. И если список не пуст, тогда запускать вторую команду. Ну и чтоб они раздельные были для удобства дальнейшего развития. Да и просто привычка разделять логически разные действия. Мало ли как в дальнейшем захочется переделывать, и мало ли какие ещё загрузки делать (проверять файлы)(заказы, например), чтоб не писать под другой вид файла (в папках с другим названием) другую обработку проверки новых файлов...
  7. TerANik
    Offline

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

    Регистрация:
    19 ноя 2014
    Сообщения:
    997
    Симпатии:
    70
    Баллы:
    54
    Ну в этом контексте полностью согласен.
  8. TopicStarter Overlay
    Sert
    Offline

    Sert Опытный в 1С

    Регистрация:
    4 фев 2011
    Сообщения:
    365
    Симпатии:
    12
    Баллы:
    29
    Сделаю я наверное через регистры...
    Создам регистр, в который при проверке буду помещать новые файлы (ссылки) и признак загружен/не загружен. А вторая команда будет получать этот список с регистра и грузить. Причём тогда можно будет для снижения нагрузки на сервер грузить не все разом, а по одному раз в какой-нибудь период (например в зависимости от количества активных пользователей). Плюс команда перемещения файла в архив после загрузки...
  9. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.549
    Симпатии:
    716
    Баллы:
    204
    отвечу, насколько понял суть проблемы: создать реквизит объекта/формы в виде ТЧ/ТЗ и работать с этим реквизитом.

    Если необходимо асинхронное выполнение двух действий, то регистр сведений.
  10. TopicStarter Overlay
    Sert
    Offline

    Sert Опытный в 1С

    Регистрация:
    4 фев 2011
    Сообщения:
    365
    Симпатии:
    12
    Баллы:
    29
    Да, такое решение тоже возможно. Просто я изначально думал, что просто массив передавать туда сюда. Как параметры формы. В команду же передаются ПараметрКоманды и ПараметрыВыполненияКоманды. Просто я опыта работы с командами практически не имею и потому пока не очень понял возможности этих параметров, но предположил как-то их использовать можно.
    --- Объединение сообщений, 16 июн 2015 ---
    Это уже "новые" мысли у меня появились :) Изначально такая задача не стоит.
  11. TopicStarter Overlay
    Sert
    Offline

    Sert Опытный в 1С

    Регистрация:
    4 фев 2011
    Сообщения:
    365
    Симпатии:
    12
    Баллы:
    29
    Вопрос в продолжении команды. А как в обработке в модуле команды (не формы) вызвать процедуру/функцию из модуля объекта?
  12. TopicStarter Overlay
    Sert
    Offline

    Sert Опытный в 1С

    Регистрация:
    4 фев 2011
    Сообщения:
    365
    Симпатии:
    12
    Баллы:
    29
    Вопрос про вызов из модуля объекта снят.
Похожие темы
  1. -devICE-
    Ответов:
    5
    Просмотров:
    938
  2. Svb
    Ответов:
    8
    Просмотров:
    1.020
Загрузка...

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