Динамический Query

Обсуждение вопросов по разработке программ в среде продуктов копорации "Progress Software"
MaksimZ
Старожил
Сообщения: 433
Зарегистрирован: 08 авг 2005, 15:24
Откуда: Рыбинск. Ярославская область

Динамический Query

Сообщение MaksimZ » 21 июн 2013, 08:49

Есть динамический Query. Как при копировании одного буфера в другой узнать recid таблицы ,которая копируется и скопировать его в другой буфер?
DEFINE TEMP-TABLE "{&ttTable}" NO-UNDO LIKE "{&Table}"
FIELD tRecid AS CHAR .

CREATE QUERY hQuery.
CREATE BUFFER hBuffer FOR table "{&ttTable}" .
CREATE BUFFER bTable FOR TABLE "{&Table}".
DEF VAR lQuery AS LOGICAL no-undo.
DEF VAR hBuffer AS HANDLE.
DEF VAR hField AS HANDLE.
DEF VAR cValue AS CHAR NO-UNDO FORMAT "x(50)".

hQuery:SET-BUFFERS(bTable).

lQuery = hQuery:QUERY-PREPARE("FOR EACH " + "{&Table} " + cString) NO-ERROR.

IF NOT lQuery THEN
do:
cValue1 = 'Error'.
return.
end.
lQuery = hQuery:QUERY-OPEN no-error.
IF NOT lQuery THEN
do:
cValue1 = 'Error'.
return.
end.

i = 1.
REPEAT :
hQuery:GET-NEXT(NO-LOCK).
i = i + 1.
if i > 100 then leave.
IF hQuery:QUERY-OFF-END THEN LEAVE.
hBuffer:BUFFER-CREATE().
hBuffer:BUFFER-COPY(bTable).
END.


DELETE WIDGET hQuery.
DELETE WIDGET bTable.
DELETE WIDGET hBuffer.

MaksimZ
Старожил
Сообщения: 433
Зарегистрирован: 08 авг 2005, 15:24
Откуда: Рыбинск. Ярославская область

Re: Динамический Query

Сообщение MaksimZ » 21 июн 2013, 08:54