Переключение на Главную Страницу Страницы: [1] 2  ОтправитьПечать
Горячая тема (более 10 ответов) Решил таки уже осваивать ТП (число прочтений - 6402 )
DionX
Senior Member
****
Отсутствует



Сообщений: 373
Местоположение: Кемерово
Зарегистрирован: 22. Августа 2006
Пол: Мужской
Решил таки уже осваивать ТП
25. Октября 2007 :: 03:00
Печать  
Код
Выбрать все
рс		=СоздатьОбъект("RS");
База	=рс.ПолучитьБазу(0);
Провидер=СоздатьОбъект("ODBCDataProvider.VFP");
Провидер.SetQueryText("
	|SELECT
	|	Jur.IDDoc as [дог $Документ],
	|	Jur.IDDocDef as дог_вид
	|FROM
	|	1SJourn as Jur
	|");
Провидер.SetOrderKey("Дог");
Провидер.SetIDField("Дог");
Провидер.Database		=База;
//*
Я.ПоставщикДанных		=Провидер;
Я.ОбновитьСтроки();
 


На форме на фоне табличного поля выводится строка на жёлтом фоне:
Цитата:
Для типизации поля "дог", не найдено дополнительное типизирующее поле

В чем дело? Я правильно понял, что речь идёт о "IDDocDef as дог_вид"? Тогда почему не найдено?
  
Наверх
ICQ  
IP записан
 
DionX
Senior Member
****
Отсутствует



Сообщений: 373
Местоположение: Кемерово
Зарегистрирован: 22. Августа 2006
Пол: Мужской
Re: Решил таки уже осваивать ТП
Ответ #1 - 25. Октября 2007 :: 03:03
Печать  
1срр 2.5, ночная сборка 2007-10-27
  
Наверх
ICQ  
IP записан
 
DionX
Senior Member
****
Отсутствует



Сообщений: 373
Местоположение: Кемерово
Зарегистрирован: 22. Августа 2006
Пол: Мужской
Re: Решил таки уже осваивать ТП
Ответ #2 - 25. Октября 2007 :: 03:13
Печать  
Ещё сюда же:
Цитата:
Недопустимая типизация для поля ВидДоговора$Перечисление.ПС.ВидыДоговоров

Эта ошибка вываливается уже в окно сообщений. На самом деле у меня написано:
Код
Выбрать все
$Dog.Вид as [ВидДоговора $Перечисление.ПС_ВидыДоговоров] 


Не понимает символ "_"? И как быть? Переименовывать перечисление и перелапачивать всю конфигу? Нерешительный
  
Наверх
ICQ  
IP записан
 
DionX
Senior Member
****
Отсутствует



Сообщений: 373
Местоположение: Кемерово
Зарегистрирован: 22. Августа 2006
Пол: Мужской
Re: Решил таки уже осваивать ТП
Ответ #3 - 25. Октября 2007 :: 03:19
Печать  
по первому вопросу:
посмотрел с помощью Отладка(1) какой получается запрос и вот что увидел:
Цитата:
select top 20
Jur.IDDoc as дог
from 1SJourn Jur

order by Jur.IDDoc

Ужас
А где же остальные поля? причем передаваемый запрос остаются таким же, сколько бы я не добавлял полей в свой запрос
  
Наверх
ICQ  
IP записан
 
DionX
Senior Member
****
Отсутствует



Сообщений: 373
Местоположение: Кемерово
Зарегистрирован: 22. Августа 2006
Пол: Мужской
Re: Решил таки уже осваивать ТП
Ответ #4 - 25. Октября 2007 :: 03:26
Печать  
добавляю inner join:
Цитата:
Command contains unrecoqnized phrase/keyword

Что я делаю не так? Плачущий
  
Наверх
ICQ  
IP записан
 
DionX
Senior Member
****
Отсутствует



Сообщений: 373
Местоположение: Кемерово
Зарегистрирован: 22. Августа 2006
Пол: Мужской
Re: Решил таки уже осваивать ТП
Ответ #5 - 25. Октября 2007 :: 04:00
Печать  
ладно с типизацией разобрался (нужно было тм.колонки.добавить("док_вид"))
Теперь ошибок не выдаёт (если запрос без inner join), но и в тп ни чего не оботражается... т.е. строки вроде как есть, но ячейки пусты
И почему всё таки с inner join не работает? Неужели одбс не поддерживает (я до этого использовал оле вфп)?
  
Наверх
ICQ  
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Решил таки уже осваивать ТП
Ответ #6 - 25. Октября 2007 :: 04:04
Печать  
DionX писал(а) 25. Октября 2007 :: 04:00:
ладно с типизацией разобрался (нужно было тм.колонки.добавить("док_вид"))
Теперь ошибок не выдаёт (если запрос без inner join), но и в тп ни чего не оботражается... т.е. строки вроде как есть, но ячейки пусты
И почему всё таки с inner join не работает? Неужели одбс не поддерживает (я до этого использовал оле вфп)?

Не ODBC неподдерживает а ТП не поддерживает, делай подзапрос

Select
..
Form (подзапрос)
  
Наверх
ICQ  
IP записан
 
DionX
Senior Member
****
Отсутствует



Сообщений: 373
Местоположение: Кемерово
Зарегистрирован: 22. Августа 2006
Пол: Мужской
Re: Решил таки уже осваивать ТП
Ответ #7 - 25. Октября 2007 :: 04:07
Печать  
Nick писал(а) 25. Октября 2007 :: 04:04:
Не ODBC неподдерживает а ТП не поддерживает, делай подзапрос

Select
..
Form (подзапрос)

не совсем понял как поможет мне подзапрос.
и источником ошибки всё таки является [Microsoft][ODBC Xisual FoxPro Driver] Во всяком случае пишется в сообщении об ошибке так)))
  
Наверх
ICQ  
IP записан
 
DionX
Senior Member
****
Отсутствует



Сообщений: 373
Местоположение: Кемерово
Зарегистрирован: 22. Августа 2006
Пол: Мужской
Re: Решил таки уже осваивать ТП
Ответ #8 - 25. Октября 2007 :: 04:17
Печать  
все проблемы решились кроме inner join и "Недопустимая типизация для поля ВидДоговора$Перечисление.ПС.ВидыДоговоров"
Кто поможет?
  
Наверх
ICQ  
IP записан
 
DionX
Senior Member
****
Отсутствует



Сообщений: 373
Местоположение: Кемерово
Зарегистрирован: 22. Августа 2006
Пол: Мужской
Re: Решил таки уже осваивать ТП
Ответ #9 - 25. Октября 2007 :: 04:19
Печать  
вот тут ведь работает inner join: http://www.1cpp.ru/forum/YaBB.pl?num=1173995545/0#0
  
Наверх
ICQ  
IP записан
 
DionX
Senior Member
****
Отсутствует



Сообщений: 373
Местоположение: Кемерово
Зарегистрирован: 22. Августа 2006
Пол: Мужской
Re: Решил таки уже осваивать ТП
Ответ #10 - 25. Октября 2007 :: 04:22
Печать  
тьфу! понял, наверно, чё за проблема с join: там в имени документа тоже есть символ "_", поэтому здесь видимо таже проблемма что и с ВидДоговора$Перечисление.ПС.ВидыДоговоров Нерешительный
Как быть?
  
Наверх
ICQ  
IP записан
 
DionX
Senior Member
****
Отсутствует



Сообщений: 373
Местоположение: Кемерово
Зарегистрирован: 22. Августа 2006
Пол: Мужской
Re: Решил таки уже осваивать ТП
Ответ #11 - 25. Октября 2007 :: 04:27
Печать  
вот что в отладке теперь получается:
Код
Выбрать все
select top 20
Jur.IDDoc as дог,
Jur.Date as ДатаС,
Jur.IDDocDef as дог_вид
from 1SJourn as Jur
inner join dh13053 as Dog ON 1SJourn.IDDoc=Dog.IDDoc

order by Jur.Date
 


И один хрен ошибка((( Печаль
  
Наверх
ICQ  
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Решил таки уже осваивать ТП
Ответ #12 - 25. Октября 2007 :: 04:35
Печать  
DionX писал(а) 25. Октября 2007 :: 04:27:
вот что в отладке теперь получается:
Код
Выбрать все
select top 20
Jur.IDDoc as дог,
Jur.Date as ДатаС,
Jur.IDDocDef as дог_вид
from 1SJourn as Jur
inner join dh13053 as Dog ON 1SJourn.IDDoc=Dog.IDDoc

order by Jur.Date
 


И один хрен ошибка((( Печаль


Ну сделай так:
Select
дог,
ДатаС,
дог_вид
From
(select top 20
Jur.IDDoc as дог,
Jur.Date as ДатаС,
Jur.IDDocDef as дог_вид
from 1SJourn as Jur
inner join dh13053 as Dog ON 1SJourn.IDDoc=Dog.IDDoc) as Jur1
order by ДатаС
  
Наверх
ICQ  
IP записан
 
DionX
Senior Member
****
Отсутствует



Сообщений: 373
Местоположение: Кемерово
Зарегистрирован: 22. Августа 2006
Пол: Мужской
Re: Решил таки уже осваивать ТП
Ответ #13 - 25. Октября 2007 :: 04:48
Печать  
Код
Выбрать все
	|SELECT
	|	дог as [дог $Документ],
	|	дог_вид as дог_вид,
	|	ДатаС  as [ДатаС $Дата]
	|FROM (SELECT
	//*
	|	Jur.IDDoc as дог,
	|	Jur.IDDocDef as дог_вид,
	|	Jur.Date as ДатаС
	|FROM
	|	1SJourn as Jur) SubQuery

 


Цитата:
Syntax error

Чёт я совсем запутался
  
Наверх
ICQ  
IP записан
 
DionX
Senior Member
****
Отсутствует



Сообщений: 373
Местоположение: Кемерово
Зарегистрирован: 22. Августа 2006
Пол: Мужской
Re: Решил таки уже осваивать ТП
Ответ #14 - 25. Октября 2007 :: 04:49
Печать  
в отладчике:
Код
Выбрать все
select top 20
дог as дог,
ДатаС as ДатаС,
дог_вид as дог_вид
from (SELECT
	Jur.IDDoc as дог,
	Jur.IDDocDef as дог_вид,
	Jur.Date as ДатаС
FROM
	1SJourn as Jur) SubQuery

order by ДатаС 

  
Наверх
ICQ  
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 
ОтправитьПечать