Имя: Пароль:
1C
1С v8
Как в запросе присвоить значение СправочникСсылка
,
0 PeshaS
 
18.01.12
12:40
Как в запросе указать что нужен тип СправочникСсылка.

Я делаю через ТИП(Справочник.Валюты)КАК ВалютаВзаиморасчетов. При выполнении запроса поле ВалютаВзаиморасчетов ставит в значение Неопределенно.
1 mikecool
 
18.01.12
12:41
Выразить
2 PeshaS
 
18.01.12
12:43
(1) ВЫРАЗИТЬ ТИП(Справочник.Валюты) КАК ВалютаВзаиморасчетов правильно я понял???
3 PeshaS
 
18.01.12
12:46
(1) пишет Таблица не найдена ВалютаВзаиморасчетов
4 1nf
 
18.01.12
12:49
Автор, изложи подробней задачу, пока ничего не понятно
5 Dmitrii
 
гуру
18.01.12
12:52
(0) Нужен именно ТИП или ЗНАЧЕНИЕ нужного типа?
6 PeshaS
 
18.01.12
12:52
(5) нужен типзначения
7 Dmitrii
 
гуру
18.01.12
12:56
(6) Странно... Из твоего вопроса в (0) следует, что тебе нужен не тип, а именно значение определенного типа....

Можно попробовать так:

ТИПЗНАЧЕНИЯ(ЗНАЧЕНИЕ(Справочник.Валюты.ПустаяСсылка)) КАК ТипВалюты
8 PeshaS
 
18.01.12
12:57
(7) попробую
9 PeshaS
 
18.01.12
13:00
(7) Поле имеет тип NULL не работает так.

Все равно спасибо.
10 PeshaS
 
18.01.12
13:40
Хорошо нет ответа по поводу запроса, тогда подскажите: Как при переборе запроса присвоить значение Справочники.Валюты, а конкретнее ДоговорКонтрагента.ВалютаВзаиморасчетов в одном случае, а в другом ДокументРасчета.ВалютаДокумента.
Первоначальное значение поля ВалютаВзаиморсчетов Null
Я пробую так  
РезультатЗапроса.ВалютаВзаиморсчетов = РезультатЗапроса.Контрагент.ОсновнойДоговорКонтрагента.ВалютаВзаиморасчетов
в итоге получаю значение Неопределено. При этом РезультатЗапроса.Контрагент.ОсновнойДоговорКонтрагента.ВалютаВзаиморасчетов равно USD (с типом СправочникСсылка.Валюты)
11 1с-кин
 
18.01.12
13:53
(10) > РезультатЗапроса.Контрагент.ОсновнойДоговорКонтрагента.ВалютаВзаиморасчетов
- не делайте так!
разименования - это бич 1С, даже не думайте о нескольких точках...
>Как при переборе запроса присвоить значение Справочники.Валюты
- а зачем при переборе? задайте конкретные значения сразу в запросе - через Запрос.УстановитьПараметр = (Валюта, "Валюта");
12 Ненавижу 1С
 
гуру
18.01.12
13:55
в одной теме:
NULL
НЕОПРЕДЕЛЕНО
ПУСТАЯ ССЫЛКА
это чудо какое то!
13 PeshaS
 
18.01.12
14:06
(10) в том-то и дело что мне в запросе надо получить ВалютаВзаиморасчетов тип СправочникСсылка.Валюты никто не мог подсказать как это сделать в запросе вот и мудрую через перебор, все равно мне надо делать перебор, вычислять суммуоплаты исходя из того что получили, из того что заказали (если есть предоплата в %)
14 PeshaS
 
18.01.12
14:07
(12) не иронизируй не можешь помочь, так не мешай.
15 PeshaS
 
18.01.12
14:07
(12) помоги хоть так.
16 PeshaS
 
18.01.12
14:08
(11) ну всеравно спасибо
17 PeshaS
 
18.01.12
14:09
Ладно пойду каким нибудь другим путем всем СПАСИБО!!!
18 Ненавижу 1С
 
гуру
18.01.12
14:10
насчет запроса: подумай откуда у тебя NULL у валют появился
я же текст запроса не вижу
19 Очкарик
 
18.01.12
14:11
это невозможно
20 PeshaS
 
18.01.12
14:18
(18) по просьбе, правда я упростил до одного регистра.

ВЫБРАТЬ
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Контрагент КАК Контрагент,
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Сделка КАК Сделка,
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Сделка.Дата КАК СделкаДата,
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДокументРасчетовСКонтрагентом КАК ДокументРасчета,
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДокументРасчетовСКонтрагентом.Дата КАК ДокументРасчетаДата,
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.СуммаВзаиморасчетовПриход КАК СуммаОплаты,
   ВЫБОР
       КОГДА ТИПЗНАЧЕНИЯ(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДокументРасчетовСКонтрагентом) = ТИП(Документ.ВозвратТоваровПоставщику)
           ТОГДА ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.СуммаВзаиморасчетовРасход * -1
       ИНАЧЕ ВЫБОР
               КОГДА ТИПЗНАЧЕНИЯ(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДокументРасчетовСКонтрагентом) = ТИП(Документ.ПоступлениеТоваровУслуг)
                   ТОГДА ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДокументРасчетовСКонтрагентом.СуммаДокумента
               ИНАЧЕ ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.СуммаВзаиморасчетовРасход
           КОНЕЦ
   КОНЕЦ КАК СуммаПрихода,
   0 КАК ОплатитьПоСделке,
   0 КАК СуммаДолга,
   0 КАК СуммаКОплате,
   ТИП(Справочник.Валюты) КАК ВалютаВзаиморасчетов
ИЗ
   РегистрНакопления.ВзаиморасчетыСКонтрагентамиПоДокументамРасчетов.ОстаткиИОбороты(, &КонецПериода, , , Организация = &Организация) КАК ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты

ОБЪЕДИНИТЬ ВСЕ

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

ОБЪЕДИНИТЬ ВСЕ

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

УПОРЯДОЧИТЬ ПО
   Контрагент,
   СделкаДата,
   Сделка,
   ДокументРасчетаДата
ИТОГИ
   СУММА(СуммаОплаты),
   СУММА(СуммаПрихода),
   СУММА(ОплатитьПоСделке),
   СУММА(СуммаДолга),
   СУММА(СуммаКОплате)
ПО
   Контрагент,
   Сделка
21 НЕА123
 
18.01.12
14:27
(20)
что хотел то и получил. чи я не разумию...
22 Dmitrii
 
гуру
18.01.12
14:28
Автор - дятел. Не понимает чем отличается ЗНАЧЕНИЕ от ТИПА значения.

(0) Я тебя русским языком спрашивал в (5) и в (7) что тебе нужно.

Приведение типов:

ВЫРАЗИТЬ(МоёПолеЗапроса КАК Справочник.Валюты)

Проверка на NULL:

ВЫБОР КОГДА МоёПолеЗапроса ЕСТЬ NULL ТОГДА ЗНАЧЕНИЕ(Справочник.Валюты.ПустаяСсылка) ИНАЧЕ МоёПолеЗапроса КОНЕЦ

или

ЕСТЬNULL(МоёПолеЗапроса, ЗНАЧЕНИЕ(Справочник.Валюты.ПустаяСсылка))
23 НЕА123
 
18.01.12
14:30
+(21)
хотя... в настоящем запросе не NULL, а ВЕЗДЕ
ТИП(Справочник.Валюты) КАК ВалютаВзаиморасчетов
?
24 PeshaS
 
18.01.12
14:40
(22) Сам ДЯТЕЛ если спрашиваю значит не понимаю как это сделать.

да воистину "Волшебный форум" обзовут, а потом подскажут...

(22) если видишь что не понимаю (5) кинь ссылку что-бы разобрался, а не молчать.
25 PeshaS
 
18.01.12
14:41
а после ругаться можно если я не въеду...
26 hhhh
 
18.01.12
14:46
(25) всё-таки объясни на пальцах, за каким тебе понадобился тип справочника валют? У тебя что, несколько справочников валют задано в конфигурации?
27 Defender aka LINN
 
18.01.12
14:49
(0) Значение(Справочник.Валюты.ПустаяСсылка) КАК ВалютаВзаиморасчетов

Развели тут флуда...
28 Dmitrii
 
гуру
18.01.12
14:55
Вот и помога
29 Dmitrii
 
гуру
18.01.12
14:56
й после этого людям....