7.7 Отбор в журнале

Тема в разделе "Общие вопросы "1С:Предприятие 7.7"", создана пользователем micha26, 13 июл 2011.

  1. TopicStarter Overlay
    micha26
    Offline

    micha26

    Регистрация:
    10 май 2011
    Сообщения:
    34
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте.
    Нужна помощь - требуется написать отбор в общем журнале документов, выбрать только те по которым произведена отгрузка (то есть у которых в подчинении расходные накладные).
    Не совсем понятно откуда начать.
    Заранее спасибо.
  2. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Или заводить ОБРАБОТКУ в виде журнала или делать общий реквизит и потом до установки фильтра присваивать ему значение (или при записи документа-основания) Тут уж дело вкуса....
  3. TopicStarter Overlay
    micha26
    Offline

    micha26

    Регистрация:
    10 май 2011
    Сообщения:
    34
    Симпатии:
    0
    Баллы:
    1
    Я с 1С общаюсь не так давно - насколько я понимаю, вы советуете установить графу отбора со ссылкой на общий реквизит в документе основании? (соответственно присваивать ему 1 или 0 допустим)
    Но вот здесь мне неясно:
    Как определить заведена расходная накладная на основании документа или нет?
  4. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    1) Из самой расходной накладной (вы де основание-то знаете). Это способ при записи основания.
    2) Использовать метод ВыбратьПодчиненныеДокументы. Это если устанавливать флаг перед установкой отбора
  5. TopicStarter Overlay
    micha26
    Offline

    micha26

    Регистрация:
    10 май 2011
    Сообщения:
    34
    Симпатии:
    0
    Баллы:
    1
    Ага вставить реквизит в РН, задать условие чтобы поднимался в 1 скажем если заполняються договор к примеру и ещё пара полей, и на реквизит сослаться графой отбора...Так может получится? Впрочем попробую :angry:
  6. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Не совсем... Вы же хотите видеть ОСНОВАНИЯ по которым выписана РН...
    Код:
    Процедура ПриЗаписи()
    Если ПустоеЗначение(ДокОснование)=0 Тогда //или как там у вас называется...
    Док=СоздатьОбъект("Документ");
    Док.НайтиДокумент(ДокОснование.ТекущийДокумент());
    Если Док.РеквизитФлаг=0 Тогда //нечего 10 раз писать одно и тоже
    Док.РеквизитФлаг=1;
    Док.Записать();
    КонецЕсли;
    КонецЕсли;
    КонецПроцедуры
    
    
    + предусмотреть процедуру очистки реквизита при очищении основания....
  7. TopicStarter Overlay
    micha26
    Offline

    micha26

    Регистрация:
    10 май 2011
    Сообщения:
    34
    Симпатии:
    0
    Баллы:
    1
    Вот как...Видно не туда я полез. Спасибо, попробую как вы написали.
  8. TopicStarter Overlay
    micha26
    Offline

    micha26

    Регистрация:
    10 май 2011
    Сообщения:
    34
    Симпатии:
    0
    Баллы:
    1
    //нечего 10 раз писать одно и тоже не совсем понял комментарий - поясните please.
  9. TopicStarter Overlay
    micha26
    Offline

    micha26

    Регистрация:
    10 май 2011
    Сообщения:
    34
    Симпатии:
    0
    Баллы:
    1
    Сделал как вы советовали
    В РН прописал процедуру при записи (потом поменял Если ПустоеЗначение(ДокОснование)=0 на
    Если ДокОсн<>Неопределенно ИЛИ ДокОсн <>NULL не знаю правильно ли)
    Графу отбора связал с реквизитом Flag РН
    В общем журнале вставил

    Если Вариант("Отбор по отгрузке") Тогда
    УстановитьОтбор("Flag",1);
    И - не работает. Ошибок не выкидывает, просто пустая таблица.
  10. Requin
    Offline

    Requin Опытный в 1С

    Регистрация:
    10 май 2010
    Сообщения:
    1.911
    Симпатии:
    2
    Баллы:
    29
    И что на синтаксис не ругнулось? Неправильно, у вас же 7.7 (если разделом не ошиблись)

    Реквизит должен быть не в РН, а в документе основания.
  11. TopicStarter Overlay
    micha26
    Offline

    micha26

    Регистрация:
    10 май 2011
    Сообщения:
    34
    Симпатии:
    0
    Баллы:
    1
    Честное пионерское не ругалось :angry: А почему должно было? В 7.7 NULL отсутствует?
    Кстати почему не в расходной накладной? Тогда я чего-то не понимаю...может поясните?
  12. Requin
    Offline

    Requin Опытный в 1С

    Регистрация:
    10 май 2010
    Сообщения:
    1.911
    Симпатии:
    2
    Баллы:
    29
    Ну вообще-то да, должно. У вас, скорее всего, просто есть переменные с именами Неопределенно и NULL.
    Посмотреть вложение 7935

    Вложения:

    • 0035.PNG
      0035.PNG
      Размер файла:
      3,6 КБ
      Просмотров:
      24
  13. TopicStarter Overlay
    micha26
    Offline

    micha26

    Регистрация:
    10 май 2011
    Сообщения:
    34
    Симпатии:
    0
    Баллы:
    1
    Возможно не я писал. Простите а по поводу реквизита - у меня есть реквизит ФлагЗаполнения в РН в который передается значение 1 при записи.
    Есть связанная с ним графа отбора Flag, по ней я собственно и пытаюсь отобрать нужные заказы.
  14. Requin
    Offline

    Requin Опытный в 1С

    Регистрация:
    10 май 2010
    Сообщения:
    1.911
    Симпатии:
    2
    Баллы:
    29
    Судя по вашим словам вы хотите отбирать документы, в подчинении которых есть расходные накладные:
    Т.е. документы основания, а отбор устанавливаете по РН. Где логика? Какой вид документов хотите в отборе, там реквизит и задавайте.

    У вас должен быть реквизит в документе-заказе и при записи РН вы его заполняете (реквизит документа-заказа) и записываете документ-заказа.
  15. TopicStarter Overlay
    micha26
    Offline

    micha26

    Регистрация:
    10 май 2011
    Сообщения:
    34
    Симпатии:
    0
    Баллы:
    1
    Возможно до меня дойдет хоть и не сразу :angry:
  16. TopicStarter Overlay
    micha26
    Offline

    micha26

    Регистрация:
    10 май 2011
    Сообщения:
    34
    Симпатии:
    0
    Баллы:
    1
    Процедура в РН:
    Код:
    Процедура ПриЗаписи() //предопределенная
    Если ДокОсн<>Неопределенно Тогда       // Micha  
    Док = СоздатьОбъект("Документ");
    Док = НайтиДокумент(ДокументОснование.ТекущийДокумент()); 
    Если Док.ФлагЗаполнения_1 = 0 Тогда 
    Док.ФлагЗаполнения_1 = 1;
    Док.Записать();
    КонецЕсли;
    КонецЕсли;
    
    
    Соответственно ФлагЗаполнения_1 - реквизит заказа.

    Сорру за кол-во вопросов, но я учусь самостоятельно.
  17. Requin
    Offline

    Requin Опытный в 1С

    Регистрация:
    10 май 2010
    Сообщения:
    1.911
    Симпатии:
    2
    Баллы:
    29
    В принципе верно, только тут исправьте:
    Код:
    // ...
    Док.НайтиДокумент(ДокОсн.ТекущийДокумент()); 
    // ...
    
    
    Продумать еще, как рекомендовал Бухгалтерский угодник очистку реквизита при очищении основания. Ну и не забывать, что при создании документов РН обработкой, процедура формы ПриЗаписи не вызывается.

    P.S. И все-таки Неопределенно как-то глаза режет. :angry:
  18. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    вышеприведенный код на 7.7 ВООБЩЕ не должен работать.
    Нужно вот так:
    Код:
    
    Процедура ПриЗаписи() //предопределенная
    Если ПустоеЗначение(ДокОсн)=0 Тогда 
    Док = СоздатьОбъект("Документ");
    Если Док.НайтиДокумент(ДокументОснование.ТекущийДокумент())=1 Тогда 
    Если Док.ФлагЗаполнения_1 = 0 Тогда 
    Док.ФлагЗаполнения_1 = 1;
    Док.Записать();
    КонецЕсли;
    КонецЕсли;
    КонецЕсли;
    КонецПроцедуры
    
    
  19. TopicStarter Overlay
    micha26
    Offline

    micha26

    Регистрация:
    10 май 2011
    Сообщения:
    34
    Симпатии:
    0
    Баллы:
    1
    А после написания всего этого перепроводить надо заказы? А то в все равно пустой список выдается.
  20. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Тут нужна обработка которая "пробежит" РН а не заказы. При перепроведении процедура ПриЗаписи не сработает (только интерактивно)

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