Форум » [x]Harbour » Совместное использование терминалки и МиниГуи ? » Ответить

Совместное использование терминалки и МиниГуи ?

Andrey: Использую совместно прогу на терминалке и прогу на МиниГуи. Базы оставил в RU866-кодировке. Терминалка экран тоже в RU866-кодировке. МиниГуи - тексты в RU1251 В терминалке в базе в текстовое поле пишу знак галочка "√" - CHR(251) В тексте для МиниГуи как сделать проверку этого поля на этот знак ? Достаточно ли будет: [pre2]USE TEST ALIAS TEMP VIA 'DBFCDX' NEW CODEPAGE 'RU866' ? AT(CHR(251), TEMP->TRUBA ) > 0 [/pre2]

Ответов - 4

Dima: Andrey пишет: В терминалке в базе в текстовое поле пишу знак галочка "√" - CHR(251) Пиши "L" или "N" (я про тип поля) а в бровсе показывай галочку или что тебе надо , тогда и таких мега проверок увязанных с разницей кодировок делать не придется. А вообще тебе виднее

Andrey: Я проверил, вроде работает... cRet := TEMP->TRUBA IF AT(CHR(251),cRet) > 0 cRet := CharRepl(CHR(251),cRet,"#") ENDIF Т.е. для МиниГуи задачи знак галочка заменяю на "#" А как сделать замену для БД соединённых по SET RELATION. У меня 0 поле для терминалки внесены CHR(250), и при показе в базах юзер сразу видит, что колонки справочников не заполнены. Т.е. вот так в базе: Если базу показываешь на МиниГуи, то это выглядит так: Можно ли как то подменять это значение для SET RELATION ? Я раньше делал перекодировку для МиниГуи, но нужно совместно использовать базы - для терминалки и МиниГуи. Юзер не хочет пока переходить на новую программу, привык к терминалке и всё тут.

SergKis: попробуй[pre2] set relation to ky into my ... ? GetFldRelatC( 'my->TRUBA', "RU866" ) ... FUNC GetFldRelat( cFld, cdp ) Local cdpo := hb_cdpSelect( cdp ) Local cval := &cFld If chr(250) $ cval cval := StrTran( cval, chr(250), '?' ) EndIf hb_cdpSelect( cdpo ) RETURN hb_translate(cval, cdp, cdpo)[/pre2]


Andrey: SergKis пишет: попробуй Спасибо !



полная версия страницы