8.х Помогите плиз...

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем еIIIkuHkoT, 25 апр 2013.

  1. TopicStarter Overlay
    еIIIkuHkoT
    Offline

    еIIIkuHkoT

    Регистрация:
    24 апр 2013
    Сообщения:
    11
    Симпатии:
    0
    Баллы:
    1
    Всем привет! Огромная просьба, не судите строго, я только начал изучать программирование на 1с 8.2.

    В общем ситуация такая, есть справочник ФилиалыКонтрагентов, на произвольной форме создаю реквизит ДеревоЗначений - СписокФилиалов и пытаюсь запихать в него весь список ФилиаловКонтрагентов из этого справочника. Пишу вот такую процедуру:


    &НаСервере
    Процедура ПолучитьФилиалыПоЗпросу()
    Запрос = Новый Запрос ("ВЫБРАТЬ
    | ФилиалыКонтрагентов.Ссылка
    |ИЗ
    | Справочник.ФилиалыКонтрагентов КАК ФилиалыКонтрагентов");
    РезультатЗапроса = Запрос.Выполнить();
    Филиалы = РезультатЗапроса.Выгрузить();
    ЗначениеВРеквизитФормы(Филиалы, "СписокФилиалов");
    КонецПроцедуры


    &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    ПолучитьФилиалыПоЗпросу()
    КонецПроцедуры

    Выдает такую вот ошибку:


    {ОбщаяФорма.РабочийСтол.Форма(36)}: Ошибка при вызове метода контекста (ЗначениеВРеквизитФормы)
    ЗначениеВРеквизитФормы(Филиалы, "СписокФилиалов");
    по причине:
    Недопустимое значение параметра (параметр номер '2')

    Подскажите пожалуйста, что у меня не правильно?
  2. Aston
    Offline

    Aston Опытный в 1С

    Регистрация:
    6 июн 2012
    Сообщения:
    467
    Симпатии:
    3
    Баллы:
    29
    Ошибка в ЗначениеВРеквизитФормы не находит такой реквизит формы, обратитесь по полному пути к реквезиту - попробуйте.
    Не помню как передается таблица значений между серверами, я бы наверно заполнил массив, а потом на клиенте пербрал бы его и заполнил реквизит формы, а ещё лучше не парится и использовать динасический список).
  3. TopicStarter Overlay
    еIIIkuHkoT
    Offline

    еIIIkuHkoT

    Регистрация:
    24 апр 2013
    Сообщения:
    11
    Симпатии:
    0
    Баллы:
    1
    Я согласен. Но это просто тренировка. Вообще задача стоит в следующем:
    1) Осуществить поиск в этом списке Филиалов например при изминении еще какого нить реквизита форма, чтоб оставались лишь те Филилалы в наименовании которых присутствует значение этого реквизита.
    2) Так же у каждого Филиала есть свои виды деятельности записывающиеся через Регистр сведений, тут так же нужно сделать поиск. Например еще один реквизит формы с сылкой на справичник ВидыДеятельности, и при выборе Деятельности в этом реквизите оставались лишь те Филиалы у которых этот вид деятельности присутствует.

    Помогите плиз реализовать поиск по видам деятельности, эта функция в конфигурации на данный момент самая важная, меня на работе имеют уже.

    Если требуется могу выложить конфигурацию.
  4. TopicStarter Overlay
    еIIIkuHkoT
    Offline

    еIIIkuHkoT

    Регистрация:
    24 апр 2013
    Сообщения:
    11
    Симпатии:
    0
    Баллы:
    1
    Еще появился такой вопрос. Есть время работы, например с 10:00 до 24:00, 24:00 1с не дает написать а если ставишь 00:00 то тогда вообще ничего не отображается. Единственный вариант это 23:59 ставить. Эту проблему как то можно исправить?
  5. Aston
    Offline

    Aston Опытный в 1С

    Регистрация:
    6 июн 2012
    Сообщения:
    467
    Симпатии:
    3
    Баллы:
    29
    Где вы это время используете и как в запросах получаешь дату на конец дня а если используешь виртуальную таблицу остатков, то надо использовать границу.
  6. TopicStarter Overlay
    еIIIkuHkoT
    Offline

    еIIIkuHkoT

    Регистрация:
    24 апр 2013
    Сообщения:
    11
    Симпатии:
    0
    Баллы:
    1
    Время нигде не используется просто реквизит справочнка тип значение дата формат ДФ='ЧЧ:мм'отображается на произвольной форме при выборе из списка филиала. То есть в списке выбераем строку с нужным филиалом и отображается вся информация о текущем филиале виды деятельности, адрес, телефоны и режим работы.
  7. TopicStarter Overlay
    еIIIkuHkoT
    Offline

    еIIIkuHkoT

    Регистрация:
    24 апр 2013
    Сообщения:
    11
    Симпатии:
    0
    Баллы:
    1
    Помогите составить запоос плиз на выборку филиалов по виду деятельности. Очень важно.
  8. TopicStarter Overlay
    еIIIkuHkoT
    Offline

    еIIIkuHkoT

    Регистрация:
    24 апр 2013
    Сообщения:
    11
    Симпатии:
    0
    Баллы:
    1
    &НаСервере
    Процедура ПолучитьФилиалыПоЗпросу()
    Запрос = Новый Запрос ("ВЫБРАТЬ
    | ФилиалыКонтрагентов.Ссылка
    |ИЗ
    | РегистрСведений.ВидДеятельностиФилиала КАК ВидДеятельностиФилиала
    | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФилиалыКонтрагентов КАК ФилиалыКонтрагентов
    | ПО ВидДеятельностиФилиала.ФилиалКонтрагента = ФилиалыКонтрагентов.Ссылка
    |ГДЕ
    | ВидДеятельностиФилиала.ВидДеятельности = &ВидДеятельности");

    Запрос.УстановитьПараметр("ВидДеятельности", ПоискВидДеятельности);

    КонецПроцедуры

    Написал вот такую вот процедуру с запросом, если все правильно то как выгрузить результат запроса в Динамический список?
  9. TopicStarter Overlay
    еIIIkuHkoT
    Offline

    еIIIkuHkoT

    Регистрация:
    24 апр 2013
    Сообщения:
    11
    Симпатии:
    0
    Баллы:
    1
    Народ ну помогите пожалуйста. Как выгрузить результат запроса в динамический список? У меня сроки до понедельника.
  10. Aston
    Offline

    Aston Опытный в 1С

    Регистрация:
    6 июн 2012
    Сообщения:
    467
    Симпатии:
    3
    Баллы:
    29
    Кидаете на форму ДинамическийСписок и настраиваете в конфигураторе. Ставите галочку Произвольны Запрос, ниже выбираете Открыть, потом вставляете ваш запрос и настраиваете отбор сортировку не в запросе а в отделной вкладке, если таковые нужны. Выбираете основную таблицу - это то что мы даем редактировать. И http://v8.1c.ru/metod/faq2/answer.jsp?id=638
  11. TopicStarter Overlay
    еIIIkuHkoT
    Offline

    еIIIkuHkoT

    Регистрация:
    24 апр 2013
    Сообщения:
    11
    Симпатии:
    0
    Баллы:
    1
    Так ведь мне нужно чтоб отбор срабатывал при определенном событии, например при изменении поля ПоискВидДеятельности. Если я запрос опишу в самом ДинамическомСписке как и куда я буду обращаться?
  12. Aston
    Offline

    Aston Опытный в 1С

    Регистрация:
    6 июн 2012
    Сообщения:
    467
    Симпатии:
    3
    Баллы:
    29
    Ну ты даешь. Меняй параметры при Создании на сервере и при изменении твоего объекта. У меня такое чувство что ты прочитал, не попробовал и сразу вопрос задал.
  13. TopicStarter Overlay
    еIIIkuHkoT
    Offline

    еIIIkuHkoT

    Регистрация:
    24 апр 2013
    Сообщения:
    11
    Симпатии:
    0
    Баллы:
    1
    Aston попровь меня плизз... В модуле формы написал:



    &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    ПараметрыФормы = Новый Структура("ВидДеятельности", Элементы.ПоискВидДеятельности);
    ТаблицаФилиаловКонтрагентов.Параметры.УстановитьЗначениеПараметра("ВидДеятельности", Элементы.ПоискВидДеятельности);
    КонецПроцедуры


    &НаКлиенте
    Процедура ПоискВидДеятельностиПриИзменении(Элемент)
    ПараметрыФормы = Новый Структура("ВидДеятельности", Элементы.ПоискВидДеятельности);
    ТаблицаФилиаловКонтрагентов.Параметры.УстановитьЗначениеПараметра("ВидДеятельности", Элементы.ПоискВидДеятельности);
    КонецПроцедуры

    Произвольный запрос в динамическом списке:


    ВЫБРАТЬ
    СправочникФилиалыКонтрагентов.Ссылка,
    СправочникФилиалыКонтрагентов.ВерсияДанных,
    СправочникФилиалыКонтрагентов.ПометкаУдаления,
    СправочникФилиалыКонтрагентов.Предопределенный,
    СправочникФилиалыКонтрагентов.Владелец,
    СправочникФилиалыКонтрагентов.Код,
    СправочникФилиалыКонтрагентов.Наименование,
    СправочникФилиалыКонтрагентов.Адрес,
    СправочникФилиалыКонтрагентов.Сайт,
    СправочникФилиалыКонтрагентов.Контрагент,
    СправочникФилиалыКонтрагентов.ЭлектроннаяПочта,
    СправочникФилиалыКонтрагентов.Комментарий,
    СправочникФилиалыКонтрагентов.ПнС,
    СправочникФилиалыКонтрагентов.ПнДо,
    СправочникФилиалыКонтрагентов.ПнОбС,
    СправочникФилиалыКонтрагентов.ПнОбДо,
    СправочникФилиалыКонтрагентов.ВтС,
    СправочникФилиалыКонтрагентов.ВтДо,
    СправочникФилиалыКонтрагентов.ВтОбС,
    СправочникФилиалыКонтрагентов.ВтОбДо,
    СправочникФилиалыКонтрагентов.СрС,
    СправочникФилиалыКонтрагентов.СрДо,
    СправочникФилиалыКонтрагентов.СрОбС,
    СправочникФилиалыКонтрагентов.СрОбДо,
    СправочникФилиалыКонтрагентов.ЧтС,
    СправочникФилиалыКонтрагентов.ЧтДо,
    СправочникФилиалыКонтрагентов.ЧтОбС,
    СправочникФилиалыКонтрагентов.ЧтОбДо,
    СправочникФилиалыКонтрагентов.ПтС,
    СправочникФилиалыКонтрагентов.ПтДо,
    СправочникФилиалыКонтрагентов.ПтОбС,
    СправочникФилиалыКонтрагентов.ПтОбДо,
    СправочникФилиалыКонтрагентов.СбС,
    СправочникФилиалыКонтрагентов.СбДо,
    СправочникФилиалыКонтрагентов.СбОбС,
    СправочникФилиалыКонтрагентов.СбОбДо,
    СправочникФилиалыКонтрагентов.ВсС,
    СправочникФилиалыКонтрагентов.ВсДо,
    СправочникФилиалыКонтрагентов.ВсОбС,
    СправочникФилиалыКонтрагентов.ВсОбДо
    ИЗ
    РегистрСведений.ВидДеятельностиФилиала КАК ВидДеятельностиФилиала
    ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФилиалыКонтрагентов КАК СправочникФилиалыКонтрагентов
    ПО ВидДеятельностиФилиала.ФилиалКонтрагента = СправочникФилиалыКонтрагентов.Ссылка
    ГДЕ
    ВидДеятельностиФилиала.ВидДеятельности = &ВидДеятельности

    Выскакивает вот такая вот ошибка:


    Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
    по причине: бла бла бла


    Ошибка отображения типов:
    Отсутствует отображение для типа 'ПолеФормы'
  14. Aston
    Offline

    Aston Опытный в 1С

    Регистрация:
    6 июн 2012
    Сообщения:
    467
    Симпатии:
    3
    Баллы:
    29
    Как я вижу трабла в Элементы.ПоискВидДеятельности - это что такое в отладчике глянь, если поле формы то сам должен понять почему ошибка, Должно быть значение выбора.
    ПоискВидДеятельности - если есть в объекте то обратись не через элементы а просто ПоискВидДеятельности или Объект.ПоискВидДеятельности.
  15. TopicStarter Overlay
    еIIIkuHkoT
    Offline

    еIIIkuHkoT

    Регистрация:
    24 апр 2013
    Сообщения:
    11
    Симпатии:
    0
    Баллы:
    1
    ПоисВидДеятельности - это созданный элемент на произвольной форме с сылкой на справочник. ВидыДеятельности. Япытался обращатся и как ЭтаФорма.Элементы.ПоискВидыДеятельности но результат тот же.

    Может у Вас есть скайп или аська или еще что то? Меня реально завтра карать будут за то что нет положительного результата. Гуглю из за всех сил но не могу понять где ошибка.
  16. Aston
    Offline

    Aston Опытный в 1С

    Регистрация:
    6 июн 2012
    Сообщения:
    467
    Симпатии:
    3
    Баллы:
    29
    Skype Bilvigor
    не пиши ЭтаФорма.Элементы.ПоискВидыДеятельности
    это обращение к полю формы а тебе надо получить ссылку.
    Если ЭтаФорма.Элементы.ПоискВидыДеятельности не относится к объекту то попробуй ЭтаФорма.Элементы.ПоискВидыДеятельности.Значение - вроде точно не помню посмотри отладчиком в поле где то есть ссылка на элемент.
  17. TopicStarter Overlay
    еIIIkuHkoT
    Offline

    еIIIkuHkoT

    Регистрация:
    24 апр 2013
    Сообщения:
    11
    Симпатии:
    0
    Баллы:
    1
    Aston респект.

    Тема закрыта!
Похожие темы
  1. ZlodeyM
    Ответов:
    2
    Просмотров:
    1.041
  2. and7272
    Ответов:
    3
    Просмотров:
    545
  3. ARTEK
    Ответов:
    5
    Просмотров:
    887
Загрузка...

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