Вверх ↑
Ответов: 67
Рейтинг: 1
#1: 2021-12-10 10:05:42 ЛС | профиль | цитата
Если данные выводим в StringTable то они отображаются полностью ( вся строка из всех столбцов что есть в таблице )
но вот если пытаюсь вывести данные в Memo то то часть строки начиная с седьмого столбца исчезает.

Как-то можно победить это ?

Снимок.JPG

Add(MainForm,9332733,686,119)
{
Width=746
Height=466
Point(onClose)
link(onCreate,15147289:doExecute,[])
link(onClose,1585281:doDisconnect,[(746,146)(746,189)(903,189)(903,349)])
}
Add(ODBC,1585281,938,322)
{
Driver="Firebird/InterBase(r) driver"
Exclusive=1
Point(ColumnsCount)
Point(doConnectDrv)
Point(ConnectionDrv)
Point(onColumnsInfo)
Point(FieldName)
Point(FieldType)
Point(FieldSize)
link(onStreamString,12021712:doConvert,[])
link(ConnectionDrv,10289808:Value,[])
link(onColumnsInfo,8475914:doEvent1,[])
}
Add(FormatStr,15707348,819,329)
{
Mask="SELECT FIRST 50 * FROM "TBL_ANIMAL"\r\n"
link(onFString,8088289:doEvent1,[])
}
Add(Menu,8896884,686,322)
{
Menu=#5:start|4:test|
Point(onSelectNum)
link(onSelectNum,13964963:doEvent,[])
}
Add(StringTable,16719132,1190,322)
{
Top=195
Width=730
Height=232
ClearAll=0
Point(doAddColumn)
}
Add(InlineCode,11414078,1050,322)
{
@Hint=#45:Формирует строку для добавления в StringTable|
WorkPoints=#53:doString=Формирование строки для вывода в StringTable|
EventPoints=#74:onEvent=Происходит когда все поля строки заполнены и выдаёт строку в поток|
DataPoints=#45:Fields=Количество полей для заполнения строки|
Code=#15:unit HiAsmUnit;|0:|9:interface|0:|23:uses kol, Share, Debug;|0:|4:type|30: THiAsmClass = class( TDebug )|10: private|9: public|26: _data_Data: THI_Event;|22: Fields: THI_Event;|23: onEvent: THI_Event;|16: Count: Word;|19: StrOut: String;|53: procedure doString( var _Data:TData; Index:word );|5: end;|0:|14:implementation|0:|62:procedure THiAsmClass.doString( var _Data:TData; Index:word );|5: var|17: Data : TData;|15: i: Integer;|20: strTemp: String;|7: begin|31: Data.Data_type := data_str;|21: Data.sdata := '';|51: strTemp := ReadString( _data, _data_Data, '' );|31: Data.Data_type := data_int;|20: Data.idata := 0;|41: i := ReadInteger( _data, Fields, 0 );|38: strOut := strOut + strTemp + ';' ;|17: Inc( Count );|27: if Count = i then begin|36: _hi_onEvent( onEvent, strOut );|16: Count := 0;|18: strOut := '';|15: end; { If }|6: end;|0:|4:end.|
link(onEvent,9475796:doEvent1,[])
link(Fields,1585281:ColumnsCount,[(1056,313)(1042,313)(1042,369)(944,369)])
}
Add(Memory,10289808,945,266)
{
link(onData,1585281:doConnectDrv,[(984,272)(984,307)(928,307)(928,356)])
}
Add(Hub,8088289,868,329)
{
link(onEvent1,1585281:doQuery,[])
}
Add(IndexToChanel,13964963,742,329)
{
link(onEvent1,15707348:doString,[])
}
Add(StreamConvertor,12021712,994,322)
{
Mode=6
link(onResult,11414078:doString,[])
}
Add(Convertor,14140405,1001,266)
{
Mode=11
}
Add(ODialog,15147289,756,133)
{
Filter="fdb|*.fdb"
link(onExecute,14538752:doString,[])
}
Add(FormatStr,14538752,812,133)
{
Mask="DRIVER=Firebird/InterBase(r) driver;UID=SYSDBA;PWD=masterkey;DBNAME=localhost:%1;"
link(onFString,10289808:doValue,[(915,139)(915,272)])
}
Add(Hub,9475796,1120,322)
{
link(onEvent1,16719132:doAdd,[])
link(onEvent2,2375726:doAdd,[(1152,335)(1152,223)])
}
Add(Hub,8475914,1120,343)
{
link(onEvent1,16719132:doAddColumn,[])
}
Add(Memo,2375726,1169,217)
{
Width=730
Height=195
ScrollBars=3
}

карма: 1

0
Редактировалось 1 раз(а), последний 2021-12-10 10:06:55