Переключение на Главную Страницу Страницы: [1] 2  ОтправитьПечать
Горячая тема (более 10 ответов) Не выходит обработать условие к диалогу (число прочтений - 6450 )
logarifm
Junior Member
**
Отсутствует



Сообщений: 92
Местоположение: Украина
Зарегистрирован: 29. Марта 2007
Пол: Мужской
Не выходит обработать условие к диалогу
29. Марта 2007 :: 12:19
Печать  
пишу вот так:
//*******************************************
Процедура Сформировать()
     Перем тз; //:ТаблицаЗначений
     ЗагрузитьВнешнююКомпоненту(КаталогПрограммы() + "\"+ "1CPP.dll");
     рс = СоздатьОбъект("ODBCRecordset");
     //Данный фрагмент построен конструктором.
     //При повторном использовании конструктора внесенные вручную изменения будут потеряны!!!
     ТекстЗапроса = "-- qryMaker:Отчет1.2007.03.29.14.16.45
           |SELECT $ОстаткиТоваров.Фирма [Фирма $Справочник.Фирмы]
           |      , $ОстаткиТоваров.Товар [Товар $Справочник.Номенклатура]
           |      , $ОстаткиТоваров.ВидТовара [ВидТовара $Перечисление.ВидыТоваров]
           |      , $ОстаткиТоваров.Склад [Склад $Справочник.МестаХранения]
           |FROM $Регистр.ОстаткиТоваров AS ОстаткиТоваров
           |WHERE ($ОстаткиТоваров.Товар = :ВыбТовар)
           |GROUP BY $ОстаткиТоваров.Фирма
           |      , $ОстаткиТоваров.Товар
           |      , $ОстаткиТоваров.ВидТовара
           |      , $ОстаткиТоваров.Склад
           |";
     тз = рс.ВыполнитьИнструкцию(ТекстЗапроса);
     тз.ВыбратьСтроку();
КонецПроцедуры

на форме ВыбТовар = Справчник.Номенклатура, где я выбрал конкретный товар, чтоб посмотреть его остаток.
Я скачал еще построитель запросов, сразу признаюсь на прямых запросах 1С++ только начал юзать даже толком версии ОпенКонфа не розкачал, пользуюсь почти тем же только я думаю вам известно ToySQL, почему именно этот выбор, ну так получилось Улыбка - движок всеравно тот-же, но просто хочу научится разруливать в 1С++, если некому невпадло помогите разобратся Улыбка

совсем забыл вот каковую ошибку выдает
тз = рс.ВыполнитьИнструкцию(ТекстЗапроса);
{J:\CONFIGUR\7.7\MODERN\ОТЧЕТ1.ERT(20)}: Meta name parser error: не указан параметр ":ВыбТовар"
  

я переписал бы мир, но Бог не дает мне исходники...
Наверх
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Не выходит обработать условие к диалогу
Ответ #1 - 29. Марта 2007 :: 12:24
Печать  
Ты б документацию хоть чуть-чуть бы почитал, если невпадло. И вот сюда ещё советую посмотреть.
  
Наверх
 
IP записан
 
logarifm
Junior Member
**
Отсутствует



Сообщений: 92
Местоположение: Украина
Зарегистрирован: 29. Марта 2007
Пол: Мужской
Re: Не выходит обработать условие к диалогу
Ответ #2 - 29. Марта 2007 :: 12:33
Печать  
Это в доке написано, какая разница между нами, только то что я делаю группировку
RS = СоздатьОбъект("ODBCRecordset");
ТекстЗапроса = "
|SELECT
|      Спр.ID as [Элемент $Справочник.Номенклатура]
|FROM
|      $Справочник.Номенклатура as Спр
|WHERE
|      $Спр.ТипНоменклатуры = :Товар";

RS.УстановитьТекстовыйПараметр("Товар", Перечисление.ТипыНоменклатуры.Товар);
ТЗ = RS.ВыполнитьИнструкцию(ТекстЗапроса);
ТЗ.ВыбратьСтроку();
  

я переписал бы мир, но Бог не дает мне исходники...
Наверх
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Не выходит обработать условие к диалогу
Ответ #3 - 29. Марта 2007 :: 12:36
Печать  
Кури УстановитьТекстовыйПараметр()
  
Наверх
 
IP записан
 
logarifm
Junior Member
**
Отсутствует



Сообщений: 92
Местоположение: Украина
Зарегистрирован: 29. Марта 2007
Пол: Мужской
Re: Не выходит обработать условие к диалогу
Ответ #4 - 29. Марта 2007 :: 12:50
Печать  
И на єтом спасибо
  

я переписал бы мир, но Бог не дает мне исходники...
Наверх
IP записан
 
logarifm
Junior Member
**
Отсутствует



Сообщений: 92
Местоположение: Украина
Зарегистрирован: 29. Марта 2007
Пол: Мужской
Re: Не выходит обработать условие к диалогу
Ответ #5 - 29. Марта 2007 :: 13:08
Печать  
Процедура Сформировать()
     Перем тз; //:ТаблицаЗначений
     ЗагрузитьВнешнююКомпоненту(КаталогПрограммы() + "\"+ "1CPP.dll");
     рс = СоздатьОбъект("ODBCRecordset");
     //Данный фрагмент построен конструктором.
     //При повторном использовании конструктора внесенные вручную изменения будут потеряны!!!
     ТекстЗапроса = "-- qryMaker:Отчет1.2007.03.29.14.16.45
           |SELECT $ОстаткиТоваров.Фирма [Фирма $Справочник.Фирмы]
           |      , $ОстаткиТоваров.Товар [Товар $Справочник.Номенклатура]
           |      , $ОстаткиТоваров.ВидТовара [ВидТовара $Перечисление.ВидыТоваров]
           |      , $ОстаткиТоваров.Склад [Склад $Справочник.МестаХранения]
           |FROM $Регистр.ОстаткиТоваров AS ОстаткиТоваров
           |WHERE $ОстаткиТоваров.Товар = :ВыбТовар
           |GROUP BY $ОстаткиТоваров.Фирма
           |      , $ОстаткиТоваров.Товар
           |      , $ОстаткиТоваров.ВидТовара
           |      , $ОстаткиТоваров.Склад
           |";
     рс.УстановитьТекстовыйПараметр("ВыбТовар","Справочник.Номенклатура");
     тз = рс.ВыполнитьИнструкцию(ТекстЗапроса);
     тз.ВыбратьСтроку();
КонецПроцедуры

Все работает просто непрывычно глаза загуляли, но остаток в таблице воще ничего нету, а физически есть! Что еще не так и я б сказал, почему-то долго обрабатывает, ToySQL пишу там все в секунду решается я уже привык, а тут, что-то не все получается доки ужастно много ... Какие будут предложения?
  

я переписал бы мир, но Бог не дает мне исходники...
Наверх
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Не выходит обработать условие к диалогу
Ответ #6 - 29. Марта 2007 :: 13:20
Печать  
Посмотри на ссылку, которую я дал выше, если читать ничего не хочешь.
  
Наверх
 
IP записан
 
pavel_tr
Senior Member
****
Отсутствует



Сообщений: 279
Местоположение: Казань
Зарегистрирован: 14. Октября 2006
Пол: Мужской
Re: Не выходит обработать условие к диалогу
Ответ #7 - 29. Марта 2007 :: 13:40
Печать  
рс.УстановитьТекстовыйПараметр("ВыбТовар","Справочник.Номенклатура");  тут ошибка
читай статью http://www.1cpp.ru/forumfiles/Attachments/mod.zip
  
Наверх
 
IP записан
 
logarifm
Junior Member
**
Отсутствует



Сообщений: 92
Местоположение: Украина
Зарегистрирован: 29. Марта 2007
Пол: Мужской
Re: Не выходит обработать условие к диалогу
Ответ #8 - 30. Марта 2007 :: 04:57
Печать  
Попытка
           рс = СоздатьОбъект("ODBCRecordset");
     Исключение
           ЗагрузитьВнешнююКомпоненту(КаталогПрограммы()+"\1CPP.dll");
           рс = СоздатьОбъект("ODBCRecordset");
     КонецПопытки;
     
     //Данный фрагмент построен конструктором.
     //При повторном использовании конструктора внесенные вручную изменения будут потеряны!!!
     ТекстЗапроса = "-- qryMaker:Отчет1.2007.03.29.14.16.45
           |SELECT $ОстаткиТоваров.Фирма [Фирма $Справочник.Фирмы]
           |      , $ОстаткиТоваров.Товар [Товар $Справочник.Номенклатура]
           |      , $ОстаткиТоваров.ВидТовара [ВидТовара $Перечисление.ВидыТоваров]
           |      , $ОстаткиТоваров.Склад [Склад $Справочник.МестаХранения]
           |FROM $Регистр.ОстаткиТоваров AS ОстаткиТоваров
           |WHERE ($ОстаткиТоваров.Товар = :ВыбТовар)
           |GROUP BY $ОстаткиТоваров.Фирма
           |      , $ОстаткиТоваров.Товар
           |      , $ОстаткиТоваров.ВидТовара
           |      , $ОстаткиТоваров.Склад
           |";
     
     рс.УстановитьТекстовыйПараметр("ВыбТовар",ВыбТовар);
     тз = рс.ВыполнитьИнструкцию(ТекстЗапроса);
     тз.ВыбратьСтроку();

пустой запрос, точнее остатков нету Печаль
  

я переписал бы мир, но Бог не дает мне исходники...
Наверх
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Не выходит обработать условие к диалогу
Ответ #9 - 30. Марта 2007 :: 05:04
Печать  
logarifm писал(а) 30. Марта 2007 :: 04:57:
пустой запрос, точнее остатков нету Печаль

а в каком поле, из четырех, на твой взгляд, они (остатки) должны быть?
  

1&&2&&3
Наверх
 
IP записан
 
logarifm
Junior Member
**
Отсутствует



Сообщений: 92
Местоположение: Украина
Зарегистрирован: 29. Марта 2007
Пол: Мужской
Re: Не выходит обработать условие к диалогу
Ответ #10 - 30. Марта 2007 :: 05:05
Печать  
Все, снимается этот вопрос это ж надо так лозонутся, я не стого места запускался... Целую ночь курюю 1С ++ Ужас
  

я переписал бы мир, но Бог не дает мне исходники...
Наверх
IP записан
 
logarifm
Junior Member
**
Отсутствует



Сообщений: 92
Местоположение: Украина
Зарегистрирован: 29. Марта 2007
Пол: Мужской
Re: Не выходит обработать условие к диалогу
Ответ #11 - 30. Марта 2007 :: 05:14
Печать  
А вот еще вопрос такого характера сдесь мне нужно выбрать справочник Номенклатуры, я делаю таку выборку

ТекстЗапроса = "-- qryMaker:Отчет1.2007.03.29.17.05.25
           |SELECT $Номенклатура.Name Name
           |      , $Номенклатура.Артикул Артикул
           |      , $Номенклатура.БазоваяЕдиницаИзмерения [БазоваяЕдиницаИзмерения $Справочник.КлассификаторЕдИзм]
           |      , $Номенклатура.Вес Вес
           |      , $Номенклатура.ВесУпаковки ВесУпаковки
           |      , $Номенклатура.ВидТовара [ВидТовара $Перечисление.ВидыТоваров]
           |      , $Номенклатура.Высота Высота
           |      , $Номенклатура.Длина Длина
           |      , $Номенклатура.КодМ КодМ
           |      , $Номенклатура.КодПР КодПР
           |      , $Номенклатура.КолНаПачку КолНаПачку
           |      , $Номенклатура.НаименованиеМ НаименованиеМ
           |      , $Номенклатура.НаименованиеПР НаименованиеПР
           |      , $Номенклатура.НаименованиеР НаименованиеР
           |      , $Номенклатура.НомерГТД НомерГТД
           |      , $Номенклатура.Объем Объем
           |      , $Номенклатура.ПолноеНаименование ПолноеНаименование
           |      , $Номенклатура.Поставщик [Поставщик $Справочник.Контрагенты]
           |      , $Номенклатура.ПроцМ ПроцМ
           |      , $Номенклатура.Ширина Ширина
           |      , $Номенклатура.Нетто Нетто
           |      , $Номенклатура.Брутто Брутто
           |FROM $Справочник.Номенклатура AS Номенклатура
           |GROUP BY $Номенклатура.Артикул
           |      , $Номенклатура.Name
           |      , $Номенклатура.БазоваяЕдиницаИзмерения
           |      , $Номенклатура.Вес
           |      , $Номенклатура.ВесУпаковки
           |      , $Номенклатура.ВидТовара
           |      , $Номенклатура.Высота
           |      , $Номенклатура.Длина
           |      , $Номенклатура.КодМ
           |      , $Номенклатура.КодПР
           |      , $Номенклатура.КолНаПачку
           |      , $Номенклатура.НаименованиеМ
           |      , $Номенклатура.НаименованиеПР
           |      , $Номенклатура.НаименованиеР
           |      , $Номенклатура.НомерГТД
           |      , $Номенклатура.Объем
           |      , $Номенклатура.ПолноеНаименование
           |      , $Номенклатура.Поставщик
           |      , $Номенклатура.ПроцМ
           |      , $Номенклатура.Ширина
           |      , $Номенклатура.Нетто
           |      , $Номенклатура.Брутто
           |";

но почему-то в таблицу попадают только Артикул и все, а где остальные колонки Улыбка спрятались ?
А щась вооще начало ругатся-то
тз = рс.ВыполнитьИнструкцию(ТекстЗапроса);
{J:\CONFIGUR\7.7\MODERN\MODERN-ETIKETKA\USR\SASHA\ОТЧЕТ2.ERT(55)}: State 42000, native 306, message [Microsoft][ODBC SQL Server Driver][SQL Server]The text, ntext, and image data types cannot be compared or sorted, except when using IS NULL or LIKE operator.
  

я переписал бы мир, но Бог не дает мне исходники...
Наверх
IP записан
 
logarifm
Junior Member
**
Отсутствует



Сообщений: 92
Местоположение: Украина
Зарегистрирован: 29. Марта 2007
Пол: Мужской
Re: Не выходит обработать условие к диалогу
Ответ #12 - 30. Марта 2007 :: 05:18
Печать  
State 42000 возник потому, что в запрос попало неограниченная строка "ПолноеНименование", млин интересно как оно вооще выводило результат не переделывал его вооще.  Блин и колонки появились -- - - Все иду спать !
  

я переписал бы мир, но Бог не дает мне исходники...
Наверх
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Не выходит обработать условие к диалогу
Ответ #13 - 30. Марта 2007 :: 05:22
Печать  
во-первых: по полям типа text (коими являются реквизиты типа строка негранич. длины) нельзя группировать - этого требует sql сервер
во-вторых: такие поля должны быть последними в селект листе - этого требует 1с++
  

1&&2&&3
Наверх
 
IP записан
 
logarifm
Junior Member
**
Отсутствует



Сообщений: 92
Местоположение: Украина
Зарегистрирован: 29. Марта 2007
Пол: Мужской
Re: Не выходит обработать условие к диалогу
Ответ #14 - 30. Марта 2007 :: 05:25
Печать  
Спасиб ) всем кто помагал, всегда начинать тяжело, но куда деватся-то Улыбка
  

я переписал бы мир, но Бог не дает мне исходники...
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 
ОтправитьПечать