Имя: Пароль:
1C
1С v8
Как правильно написать синтаксически?
0 Босечка
 
16.12.14
10:34
|ИЗ
    |    Документ."+ВидДок+".Услуги КАК ДокументТовары" + ?(ЕстьАвтомобиль И АвтомобильВТаблице, "
    |    Документ."+ВидДок+".Товары КАК ДокументТовары"
    |ВНУТРЕННЕЕ СОЕДИНЕНИЕ
    |    Документ."+ВидДок+".Автомобили КАК ДокументАвтомобили
    |ПО
    |    ДокументТовары.ИдентификаторАвтомобиля = ДокументАвтомобили.ИдентификаторАвтомобиля И ДокументАвтомобили.Ссылка=&Ссылка", "") + "


констуктором запроса не открывается, а надо добавить строку:
    |    Документ."+ВидДок+".Товары КАК ДокументТовары"
Раньше было без нее, ошибок не было,
Надо по сути в запрос включить еще одну табличную часть.
1 aka AMIGO
 
16.12.14
10:36
Какую роль выполняет закрывающая кавычка в строке:
    |    Документ."+ВидДок+".Товары КАК ДокументТовары"
2 vicof
 
16.12.14
10:36
Одинаковые идентификаторы в запросе быть не могут
3 pessok
 
16.12.14
10:37
(1) явно роль ошибки
4 Босечка
 
16.12.14
10:51
Ошибок теперь нет, зато товары не выбираются, только одни услуги

    |ВЫБРАТЬ" + ?(ЕстьАвтомобиль, ?(АвтомобильВТаблице, "
    |    ДокументАвтомобили.Автомобиль КАК Автомобиль,", "
    |    &Автомобиль КАК Автомобиль,"), "") + "
    |    ДокументТовары.Номенклатура КАК Номенклатура,
    |    ДокументТовары.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    |    ДокументТовары.Номенклатура.ВидНоменклатуры КАК ВидНоменклатуры,
    |    ДокументТовары.СтавкаНДС КАК СтавкаНДС" + "
    |    "+?(СкладКомпании = Неопределено, ",ДокументТовары.МестоРазмещения КАК СкладКомпании", "") + "
    |    "+?(ЗначениеЗаполнено(ИмяРеквизитаДокумент), ",ДокументТовары." + ИмяРеквизитаДокумент + " КАК Партия", "") + ",
    |    "+?(ЕстьДокументПродажи,"ДокументТовары.ДокументПродажи КАК ДокументПродажи,","")+"
    |    "+?(ЕстьДокументУслуги,"ДокументУслуги.ДокументПродажи КАК ДокументПродажи,","")+"
    |    "+?(ЕстьГТД,"ДокументТовары.ГТД КАК ГТД,","")+"
    |    СУММА(ДокументТовары.Количество"+?(ПоБазовомуКоличеству,"Базовое","*ДокументТовары.Коэффициент")+") КАК Количество,
    |    СУММА(ДокументТовары.СуммаВсего) КАК Сумма,
    |    СУММА(ДокументТовары.СуммаНДС) КАК СуммаНДС,
    |    СУММА("+?(ЕстьСкидка,"ДокументТовары.СуммаСкидки","0")+ТекстСтрочнойСкидки+") КАК СуммаСкидки
    |ИЗ
    |    Документ."+ВидДок+".Услуги КАК ДокументТовары" + ?(ЕстьАвтомобиль И АвтомобильВТаблице, "
    |    Документ."+ВидДок+".Товары КАК ДокументУслуги
    |ВНУТРЕННЕЕ СОЕДИНЕНИЕ
    |    Документ."+ВидДок+".Автомобили КАК ДокументАвтомобили
    |ПО
    |    ДокументТовары.ИдентификаторАвтомобиля = ДокументАвтомобили.ИдентификаторАвтомобиля И ДокументАвтомобили.Ссылка=&Ссылка", "") + "
    |ГДЕ
    |    ДокументТовары.Ссылка = &Ссылка
    |СГРУППИРОВАТЬ ПО" + ?(ЕстьАвтомобиль И АвтомобильВТаблице, "
    |    ДокументАвтомобили.Автомобиль,", "") + "
    |    ДокументТовары.Номенклатура,
    |    ДокументТовары.ХарактеристикаНоменклатуры,
    |    ДокументТовары.СтавкаНДС" + ?(СкладКомпании = Неопределено,",
    |    ДокументТовары.МестоРазмещения", "") + ?(ЗначениеЗаполнено(ИмяРеквизитаДокумент), ",
    |    ДокументТовары." + ИмяРеквизитаДокумент, "") + "
    |    "+?(ЕстьДокументПродажи,",ДокументТовары.ДокументПродажи","")+"
    |    "+?(ЕстьДокументУслуги,",ДокументУслуги.ДокументПродажи","")+"
    |    "+?(ЕстьГТД,",ДокументТовары.ГТД","")+"
    |УПОРЯДОЧИТЬ ПО
    |    ДокументТовары.Номенклатура,
    |    ДокументТовары.ХарактеристикаНоменклатуры
    |    "+?(обЗначениеНеЗаполнено(ИмяРеквизитаДокумент),"",",ДокументТовары."+ИмяРеквизитаДокумент+" Убыв")+"
    |    "+?(ЕстьГТД,",ДокументТовары.ГТД Убыв","")+"
    |
    |");
    
    Запрос.УстановитьПараметр("Ссылка",     ШапкаДокумента.Ссылка);
    Запрос.УстановитьПараметр("Автомобиль", Автомобиль);
5 pessok
 
16.12.14
10:53
(4) ну ты и не выбираешь ничего.
вообще, если надо выбрать две таблицы, то используется ОБЪЕДИНИТЬ
6 vicof
 
16.12.14
10:53
Документ."+ВидДок+".Услуги КАК ДокументТовары" + ?(ЕстьАвтомобиль И АвтомобильВТаблице, "
    |    Документ."+ВидДок+".Товары КАК ДокументУслуги
7 vicof
 
16.12.14
10:53
услуги как товары, товары как услуги
9 Босечка
 
16.12.14
11:13
|ВЫБРАТЬ" + ?(ЕстьАвтомобиль, ?(АвтомобильВТаблице, "
    |    ДокументАвтомобили.Автомобиль КАК Автомобиль,", "
    |    &Автомобиль КАК Автомобиль,"), "") + "
    |    ДокументТовары.Номенклатура КАК Номенклатура,
    |    ДокументТовары.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    |    ДокументТовары.Номенклатура.ВидНоменклатуры КАК ВидНоменклатуры,
    |    ДокументТовары.СтавкаНДС КАК СтавкаНДС" + "
    |    "+?(СкладКомпании = Неопределено, ",ДокументТовары.МестоРазмещения КАК СкладКомпании", "") + "
    |    "+?(ЗначениеЗаполнено(ИмяРеквизитаДокумент), ",ДокументТовары." + ИмяРеквизитаДокумент + " КАК Партия", "") + ",
    |    "+?(ЕстьДокументПродажи,"ДокументТовары.ДокументПродажи КАК ДокументПродажи,","")+"
    |    "+?(ЕстьГТД,"ДокументТовары.ГТД КАК ГТД,","")+"
    |    СУММА(ДокументТовары.Количество"+?(ПоБазовомуКоличеству,"Базовое","*ДокументТовары.Коэффициент")+") КАК Количество,
    |    СУММА(ДокументТовары.СуммаВсего) КАК Сумма,
    |    СУММА(ДокументТовары.СуммаНДС) КАК СуммаНДС,
    |    СУММА("+?(ЕстьСкидка,"ДокументТовары.СуммаСкидки","0")+ТекстСтрочнойСкидки+") КАК СуммаСкидки
    |ИЗ
    |    Документ."+ВидДок+".Товары КАК ДокументТовары" + ?(ЕстьАвтомобиль И АвтомобильВТаблице, "
    |ВНУТРЕННЕЕ СОЕДИНЕНИЕ
    |    Документ."+ВидДок+".Автомобили КАК ДокументАвтомобили
    |ПО
    |    ДокументТовары.ИдентификаторАвтомобиля = ДокументАвтомобили.ИдентификаторАвтомобиля И ДокументАвтомобили.Ссылка=&Ссылка", "") + "
    |ГДЕ
    |    ДокументТовары.Ссылка = &Ссылка
    |СГРУППИРОВАТЬ ПО" + ?(ЕстьАвтомобиль И АвтомобильВТаблице, "
    |    ДокументАвтомобили.Автомобиль,", "") + "
    |    ДокументТовары.Номенклатура,
    |    ДокументТовары.ХарактеристикаНоменклатуры,
    |    ДокументТовары.СтавкаНДС" + ?(СкладКомпании = Неопределено,",
    |    ДокументТовары.МестоРазмещения", "") + ?(ЗначениеЗаполнено(ИмяРеквизитаДокумент), ",
    |    ДокументТовары." + ИмяРеквизитаДокумент, "") + "
    |    "+?(ЕстьДокументПродажи,",ДокументТовары.ДокументПродажи","")+"
    |    "+?(ЕстьГТД,",ДокументТовары.ГТД","")+"
    |УПОРЯДОЧИТЬ ПО
    |    ДокументТовары.Номенклатура,
    |    ДокументТовары.ХарактеристикаНоменклатуры
    |    "+?(обЗначениеНеЗаполнено(ИмяРеквизитаДокумент),"",",ДокументТовары."+ИмяРеквизитаДокумент+" Убыв")+"
    |    "+?(ЕстьГТД,",ДокументТовары.ГТД Убыв","")+"
    |
    | ОБЪЕДИНИТЬ
    |
    |ВЫБРАТЬ " + ?(ЕстьАвтомобиль, ?(АвтомобильВТаблице, "
    |    ДокументАвтомобили.Автомобиль КАК Автомобиль,", "
    |    &Автомобиль КАК Автомобиль,"), "") + "
    |    ДокументТовары.Номенклатура КАК Номенклатура,
    |    ДокументТовары.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    |    ДокументТовары.Номенклатура.ВидНоменклатуры КАК ВидНоменклатуры,
    |    ДокументТовары.СтавкаНДС КАК СтавкаНДС" + "
    |    "+?(СкладКомпании = Неопределено, ",ДокументТовары.МестоРазмещения КАК СкладКомпании", "") + "
    |    "+?(ЗначениеЗаполнено(ИмяРеквизитаДокумент), ",ДокументТовары." + ИмяРеквизитаДокумент + " КАК Партия", "") + ",
    |    "+?(ЕстьДокументУслуги,"ДокументУслуги.ДокументПродажи КАК ДокументПродажи,","")+"
    |    СУММА(ДокументУслуги.Количество"+?(ПоБазовомуКоличеству,"Базовое","*ДокументУслуги.Коэффициент")+") КАК Количество,
    |    СУММА(ДокументУслуги.СуммаВсего) КАК Сумма,
    |    СУММА(ДокументУслуги.СуммаНДС) КАК СуммаНДС,
    |    СУММА("+?(ЕстьСкидка,"ДокументУслуги.СуммаСкидки","0")+ТекстСтрочнойСкидки+") КАК СуммаСкидки
    |ИЗ
    |    Документ."+ВидДок+".Услуги КАК ДокументУслуги" + ?(ЕстьАвтомобиль И АвтомобильВТаблице, "
    |ВНУТРЕННЕЕ СОЕДИНЕНИЕ
    |    Документ."+ВидДок+".Автомобили КАК ДокументАвтомобили
    |ПО
    |    ДокументТовары.ИдентификаторАвтомобиля = ДокументАвтомобили.ИдентификаторАвтомобиля И ДокументАвтомобили.Ссылка=&Ссылка", "") + "
    |ГДЕ
    |    ДокументУслуги.Ссылка = &Ссылка
    |СГРУППИРОВАТЬ ПО" + ?(ЕстьАвтомобиль И АвтомобильВТаблице, "
    |    ДокументАвтомобили.Автомобиль,", "") + "
    |    ДокументУслуги.Номенклатура,
    |    ДокументУслуги.ХарактеристикаНоменклатуры,
    |    ДокументУслуги.СтавкаНДС" + ?(СкладКомпании = Неопределено,",
    |    ДокументУслуги.МестоРазмещения", "") + ?(ЗначениеЗаполнено(ИмяРеквизитаДокумент), ",
    |    ДокументУслуги." + ИмяРеквизитаДокумент, "") + "
    |    "+?(ЕстьДокументУслуги,",ДокументУслуги.ДокументПродажи","")+"
    |УПОРЯДОЧИТЬ ПО
    |    ДокументУслуги.Номенклатура,
    |    ДокументУслуги.ХарактеристикаНоменклатуры
    |    "+?(обЗначениеНеЗаполнено(ИмяРеквизитаДокумент),"",",ДокументУслуги."+ИмяРеквизитаДокумент+" Убыв")+"
    |");











Ошибка при выполнении обработчика - 'ОбработкаПроведения'
по причине:
{РегистрНакопления.Продажи.МодульНабораЗаписей(122)}: Ошибка при вызове метода контекста (Выполнить)

по причине:
{(31, 2)}: Синтаксическая ошибка "ОБЪЕДИНИТЬ"
<<?>>ОБЪЕДИНИТЬ
10 Босечка
 
16.12.14
11:14
Что не так написано?
11 Йохохо
 
16.12.14
11:15
(9) а что в Запрос.Текст в отладчике перед Выполнить()?
12 Босечка
 
16.12.14
11:17
(11)ВЫБРАТЬ
    ДокументТовары.Номенклатура КАК Номенклатура,
    ДокументТовары.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    ДокументТовары.Номенклатура.ВидНоменклатуры КАК ВидНоменклатуры,
    ДокументТовары.СтавкаНДС КАК СтавкаНДС
    
    ,
    
    ДокументТовары.ГТД КАК ГТД,
    СУММА(ДокументТовары.КоличествоБазовое) КАК Количество,
    СУММА(ДокументТовары.СуммаВсего) КАК Сумма,
    СУММА(ДокументТовары.СуммаНДС) КАК СуммаНДС,
    СУММА(ДокументТовары.СуммаСкидки + ДокументТовары.СуммаСкидкиСтроки) КАК СуммаСкидки
ИЗ
    Документ.РеализацияТоваров.Товары КАК ДокументТовары
ГДЕ
    ДокументТовары.Ссылка = &Ссылка
СГРУППИРОВАТЬ ПО
    ДокументТовары.Номенклатура,
    ДокументТовары.ХарактеристикаНоменклатуры,
    ДокументТовары.СтавкаНДС
    
    ,ДокументТовары.ГТД
УПОРЯДОЧИТЬ ПО
    ДокументТовары.Номенклатура,
    ДокументТовары.ХарактеристикаНоменклатуры
    
    ,ДокументТовары.ГТД Убыв

ОБЪЕДИНИТЬ

ВЫБРАТЬ
    ДокументТовары.Номенклатура КАК Номенклатура,
    ДокументТовары.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    ДокументТовары.Номенклатура.ВидНоменклатуры КАК ВидНоменклатуры,
    ДокументТовары.СтавкаНДС КАК СтавкаНДС
    
    ,
    
    СУММА(ДокументУслуги.КоличествоБазовое) КАК Количество,
    СУММА(ДокументУслуги.СуммаВсего) КАК Сумма,
    СУММА(ДокументУслуги.СуммаНДС) КАК СуммаНДС,
    СУММА(ДокументУслуги.СуммаСкидки + ДокументТовары.СуммаСкидкиСтроки) КАК СуммаСкидки
ИЗ
    Документ.РеализацияТоваров.Услуги КАК ДокументУслуги
ГДЕ
    ДокументУслуги.Ссылка = &Ссылка
СГРУППИРОВАТЬ ПО
    ДокументУслуги.Номенклатура,
    ДокументУслуги.ХарактеристикаНоменклатуры,
    ДокументУслуги.СтавкаНДС
    
УПОРЯДОЧИТЬ ПО
    ДокументУслуги.Номенклатура,
    ДокументУслуги.ХарактеристикаНоменклатуры
13 Ёпрст
 
гуру
16.12.14
11:19
(12) Это же не тот запрос, что в (9)..
Где вы смотрите и что ?
14 pessok
 
16.12.14
11:20
(12) во втором запросе у полей не должно быть синонимов
15 Ёпрст
 
гуру
16.12.14
11:25
(14) это пофик
16 DrWatson
 
16.12.14
11:26
(12) Попробуйте убрать УПОРЯДОЧИТЬ
17 vicof
 
16.12.14
11:27
А ничего, что в объединяемых запросах разное количество полей?
18 Йохохо
 
16.12.14
11:29
(12) разное количество полей в запросах, "" (КАК ГТД)
19 Босечка
 
16.12.14
11:30
Запрос=Новый Запрос("
    |ВЫБРАТЬ" + ?(ЕстьАвтомобиль, ?(АвтомобильВТаблице, "
    |    ДокументАвтомобили.Автомобиль КАК Автомобиль,", "
    |    &Автомобиль КАК Автомобиль,"), "") + "
    |    ДокументТовары.Номенклатура КАК Номенклатура,
    |    ДокументТовары.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    |    ДокументТовары.Номенклатура.ВидНоменклатуры КАК ВидНоменклатуры,
    |    ДокументТовары.СтавкаНДС КАК СтавкаНДС" + "
    |    "+?(СкладКомпании = Неопределено, ",ДокументТовары.МестоРазмещения КАК СкладКомпании", "") + "
    |    "+?(ЗначениеЗаполнено(ИмяРеквизитаДокумент), ",ДокументТовары." + ИмяРеквизитаДокумент + " КАК Партия", "") + ",
    |    "+?(ЕстьДокументПродажи,"ДокументТовары.ДокументПродажи КАК ДокументПродажи,","")+"
    |    "+?(ЕстьГТД,"ДокументТовары.ГТД КАК ГТД,","")+"
    |    СУММА(ДокументТовары.Количество"+?(ПоБазовомуКоличеству,"Базовое","*ДокументТовары.Коэффициент")+") КАК Количество,
    |    СУММА(ДокументТовары.СуммаВсего) КАК Сумма,
    |    СУММА(ДокументТовары.СуммаНДС) КАК СуммаНДС,
    |    СУММА("+?(ЕстьСкидка,"ДокументТовары.СуммаСкидки","0")+ТекстСтрочнойСкидки+") КАК СуммаСкидки
    |ИЗ
    |    Документ."+ВидДок+".Товары КАК ДокументТовары" + ?(ЕстьАвтомобиль И АвтомобильВТаблице, "
    |ВНУТРЕННЕЕ СОЕДИНЕНИЕ
    |    Документ."+ВидДок+".Автомобили КАК ДокументАвтомобили
    |ПО
    |    ДокументТовары.ИдентификаторАвтомобиля = ДокументАвтомобили.ИдентификаторАвтомобиля И ДокументАвтомобили.Ссылка=&Ссылка", "") + "
    |ГДЕ
    |    ДокументТовары.Ссылка = &Ссылка
    |СГРУППИРОВАТЬ ПО" + ?(ЕстьАвтомобиль И АвтомобильВТаблице, "
    |    ДокументАвтомобили.Автомобиль,", "") + "
    |    ДокументТовары.Номенклатура,
    |    ДокументТовары.ХарактеристикаНоменклатуры,
    |    ДокументТовары.СтавкаНДС" + ?(СкладКомпании = Неопределено,",
    |    ДокументТовары.МестоРазмещения", "") + ?(ЗначениеЗаполнено(ИмяРеквизитаДокумент), ",
    |    ДокументТовары." + ИмяРеквизитаДокумент, "") + "
    |    "+?(ЕстьДокументПродажи,",ДокументТовары.ДокументПродажи","")+"
    |    "+?(ЕстьГТД,",ДокументТовары.ГТД","")+"
    |УПОРЯДОЧИТЬ ПО
    |    ДокументТовары.Номенклатура
    |
    | ОБЪЕДИНИТЬ
    |
    |ВЫБРАТЬ " + ?(ЕстьАвтомобиль, ?(АвтомобильВТаблице, "
    |    ДокументАвтомобили.Автомобиль,", "
    |    &Автомобиль ,"), "") + "
    |    ДокументТовары.Номенклатура ,
    |    ДокументТовары.ХарактеристикаНоменклатуры ,
    |    ДокументТовары.Номенклатура.ВидНоменклатуры ,
    |    ДокументТовары.СтавкаНДС " + "
    |    "+?(СкладКомпании = Неопределено, ",ДокументТовары.МестоРазмещения ", "") + "
    |    "+?(ЗначениеЗаполнено(ИмяРеквизитаДокумент), ",ДокументТовары." + ИмяРеквизитаДокумент + " ", "") + ",
    |    "+?(ЕстьДокументУслуги,"ДокументУслуги.ДокументПродажи ,","")+"
    |    СУММА(ДокументУслуги.Количество"+?(ПоБазовомуКоличеству,"Базовое","*ДокументУслуги.Коэффициент")+") ,
    |    СУММА(ДокументУслуги.СуммаВсего) ,
    |    СУММА(ДокументУслуги.СуммаНДС) ,
    |    СУММА("+?(ЕстьСкидка,"ДокументУслуги.СуммаСкидки","0")+ТекстСтрочнойСкидки+")
    |ИЗ
    |    Документ."+ВидДок+".Услуги " + ?(ЕстьАвтомобиль И АвтомобильВТаблице, "
    |ВНУТРЕННЕЕ СОЕДИНЕНИЕ
    |    Документ."+ВидДок+".Автомобили
    |ПО
    |    ДокументТовары.ИдентификаторАвтомобиля = ДокументАвтомобили.ИдентификаторАвтомобиля И ДокументАвтомобили.Ссылка=&Ссылка", "") + "
    |ГДЕ
    |    ДокументУслуги.Ссылка = &Ссылка
    |СГРУППИРОВАТЬ ПО" + ?(ЕстьАвтомобиль И АвтомобильВТаблице, "
    |    ДокументАвтомобили.Автомобиль,", "") + "
    |    ДокументУслуги.Номенклатура,
    |    ДокументУслуги.ХарактеристикаНоменклатуры,
    |    ДокументУслуги.СтавкаНДС" + ?(СкладКомпании = Неопределено,",
    |    ДокументУслуги.МестоРазмещения", "") + ?(ЗначениеЗаполнено(ИмяРеквизитаДокумент), ",
    |    ДокументУслуги." + ИмяРеквизитаДокумент, "") + "
    |    "+?(ЕстьДокументУслуги,",ДокументУслуги.ДокументПродажи","")+"
    |УПОРЯДОЧИТЬ ПО
    |    ДокументУслуги.Номенклатура,
    |    ДокументУслуги.ХарактеристикаНоменклатуры
    |    "+?(обЗначениеНеЗаполнено(ИмяРеквизитаДокумент),"",",ДокументУслуги."+ИмяРеквизитаДокумент+" Убыв")+"
    |");

все равно не работает, что одинаковое что разное
20 DrWatson
 
16.12.14
11:31
Учиться всё-таки лучше с помощью конструктора запроса. Там бы не было таких ошибок.
21 DrWatson
 
16.12.14
11:31
(19) Не послушалась меня
22 cons74
 
16.12.14
11:33
Боже зачем я туда нажал
23 vicof
 
16.12.14
11:33
(19) Конкретно что не работает, тебя раскаленными клещами пытать надо?
24 Fragster
 
гуру
16.12.14
11:37
лично я делаю примерно так:
25 Fragster
 
гуру
16.12.14
11:37
Запрос.Текст =
        "ВЫБРАТЬ
        |    ТабПроверяемыйЖурнал.Ссылка
        |ИЗ
        |    &_Журнал КАК ТабПроверяемыйЖурнал
        |ГДЕ
        |    НЕ (&_Условие)";        
        Запрос.Текст = СтрЗаменить(Запрос.Текст, "&_Журнал", ИмяЖурнала);
        Запрос.Текст = СтрЗаменить(Запрос.Текст, "&_Условие", ПолучитьСтрокуИзМассива(МассивУсловия, " ИЛИ "));
        Результат = Запрос.Выполнить();
26 Ёпрст
 
гуру
16.12.14
11:38
(19)
1.выкинуть Упорядочить ПО (оно не имеет смысла в юнионе)
2.В функции Сумма заменить "0" на 0 (складывать надо числа, а не строки)
3.Привести Сгруппировать ПО к одинаковым полям в обеих запросах (сейчас количество группировочных полей разное)
4.Кушать печенки
5 .наслаждаться положительными эмоциями
27 Fragster
 
гуру
16.12.14
11:39
28 Босечка
 
16.12.14
11:40
Запрос=Новый Запрос("
    |ВЫБРАТЬ" + ?(ЕстьАвтомобиль, ?(АвтомобильВТаблице, "
    |    ДокументАвтомобили.Автомобиль КАК Автомобиль,", "
    |    &Автомобиль КАК Автомобиль,"), "") + "
    |    ДокументТовары.Номенклатура КАК Номенклатура,
    |    ДокументТовары.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    |    ДокументТовары.Номенклатура.ВидНоменклатуры КАК ВидНоменклатуры,
    |    ДокументТовары.СтавкаНДС КАК СтавкаНДС" + "
    |    "+?(СкладКомпании = Неопределено, ",ДокументТовары.МестоРазмещения КАК СкладКомпании", "") + "
    |    "+?(ЗначениеЗаполнено(ИмяРеквизитаДокумент), ",ДокументТовары." + ИмяРеквизитаДокумент + " КАК Партия", "") + ",
    |    "+?(ЕстьДокументПродажи,"ДокументТовары.ДокументПродажи КАК ДокументПродажи,","")+"
    |    "+?(ЕстьГТД,"ДокументТовары.ГТД КАК ГТД,","")+"
    |    СУММА(ДокументТовары.Количество"+?(ПоБазовомуКоличеству,"Базовое","*ДокументТовары.Коэффициент")+") КАК Количество,
    |    СУММА(ДокументТовары.СуммаВсего) КАК Сумма,
    |    СУММА(ДокументТовары.СуммаНДС) КАК СуммаНДС,
    |    СУММА("+?(ЕстьСкидка,"ДокументТовары.СуммаСкидки","0")+ТекстСтрочнойСкидки+") КАК СуммаСкидки
    |ИЗ
    |    Документ."+ВидДок+".Товары КАК ДокументТовары" + ?(ЕстьАвтомобиль И АвтомобильВТаблице, "
    |ВНУТРЕННЕЕ СОЕДИНЕНИЕ
    |    Документ."+ВидДок+".Автомобили КАК ДокументАвтомобили
    |ПО
    |    ДокументТовары.ИдентификаторАвтомобиля = ДокументАвтомобили.ИдентификаторАвтомобиля И ДокументАвтомобили.Ссылка=&Ссылка", "") + "
    |ГДЕ
    |    ДокументТовары.Ссылка = &Ссылка
    |СГРУППИРОВАТЬ ПО" + ?(ЕстьАвтомобиль И АвтомобильВТаблице, "
    |    ДокументАвтомобили.Автомобиль,", "") + "
    |    ДокументТовары.Номенклатура,
    |    ДокументТовары.ХарактеристикаНоменклатуры,
    |    ДокументТовары.СтавкаНДС" + ?(СкладКомпании = Неопределено,",
    |    ДокументТовары.МестоРазмещения", "") + ?(ЗначениеЗаполнено(ИмяРеквизитаДокумент), ",
    |    ДокументТовары." + ИмяРеквизитаДокумент, "") + "
    |    "+?(ЕстьДокументПродажи,",ДокументТовары.ДокументПродажи","")+"
    |    "+?(ЕстьГТД,",ДокументТовары.ГТД","")+"
    |УПОРЯДОЧИТЬ ПО
    |    ДокументТовары.Номенклатура
    |
    | ОБЪЕДИНИТЬ
    |
    |
    |ВЫБРАТЬ" + ?(ЕстьАвтомобиль, ?(АвтомобильВТаблице, "
    |    ДокументАвтомобили.Автомобиль КАК Автомобиль,", "
    |    &Автомобиль КАК Автомобиль,"), "") + "
    |    ДокументУслуги.Номенклатура КАК Номенклатура,
    |    ДокументУслуги.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    |    ДокументУслуги.Номенклатура.ВидНоменклатуры КАК ВидНоменклатуры,
    |    ДокументУслуги.СтавкаНДС КАК СтавкаНДС" + "
    |    "+?(СкладКомпании = Неопределено, ",ДокументУслуги.МестоРазмещения КАК СкладКомпании", "") + "
    |    "+?(ЗначениеЗаполнено(ИмяРеквизитаДокумент), ",ДокументУслуги." + ИмяРеквизитаДокумент + " КАК Партия", "") + ",
    |    "+?(ЕстьДокументУслуги,"ДокументУслуги.ДокументПродажи КАК ДокументПродажи,","")+"
    |    "+?(ЕстьГТД,"ДокументУслуги.ГТД КАК ГТД,","")+"
    |    СУММА(ДокументУслуги.Количество"+?(ПоБазовомуКоличеству,"Базовое","*ДокументУслуги.Коэффициент")+") КАК Количество,
    |    СУММА(ДокументУслуги.СуммаВсего) КАК Сумма,
    |    СУММА(ДокументУслуги.СуммаНДС) КАК СуммаНДС,
    |    СУММА("+?(ЕстьСкидка,"ДокументУслуги.СуммаСкидки","0")+ТекстСтрочнойСкидки+") КАК СуммаСкидки
    |ИЗ
    |    Документ."+ВидДок+".Услуги КАК ДокументУслуги" + ?(ЕстьАвтомобиль И АвтомобильВТаблице, "
    |ВНУТРЕННЕЕ СОЕДИНЕНИЕ
    |    Документ."+ВидДок+".Автомобили КАК ДокументАвтомобили
    |ПО
    |    ДокументУслуги.ИдентификаторАвтомобиля = ДокументАвтомобили.ИдентификаторАвтомобиля И ДокументАвтомобили.Ссылка=&Ссылка", "") + "
    |ГДЕ
    |    ДокументТовары.Ссылка = &Ссылка
    |СГРУППИРОВАТЬ ПО" + ?(ЕстьАвтомобиль И АвтомобильВТаблице, "
    |    ДокументАвтомобили.Автомобиль,", "") + "
    |    ДокументУслуги.Номенклатура,
    |    ДокументУслуги.ХарактеристикаНоменклатуры,
    |    ДокументУслуги.СтавкаНДС" + ?(СкладКомпании = Неопределено,",
    |    ДокументУслуги.МестоРазмещения", "") + ?(ЗначениеЗаполнено(ИмяРеквизитаДокумент), ",
    |    ДокументУслуги." + ИмяРеквизитаДокумент, "") + "
    |    "+?(ЕстьДокументУслуги,",ДокументУслуги.ДокументПродажи","")+"
    |    "+?(ЕстьГТД,",ДокументУслуги.ГТД","")+"
    |УПОРЯДОЧИТЬ ПО
    |    ДокументУслуги.Номенклатура
    |");


все теперь одинаковое, все равно выдает эту дурацкую ошибку....
29 Ёпрст
 
гуру
16.12.14
11:41
И еще, для быстрого поиска ошибки, написать чему равно
Запрос.Текст перед строчкой Запрос.Выполнить
30 Ёпрст
 
гуру
16.12.14
11:41
в отладчике
31 vicof
 
16.12.14
11:42
(28) Текст ошибки нужно угадать?
32 pessok
 
16.12.14
11:44
а регистра то нету, обязательно по табчастям бегать?
33 vicof
 
16.12.14
11:44
(32) Это авторский стиль :)
34 Босечка
 
16.12.14
11:46
Текст тот же!!!!!!
35 Ёпрст
 
гуру
16.12.14
11:48
(31)издеваешься ?
36 Ёпрст
 
гуру
16.12.14
11:48
(35)---(34)
37 Ёпрст
 
гуру
16.12.14
11:48
Текст запроса какой ?
38 pessok
 
16.12.14
11:49
(33) ну так за это на спецах хреначат заточенной линейкой на руки и выгоняют без права пересдачи. зачем мы учим человека плохому? :)

автор, ответь на (32) сначала
39 vicof
 
16.12.14
11:50
(35) Учитывая кривизну рук автора, текст ошибки может меняться в любую секунду.
40 Босечка
 
16.12.14
12:07
ты сам кривой, это писал РАРУС , это модуль набора записей регистра Продажи.

Я решила пойти другим путем, мне осталось объединить 2 таблицы значений, есть какая нибудь функция для этого?
41 vicof
 
16.12.14
12:16
(40) И что, если это Рарус писал, значит так надо всем писать? Объединяй, чо, я только за, количество гкода не уменьшится. Вроде большая тетя, а не слушаешь, что говорят.

По теме: для этого придуманы циклы.
42 DrWatson
 
16.12.14
12:18
Что писал РАРУС, запрос из (9),(12) или (19)?
В платформе такой функции нет, в Вашей конфигурации - не знаю. Самим сделать - 3 строчки. Цикл по строкам и ЗаполнитьЗначенияСвойств для строк.
43 Анцеранана
 
16.12.14
13:09
Технология такая: 1. копируем текст запроса в отладчике. где-то в районе строки Запрос.Выполнить()
2.Открываем его в консоли, добавляем нужную строку или правим ошибку.
3. Внимательно смотрим что изменилось. Синт. ошибка могла возникнуть из-за группировки или еще=чего нибудь из-за чего может еще дополнительная строчка добавиться
4. Изменяем текст исходного запроса в конфигураторе
5. Если ошибка. Переходим к пункту 1.
44 Hans
 
16.12.14
13:11
Писать запрос из кусков когда не срабатывает консоль -  надо по возможности этого избегать, я таких программистов проклинаю.
45 Анцеранана
 
16.12.14
13:19
(44) Я тоже и не делаю так никогда,но у нее какая-то "типовая" вроде. Рарус)