DSQL времянки в запросах, не переносится string
Добавлено: 29 июн 2017, 12:38
Задача пусть будет такая: выбираем интерфейсом группы ТМЦ (и сохраняем их в tmGrMC), потом строим выборку из ТМЦ входящих в эту группу (задача другая но для ситуацию описывает)
в итоге сделать это мы можем типа
1) вопрос простой, tmGrMC мне нужно не только nrec, но и name. чего делаю
создал времянку
запихиваю туда группы
запрос ни чего не вставить если пытаться вставить groupmc.name, если допустим вместо него вставлять groupmc.kod - все норм... какая-то проблема с длинными строками чтоле?
пробовал sustr, тоже не помогает
пробовал явно указывать размер sqlAddStr(hStr, ' sGroupMC : string[240] ');
в итоге сделать это мы можем типа
Код: Выделить всё
select katmc.name
from katmc
where katmc.cgroupmc in (select nrec from tmGrMC)
создал времянку
Код: Выделить всё
sqlFreeStr(hStr);
sqlAddStr(hStr, ' table tmGMC ');
sqlAddStr(hStr, ' ( ');
sqlAddStr(hStr, ' cGroupMC : comp, ');
sqlAddStr(hStr, ' kGroupMC : string, ');
sqlAddStr(hStr, ' sGroupMC : string ');
sqlAddStr(hStr, ' ) ');
sqlAddStr(hStr, ' with index ');
sqlAddStr(hStr, ' ( ');
sqlAddStr(hStr, ' idx1 = cGroupMC ');
sqlAddStr(hStr, ' ); ');
sqlDropTmpTable('tmGMC');
sql_result := sqlCreateTmpTable(hStr, ctmNormal);
sqlFreeStr(hStr);
Код: Выделить всё
_loop groupmc
sqlExecDirect('INSERT INTO tmGMC (cGroupMC,sGroupMC) VALUES (' + ' #comp(' + string(groupmc.nrec) + '),'+string(groupmc.name)+')');
пробовал sustr, тоже не помогает
пробовал явно указывать размер sqlAddStr(hStr, ' sGroupMC : string[240] ');