Имя: Пароль:
1C
1С v8
Привязка Заявки на РДС к расходному ордеру.
0 1976vas
 
31.03.15
09:22
Добрый день! УПП 1.3. Поменял в заявке на расходование ДС статью движения. Ранее поле Заявка в РКО содержало ссылку на эту заявку, после исправления и проведения заявки она из поля исчезла и как ее заново привязать не разберусь. Помогите, пожалуйста, если знаете!
1 шаэс
 
31.03.15
09:34
(0) глупый вопрос можно? исчезнуть она может и исчезла, а на выбор теперь ее тоже нет? совпадает вид операции в заявке и в РКО?
2 1976vas
 
31.03.15
09:37
(1) В форме выбора пусто, Вид операции совпадает (
3 Cube
 
31.03.15
09:40
Отладчик в помощь...
4 1976vas
 
31.03.15
09:40
(2) + не найду привязок...
5 1976vas
 
31.03.15
09:41
(3) Спасибо, друг )) хотел так, сходу )
6 шаэс
 
31.03.15
09:44
(5) покажите заявку и РКО
7 1976vas
 
31.03.15
09:56
(6) http://s020.radikal.ru/i708/1503/da/8a58df724e54.png http://s006.radikal.ru/i214/1503/a5/2ed19f3ee5df.png Может из-за того, что в заявке кассы нет?
8 1976vas
 
31.03.15
09:59
(7) Поставил кассу - один ...
9 шаэс
 
31.03.15
10:09
(8) а если на основании сделать РКО, то поле заполнится?
10 eklmn
 
гуру
31.03.15
10:11
у тебя РКО раньше заявки выписан
11 1976vas
 
31.03.15
10:14
(9) Да, по идее заполнится, мне сейчас привязать надо.
(10) И теперь никак не привязать?
12 1976vas
 
31.03.15
10:17
(11) (10) Не, заявка раньше, Дата расхода в заявке раньше.
13 1976vas
 
31.03.15
10:27
Подбор идет через ОбработкаОбъект и в     СтруктураПараметров.Свойство("ДокументРасчетовСКонтрагентом",ОбработкаОбъект.ДокументРасчетовСКонтрагентом);
этом свойстве - неопределено почему-то.
14 1976vas
 
31.03.15
10:58
Докопался до запроса, сложноватый.
15 шаэс
 
31.03.15
11:33
(11) а Вы не по идее, а заполните на основании, может какие-нибудь, Вам кажущимися ненужными, поля заполнятся еще.
16 1976vas
 
31.03.15
11:37
(15) Я не могу в рабочей базе ковырять)) В принципе можно посмотреть по другим документам, где заявка привязана, попробую, спасибо. Сейчас с запросом разбираюсь, почему-то пустой на выходе.
17 1976vas
 
31.03.15
12:01
Запрос такой

ВЫБРАТЬ
    ПланируемыеОстатки.ДоговорКонтрагента,
    ПланируемыеОстатки.Сделка,
    ПланируемыеОстатки.ДокументРасчетовСКонтрагентом,
    ПланируемыеОстатки.СтатьяДвиженияДенежныхСредств,
    ПланируемыеОстатки.Проект,
    ПланируемыеОстатки.ЗаявкаНаРасходование КАК ДокументПланирования,
    ПланируемыеОстатки.ЗаявкаНаРасходование.СуммаДокумента КАК СуммаДокумента,
   ПланируемыеОстатки.СуммаОстаток КАК СуммаПлатежа,
   ПланируемыеОстатки.СуммаВзаиморасчетовОстаток КАК СуммаВзаиморасчетов
ПОМЕСТИТЬ ПланируемыеПлатежи
ИЗ
    РегистрНакопления.ЗаявкиНаРасходованиеСредств.Остатки(,( (ЗаявкаНаРасходование.ВалютаДокумента=&ПустойВалютаДокумента ИЛИ ЗаявкаНаРасходование.ВалютаДокумента= &ВалютаДокумента)
И (ЗаявкаНаРасходование.ФормаОплаты=&ПустойФормаОплаты ИЛИ ЗаявкаНаРасходование.ФормаОплаты В (&ФормаОплаты))
И (ЗаявкаНаРасходование.Контрагент=&Контрагент ИЛИ ЗаявкаНаРасходование.Контрагент=&ПустойКонтрагент)
И ДоговорКонтрагента=&ДоговорКонтрагента
И (СтатьяДвиженияДенежныхСредств=&ПустойСтатьяДвиженияДенежныхСредств ИЛИ СтатьяДвиженияДенежныхСредств=&СтатьяДвиженияДенежныхСредств)
И ЗаявкаНаРасходование.ВидОперации = &ВидОперации
И (ЗаявкаНаРасходование.Организация=&ПустойОрганизация ИЛИ ЗаявкаНаРасходование.Организация=&Организация)))КАК ПланируемыеОстатки
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ЗаявкиНаРасходование.ДокументПланирования
ПОМЕСТИТЬ ПланируемыеПлатежиПодтвержденные
ИЗ
    (ВЫБРАТЬ
        ПланируемыеПлатежи.ДокументПланирования КАК ДокументПланирования
    ИЗ
        ПланируемыеПлатежи КАК ПланируемыеПлатежи
    
    СГРУППИРОВАТЬ ПО
        ПланируемыеПлатежи.ДокументПланирования) КАК ЗаявкиНаРасходование
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Задача.ЗадачиПоЗакупкам КАК ЗадачиПоЗакупкам
        ПО ЗаявкиНаРасходование.ДокументПланирования = ЗадачиПоЗакупкам.БизнесПроцесс.ЗаявкаНаРасходованиеДС
            И (ЗадачиПоЗакупкам.ТочкаМаршрута В (&МассивТочекПодтверждениеГотовности)
                И ЗадачиПоЗакупкам.Выполнена)

СГРУППИРОВАТЬ ПО
    ЗаявкиНаРасходование.ДокументПланирования
;

ВЫБРАТЬ
    ПланируемыеДвиженияОстатки.ДоговорКонтрагента,
    ПланируемыеДвиженияОстатки.Сделка,
    ПланируемыеДвиженияОстатки.ДокументРасчетовСКонтрагентом,
    ПланируемыеДвиженияОстатки.СтатьяДвиженияДенежныхСредств,
    ПланируемыеДвиженияОстатки.Проект,
    ПланируемыеДвиженияОстатки.ДокументПланирования КАК ДокументПланирования,
    ПланируемыеДвиженияОстатки.ДокументПланирования.СуммаДокумента КАК СуммаДокумента,
ВЫРАЗИТЬ
    (ВЫБОР
        КОГДА НЕ СУММА(ПланируемыеДвиженияОстатки.СуммаПлатежа)=0
            ТОГДА СУММА(ПланируемыеДвиженияОстатки.СуммаПлатежа)
        КОГДА ПланируемыеДвиженияОстатки.ДоговорКонтрагента.ВалютаВзаиморасчетов=&ВалютаДокумента
            ТОГДА СУММА(ПланируемыеДвиженияОстатки.СуммаВзаиморасчетов)
        КОГДА СУММА(ПланируемыеДвиженияОстатки.СуммаПлатежа)=0  
            И НЕ КурсыДоговоры.Курс=0
            И НЕ &КурсДокумента=0
            ТОГДА СУММА(ПланируемыеДвиженияОстатки.СуммаВзаиморасчетов)*КурсыДоговоры.Курс * &КратностьДокумента
            / (&КурсДокумента * КурсыДоговоры.Кратность)
        ИНАЧЕ
            0
        КОНЕЦ КАК ЧИСЛО (15,2)) КАК СуммаПлатежа,
ВЫРАЗИТЬ
    (ВЫБОР
        КОГДА СУММА(ПланируемыеДвиженияОстатки.СуммаПлатежа)=0
            ТОГДА КурсыДоговоры.Курс
        КОГДА ПланируемыеДвиженияОстатки.ДоговорКонтрагента.ВалютаВзаиморасчетов=&ВалютаДокумента
            ТОГДА &КурсДокумента
        КОГДА НЕ СУММА(ПланируемыеДвиженияОстатки.СуммаПлатежа)=0  
            И НЕ &КурсДокумента=0
            И НЕ СУММА(ПланируемыеДвиженияОстатки.СуммаВзаиморасчетов)= 0
            И НЕ &КратностьДокумента=0 Тогда
            СУММА(ПланируемыеДвиженияОстатки.СуммаПлатежа) * &КурсДокумента * КурсыДоговоры.Кратность
                        / (СУММА(ПланируемыеДвиженияОстатки.СуммаВзаиморасчетов) * &КратностьДокумента)
        ИНАЧЕ
            0
        КОНЕЦ КАК ЧИСЛО (10,4)) КАК КурсВзаиморасчетов,
ВЫРАЗИТЬ
    (ВЫБОР
        КОГДА ПланируемыеДвиженияОстатки.ДоговорКонтрагента.ВалютаВзаиморасчетов=ПланируемыеДвиженияОстатки.ДокументПланирования.ВалютаДокумента
            ТОГДА ПланируемыеДвиженияОстатки.ДокументПланирования.КурсДокумента
        КОГДА НЕ СУММА(ПланируемыеДвиженияОстатки.СуммаПлатежа)=0  
            И НЕ ПланируемыеДвиженияОстатки.ДокументПланирования.КурсДокумента=0
            И НЕ СУММА(ПланируемыеДвиженияОстатки.СуммаВзаиморасчетов)= 0
            И НЕ ПланируемыеДвиженияОстатки.ДокументПланирования.КратностьДокумента=0 Тогда
            СУММА(ПланируемыеДвиженияОстатки.СуммаПлатежа) * ПланируемыеДвиженияОстатки.ДокументПланирования.КурсДокумента * КурсыДоговоры.Кратность
                        / (СУММА(ПланируемыеДвиженияОстатки.СуммаВзаиморасчетов) * ПланируемыеДвиженияОстатки.ДокументПланирования.КратностьДокумента)
        ИНАЧЕ
            0
        КОНЕЦ КАК ЧИСЛО (10,4)) КАК КурсВзаиморасчетовПлан,
    ПланируемыеДвиженияОстатки.ДоговорКонтрагента.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
    СУММА(ПланируемыеДвиженияОстатки.СуммаВзаиморасчетов) КАК СуммаВзаиморасчетов,
    ВЫБОР
        КОГДА ПланируемыеДвиженияОстатки.ДоговорКонтрагента.ВалютаВзаиморасчетов=&ВалютаДокумента
            ТОГДА &КратностьДокумента
        ИНАЧЕ
            КурсыДоговоры.Кратность
        КОНЕЦ КАК КратностьВзаиморасчетов,
    ПланируемыеДвиженияОстатки.ДокументПланирования.ДатаРасхода КАК ДатаДвижения
ИЗ (
    ВЫБРАТЬ
        ПланируемыеПлатежи.ДоговорКонтрагента,
        ПланируемыеПлатежи.Сделка,
        ПланируемыеПлатежи.ДокументРасчетовСКонтрагентом,
        ПланируемыеПлатежи.СтатьяДвиженияДенежныхСредств,
        ПланируемыеПлатежи.Проект,
        ПланируемыеПлатежи.ДокументПланирования,
        ПланируемыеПлатежи.СуммаДокумента,
       ПланируемыеПлатежи.СуммаПлатежа,
       ПланируемыеПлатежи.СуммаВзаиморасчетов
    ИЗ
        ПланируемыеПлатежи        
    ГДЕ
        ПланируемыеПлатежи.ДокументПланирования В (ВЫБРАТЬ ПланируемыеПлатежиПодтвержденные.ДокументПланирования ИЗ ПланируемыеПлатежиПодтвержденные)        
    )КАК ПланируемыеДвиженияОстатки    
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют.СрезПоследних(&ДатаПлатежа, ) КАК КурсыДоговоры
        ПО ПланируемыеДвиженияОстатки.ДоговорКонтрагента.ВалютаВзаиморасчетов = КурсыДоговоры.Валюта
СГРУППИРОВАТЬ ПО
    ПланируемыеДвиженияОстатки.ДоговорКонтрагента,
    ПланируемыеДвиженияОстатки.Сделка,
    ПланируемыеДвиженияОстатки.ДокументРасчетовСКонтрагентом,
    ПланируемыеДвиженияОстатки.СтатьяДвиженияДенежныхСредств,
    ПланируемыеДвиженияОстатки.Проект,
    ПланируемыеДвиженияОстатки.ДокументПланирования,
    КурсыДоговоры.Курс,
    КурсыДоговоры.Кратность

Если комментирую "ПО ЗаявкиНаРасходование.ДокументПланирования = ЗадачиПоЗакупкам.БизнесПроцесс.ЗаявкаНаРасходованиеДС
            И (ЗадачиПоЗакупкам.ТочкаМаршрута В (&МассивТочекПодтверждениеГотовности)
                И ЗадачиПоЗакупкам.Выполнена)"
то заявка в окне выбора будет видна. На БП еще завязано, надо теперь разобраться с этим условием, но уже подозреваю, что заявка и РКО должны быть в рамках одного БП.
18 1976vas
 
31.03.15
12:51
При изменении договора в РКО вносится изменение СтрокаПлатеж.ДокументПланированияПлатежа=Документы.ЗаявкаНаРасходованиеСредств.ПустаяСсылка(); Заявка в РКО становится пустой ссылкой, связь между документами херится. Ну, а почему в форме выбора нет потом - написал в (17). Всем спасибо!
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.