Аналитика
http://geosystema.net/forum/

Не відображаються укр. букви у таблиці
http://geosystema.net/forum/viewtopic.php?f=1&t=19752
Страница 1 из 1

Автор:  osaaso [ 12 фев 2019 14:48 ]
Заголовок сообщения:  Не відображаються укр. букви у таблиці

Доброго дня!
допоможіть будь ласка розібратися з таблицями, що формуються зі скрипту (додаю текст скрипту і proba.dmf з двома таблицями)
Чому якщо писати назву укр. буквами, то цей рядок не відображається (в першій таблиці, де проставлена нумерація рядків таблиці).
Бо у другій таблиці - все правильно відображає (і укр. і анг. і .. всякими буквами, де немає нумерація рядків таблиці).

Код:
$Tab=@Calc char(9)
$Tab=@DequoteText $Tab
;;; === якщо прийняти $Punkt=село (укр. букви)   - то все зовсім не гуд
;;; === якщо прийняти $Punkt=selo   - то все гуд
$Punkt=село
;$Punkt=selo
$Line1=100
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@Text[1].Clear
@Text[2].Clear
$S1=Назва пункту $Tab Відстань (м)
@Text[1].Add $S1
$S2=№ з/п $Tab Назва пункту $Tab Відстань (м)
@Text[2].Add $S2
$I=0
$PC=2
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; цикл - початок
%Marker1
$I=$I+1
$Res1=$Punkt $Tab $Line1
@Text[1].Add $Res1
$Res2=$I $Tab $Punkt $Tab $Line1
@Text[2].Add $Res2
%Continue
@if $I<$PC then @Goto %Marker1
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; цикл кінець
$List1=@Text[1].text
@Map.SelectLayer ID51
$Numb1=@Map.SelectedObject
@Map.Object[$Numb1].TableText $List1
@Map.DeselectAll
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
$List2=@Text[2].text
@Map.SelectLayer ID52
$Numb2=@Map.SelectedObject
@Map.Object[$Numb2].TableText $List2
@Map.DeselectAll
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@Window.Refresh



П.С. можливо є зразок з формуванням таблиць даних за допомогою скрипту зі значень параметрів об"єктів на мапі.
(у Reports лізти не хочу, бо ще Pascal-ем не оволодів)

Вложения:
proba.dmf [20.7 Кб]
Скачиваний: 479

Автор:  Dmitry_Zolotar [ 12 фев 2019 18:38 ]
Заголовок сообщения:  Re: Не відображаються укр. букви у таблиці

Код:
...
$Res1=@Concat $Punkt,$Tab,$Line1
@Text[1].Add $Res1
$Res2=@Concat $I,$Tab,$Punkt,$Tab,$Line1
@Text[2].Add $Res2
...

Автор:  osaaso [ 12 фев 2019 19:18 ]
Заголовок сообщения:  Re: Не відображаються укр. букви у таблиці

Ясно, дуже дякую за відповідь!
Все пов"язане з комами!!! А я так хотів щоб в таблицях були коми, а не крапки (((
(маю наувазі роздільник цілої і дрібної частин)
Чому в таблиці Вставка-Таблиця-Координати наприклад стоять коми, а через скрипт - тільки крапки???

Автор:  fendak [ 12 фев 2019 20:39 ]
Заголовок сообщения:  Re: Не відображаються укр. букви у таблиці

osaaso писал(а):
А я так хотів щоб в таблицях були коми, а не крапки

перед додавання рядка в текст використайте:
$Res1=@ReplaceChar .,$Res1
і будуть вам в таблиці коми

Автор:  osaaso [ 12 фев 2019 22:37 ]
Заголовок сообщения:  Re: Не відображаються укр. букви у таблиці

fendak писал(а):
osaaso писал(а):
А я так хотів щоб в таблицях були коми, а не крапки

перед додавання рядка в текст використайте:
$Res1=@ReplaceChar .,$Res1
і будуть вам в таблиці коми


ця функція @ReplaceChar після якого оновлення програми працює, бо в мене (останнє оновлення 28.02.2018р.) вона здається не працює. В редакторі скрипту навіть не виділяється жирним шрифтом.
Спробував
Код:
$Res1=@Calc Replace("$Res1",".",",")
@Text[1].Add $Res1

- не працює, залишає крапки

Автор:  fendak [ 13 фев 2019 16:35 ]
Заголовок сообщения:  Re: Не відображаються укр. букви у таблиці

функція @ReplaceChar потребує нової версії (десь від серпня 2018 року)
$Res1=@Calc Replace("$Res1",".",",") також має впорятися із завданням, але при умові, що в тексті ніде не буде лапок.
Ну і після неї обов'язково додайте ще:
$Res1=@DequoteText $Res1

Автор:  osaaso [ 14 фев 2019 11:19 ]
Заголовок сообщения:  Re: Не відображаються укр. букви у таблиці

Дякую, fendak!
Спробував всі ці варіанти, але всеодно немає тих ком. Але не буду на разі зациклюватися над цим (в приоритеті потрібно головну задачу виконати).
А коми і крапки буду допилювати потім після оновлення програми (добавляться нові функції, а можливо і мій нештучний інтелект :roll: :) )

Усім дякую за приділену увагу!

Автор:  fendak [ 14 фев 2019 14:48 ]
Заголовок сообщения:  Re: Не відображаються укр. букви у таблиці

Пробуйте так:
$List1=@Text[1].text
$List1=@Calc Replace("$List1",".",",")
$List1=@DequoteText $List1

@Map.SelectLayer ID51
$Numb1=@Map.SelectedObject
@Map.Object[$Numb1].TableText $List1
@Map.DeselectAll

Спробував у себе - працює.

Автор:  osaaso [ 14 фев 2019 23:54 ]
Заголовок сообщения:  Re: Не відображаються укр. букви у таблиці

ЗАПРАЦЮВАЛО і в мене!!!
Ухх, напарився. Досі не розумію чого так, але виявляється:
що коли в рядки таблички (я в шапку таблиці - перший рядок) вписати символ лапок "
то буде виходити - нічого доброго взагалі не буде виходити. Коли видалив ті символи лапок - тоді запрацювало і з'явилися коми!
Я щасливий! ))
Дякую!

Доречі, знайшов в _:\Digitals\Library\ підпрограмку ReplaceDot.dsf і застосував її замість @Calc Replace. Розумію, що це масло-масляне, але
чого воно буде там даремно лежати - нехай працює (точніше підпрацює ) ).

Автор:  osaaso [ 24 фев 2019 20:24 ]
Заголовок сообщения:  Re: Не відображаються укр. букви у таблиці

Чи існує в скриптах команда, яка б виконувала ту саму функцію що й клавіша Insert на клавіатурі - на відкритій карті позначення об'єктів інвертуються?

-------
Питання "трішки" не в тему, але я не хочу засмічувати форум дрібничними темами ;)

--------
--------
Не завадив би вже повний і розгорнутий мануал по скриптах - багато питань би відпадало..

Автор:  Dmitry_Zolotar [ 25 фев 2019 02:13 ]
Заголовок сообщения:  Re: Не відображаються укр. букви у таблиці

osaaso писал(а):
Чи існує в скриптах команда, яка б виконувала ту саму функцію що й клавіша Insert на клавіатурі - на відкритій карті позначення об'єктів інвертуються?

-------
Питання "трішки" не в тему, але я не хочу засмічувати форум дрібничними темами ;)

--------
--------
Не завадив би вже повний і розгорнутий мануал по скриптах - багато питань би відпадало..

@ExecuteMenu EditInvert

внутрішнє ім'я пункта меню

Автор:  osaaso [ 25 фев 2019 11:40 ]
Заголовок сообщения:  Re: Не відображаються укр. букви у таблиці

@ExecuteMenu EditInvert

Супер, дякую!

Страница 1 из 1 Часовой пояс: UTC + 2 часа
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/