7.7 двойной отбор (по 2-м критериям) Общий журнал

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем U3BPaLLjeHeLj, 14 июл 2008.

  1. TopicStarter Overlay
    U3BPaLLjeHeLj
    Offline

    U3BPaLLjeHeLj

    Регистрация:
    31 мар 2008
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    вот столнуля я с такой задачей ... нужно сделать так, чтобы в обще журнале документов можно было сделать отбор п 2-м критериям ... например по фирме и по документам ... то есть выбираем там "ЧП пупкин" + во втором списке для отбора устанавливае тип документа - "СчетФактураВыданный" ... чтобы отобразть только счета фактуры тлько ЧП пупкин ...

    вапще реально ли это ? как то я тут пару дней изучал модуль журнала и ниче в голову вапще не пришло как бы мне это реаизовать ... =(

    мош кто сталивалсос таким вот вопросом ? подскажите пожалуйста....
  2. Stado_adama
    Offline

    Stado_adama Модераторы Модератор

    Регистрация:
    27 ноя 2007
    Сообщения:
    1.086
    Симпатии:
    0
    Баллы:
    26
    на диске ИТС есть такая штука как настраиваемый журнал документов... не совсем то, что тебе нужно, но тем не менее... или отчетом просто сделать не хочешь? че замарачиваться-то?
  3. TopicStarter Overlay
    U3BPaLLjeHeLj
    Offline

    U3BPaLLjeHeLj

    Регистрация:
    31 мар 2008
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    хочецца простоты и удобства в использовании =) через отчет то как то это неудобно будет ... а вот настраиваемый журнал - посмотрю што за штука ... но тем не менее ... вопрос открыт =)
  4. WaRDeR
    Offline

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

    Регистрация:
    23 ноя 2006
    Сообщения:
    3.263
    Симпатии:
    14
    Баллы:
    29
    Стандартно никак. Только через отчеты.
  5. Tiger
    Offline

    Tiger Опытный в 1С

    Регистрация:
    12 июл 2006
    Сообщения:
    489
    Симпатии:
    0
    Баллы:
    26
    Можно сделать отбор и по двум критериям... а по желании и по трем
  6. TopicStarter Overlay
    U3BPaLLjeHeLj
    Offline

    U3BPaLLjeHeLj

    Регистрация:
    31 мар 2008
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1

    подкинь мысль плиз =) где копать ?
  7. Stado_adama
    Offline

    Stado_adama Модераторы Модератор

    Регистрация:
    27 ноя 2007
    Сообщения:
    1.086
    Симпатии:
    0
    Баллы:
    26
    если решил заморачиваться, то открывай общий журнал документов в ТиС и изучай...
  8. TopicStarter Overlay
    U3BPaLLjeHeLj
    Offline

    U3BPaLLjeHeLj

    Регистрация:
    31 мар 2008
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1

    Открыл, =)) смотрю ... есть поле с выбором критерия, добавил еще одно такое же ... кнопочки для выбора значений критериев ... НО ве уираетя в то что сам отбор производится методом "УстановитьОтбор" которая может это сделать только по одному критерию ... то есть если на этот выбор сделаь ещеодин то он будет выбираться из общего количества доков в журнале а не из того что получился после первого отбора ... как бы этот список (который получился после первого отбра) зафиксировать в переменную и по нему делать отбор по второму критерию ...

    ... или как нить сделать процедурку (вместо "УстановитьОтбор") и в ней реализовать множественный отбор, но что то я как то стесняюсь =)) такие аццкие процедуры ваять =)))
  9. newbie
    Offline

    newbie

    Регистрация:
    14 июл 2008
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    попробуй
    Код:
    ОткрытьПодбор("Документ.Такой-то", "ДляПодбора", КонтПодб, 0);
    КонтПодб.УстановитьОтбор("ИмяРеквизита","Значение");
    
    
  10. WaRDeR
    Offline

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

    Регистрация:
    23 ноя 2006
    Сообщения:
    3.263
    Симпатии:
    14
    Баллы:
    29
    Повторюсь еще раз.
    Все методы, использующие "УстановитьОтбор()" могут выполнить только отбор по одному реквизиту.
    Если надо более сложный отбор, тогда используются обработки, в которых формируется таблица значений, из нужных тебе элементов/документов.

    Еще как вариант, сделать дополнительный реквизит, в котором хранить суммарное значение отбора. Допустим тебе надо выполнить отбор по контрагенту и складу. Тогда в этот новый реквизит заносишь, допустим, код склада + код контрагента (строки фиксированной длинны). а потом формируешь отбор по этому полю.
  11. TopicStarter Overlay
    U3BPaLLjeHeLj
    Offline

    U3BPaLLjeHeLj

    Регистрация:
    31 мар 2008
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1

    ПОПРОБУЕМС !! =)) пасип !! =)
  12. TopicStarter Overlay
    U3BPaLLjeHeLj
    Offline

    U3BPaLLjeHeLj

    Регистрация:
    31 мар 2008
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    я вот так себе все таки и представлял ... что без допольниельной обработки заменяющей стандартый "УстановитьОтбор" ну просто никак не обойтись ... спасибо все участвующим в этом обсуждении =))) буду елать =) тема НЕ закрыта =))) сделаю - поделюсь решением =)
  13. Tiger
    Offline

    Tiger Опытный в 1С

    Регистрация:
    12 июл 2006
    Сообщения:
    489
    Симпатии:
    0
    Баллы:
    26
    Именно это я и хотел сказать

    вот рабочий пример
    создаем общий реквизит документов: ВидДокументаКлиент длиной 100 символов

    Код:
    // Вызывается из документов ПриЗаписи()
    Процедура глУстановитьРеквизитыОтбора(Конт) Экспорт
    Конт.ВидДокументаКлиент=Конт.Вид();
    Если глЕстьРеквизитШапки("Контрагент",Конт.Вид()) = 1 Тогда
    Если ПустоеЗначение(Конт.Контрагент) = 0 Тогда
    Конт.ВидДокументаКлиент = СокрЛП(Конт.Вид())+СокрЛП(ПолучитьВнутрКод(Конт.Контрагент));
    КонецЕсли;
    КонецЕсли;
    КонецПроцедуры
    
    // А это в журнале при отборе
    Процедура Отобрать()
    СтрокаОтбора = ВыбВидДокумента.ПолучитьЗначение(ВыбВидДокумента.ТекущаяСтрока())+СокрЛП(ПолучитьВнутрКод(ВыбКонтрагент));
    СчетчикЦикла = 0;
    Для СчетчикЦикла = 1 По 100-СтрДлина(СтрокаОтбора) Цикл
    СтрокаОтбора=СтрокаОтбора+" ";
    КонецЦикла;
    УстановитьОтбор("ВидДокументаКлиент",СтрокаОтбора);    
    КонецПроцедуры
    
    

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