Topic: Финальная версия 5.4

Финальная версия 5.4


Скачать
http://myvisualdatabase.com/download/myvisualdb.exe



Что нового?


- Добавлена возможность изменять шрифт и стиль для редактора скриптов (Меню: Файл > Настройки > Редактор скриптов)
http://myvisualdatabase.com/forum/misc.php?action=pun_attachment&item=5376&download=0


- Добавлена возможность експорта данных в CSV (Меню: Инструменты > Export data) (в соответсвии со стандартом RFC 4180)
http://myvisualdatabase.com/forum/misc.php?action=pun_attachment&item=5462&download=0


- Добавлена возможность импорта данных из CSV (Меню: Инструменты > Import data)  (в соответсвии со стандартом RFC 4180)
http://myvisualdatabase.com/forum/misc.php?action=pun_attachment&item=5463&download=0


- Другие незначительные доработки.
- Исправлено несколько ошибок.

Post's attachments

Attachment icon export.png 81.62 kb, 172 downloads since 2019-05-17 

Attachment icon FontStyle.png 109.93 kb, 192 downloads since 2019-04-25 

Attachment icon import.png 106.79 kb, 184 downloads since 2019-05-17 

Dmitry.

Re: Финальная версия 5.4

vovka3003 wrote:

Это другой редактор..?

Нет.

Dmitry.

Re: Финальная версия 5.4

Шикарная новость что теперь есть возможность импортировать и экспортировать данные без скриптов и танцев с бубнами !!!
Заказчик будет ооочень доволен! Большое спасибо!
Жаль нет возможности импорта полноценного Excel с картинками, но как говорится слона надо есть по кусочкам...
Подскажите пожалуйста, можно ли повесить эти функции на Button на форме по аналогии с Form1.mniSettings.Click; ???
Спасибо!

Re: Финальная версия 5.4

P/S:
1) Попытался Импортировать csv файл (разделитель запятая), не видит ни одной записи, но как только заменил Columns separator (на форме загрузки) на ";" сразу все пошло как по маслу.
2) Указал в excel в первой строчке название столбцов таблицы (intnum, extnum ….), но привязки не получилось, пришлось указывать все в ручном режиме (все замечательно загрузилось).
3) после выбора csv файла сразу вылетает ошибка(2 раза подряд) "Error at 34, 70: Unexpected character after terminating '"' ", жму ок и все дальше нормально работает.

В остальном полет нормальный! еще раз спасибо за такую возможность!

5 (edited by abc52 2019-05-05 16:57:18)

Re: Финальная версия 5.4

Около 50 лет с времен Вирта формат языка Паскаль
    не менялся.  Я имею ввиду его совершенствование
    за счет дополнения сокращений.       Например:
    Procedure - Pro  Function - Fun. then, begin - вообще лишние
   
     If a=1 then begin b:=1;c:=1;end; else begin b:=2;c:=2;end;
   
     if a=1;b:=1;c:=1;L;b:=2;c:=2;E; (< 2 раза)  где L-else E-end
    (или    if a=1\b:=1\c:=1\L\b:=2\c:=2\E\     \  вместо  ;  )
   
   И это не сложно сделать преобразованием
         script_pro  -> script.pas  перед компиляцией

    за счет подобных сокращений можно получить 3-5 кратный эффект

Re: Финальная версия 5.4

abc52 wrote:

Около 50 лет с времен Вирта формат языка Паскаль
    не менялся.  Я имею ввиду его совершенствование
    за счет дополнения сокращений.       Например:
    Procedure - Pro  Function - Fun. then, begin - вообще лишние
   
     If a=1 then begin b:=1;c:=1;end; else begin b:=2;c:=2;end;
   
     if a=1;b:=1;c:=1;L;b:=2;c:=2;E; (< 2 раза)  где L-else E-end
    (или    if a=1\b:=1\c:=1\L\b:=2\c:=2\E\     \  вместо  ;  )
   
   И это не сложно сделать преобразованием
         script_pro  -> script.pas  перед компиляцией

    за счет подобных сокращений можно получить 3-5 кратный эффект

Простите, получить 3-5 кратный эффект чего?  Что исходник станет похожим на С или Java?  Или менее читабельным? 


Если же говорить о скорости набора, то я бы оценил хоткеи или автоподстановку (как это сделано в IDE Delphi), но сами исходники менять не стоит.

Визуальное программирование: блог и телеграм-канал.

Re: Финальная версия 5.4

Нашел небольшой косяк в работе WebGrid.
Если пытаешься в одной таблице выгрузить данные из основной + связанных по Id таблиц, то из связанной таблицы выгружается только значение последнего поля.
Для примера:
Есть таблица1: Номер, дата, id_2
         таблица2: id, значение1, значение2, значение3, описание.
Делаю WebGrid:
Выбранные поля: таблица1.Номер, таблица1.Дата, таблица2.Значение1, таблица2.значение2, таблица2.значение3, таблица2.описание.

Результат:  таблица1.Номер, таблица1.Дата,отсутствует,отсутствует,отсутствует, таблица2.описание.

Беглый анализ (не факт что верный, но ) показал что это как-то связанно с тем, что в файле index.html поля второй таблицы имеют одинаковое название.
заполняется только последнее поле из второстепенной таблицы. и не важно сколько их 2,3,4.....

Думаю имеет смысл делать название полей включая в них название таблицы. так как допустим в моем проекте куча полей с названием Description и редактируя index.html не всегда понятно о каком поле именно идет речь.
К сожалению я только начал разбираться с php и html и у меня не хватает четкого понимания как и что работает.

И еще вопрос/пожелание: Можно ли как-то сделать сохранение проекта для WebGrid? так как внося любые изменения в структуру бд приходится делать WebGrid с нуля... а так зашел в готовый проект, добавил/изменил что-то и пере сохранил. было бы супер.

Как-то так.

В любом случае Огромное спасибо за столько удобный в работе инструмент!

Re: Финальная версия 5.4

zm_net
выводить таким образом несколько полей из второй таблицы нет большого смысла, т.к. при редактировании такой записи, не ясно, каким точно полем необходимо изменять значение поля "таблица1.id_2" ?


Поэтому для вывода значений из таблицы 2 используйте вычисляемое поле вида

таблица2.значение1 || ' ' || таблица2.значение2 || ' ' || таблица2.значение3 || ' ' || таблица2.описание

таким образом у вас будет только одно поле из второй таблицы.



Пока сохранение проекта для WebGrid не реализовано, но спасибо за идею.

Dmitry.

Re: Финальная версия 5.4

А по проектам WebGrid есть какой-нибудь рабочий пример? Точнее, пошаговая инструкция развёртывания сервера и подключения базы?

Визуальное программирование: блог и телеграм-канал.

Re: Финальная версия 5.4

k245 wrote:

А по проектам WebGrid есть какой-нибудь рабочий пример? Точнее, пошаговая инструкция развёртывания сервера и подключения базы?

При работе с web сервером, предполагается, что пользователь знаком с такими вещами как Apache+PHP+MySQL, это самая обычная и стандартная конфигурацию web сервера.


Можно скачать готовый web сервер
https://www.vswamp.com/


Либо воспользоваться web хостингом, который в 99% случаев подходит для этого.

Dmitry.

Re: Финальная версия 5.4

DriveSoft wrote:

При работе с web сервером, предполагается, что пользователь знаком с такими вещами как Apache+PHP+MySQL, это самая обычная и стандартная конфигурацию web сервера.


Можно скачать готовый web сервер
https://www.vswamp.com/


Либо воспользоваться web хостингом, который в 99% случаев подходит для этого.

Спасибо! 

Как-то раз ставил у себя на машинке Wordpress (нужно было инструкцию написать для AD-плагина), тогда тоже была сборка, которая вообще не требовала настройки (была только маленькая инструкция по администрированию самого  Wordpress). Думаю,что и с этим разберусь )))

Визуальное программирование: блог и телеграм-канал.

Re: Финальная версия 5.4

A почему не вызываются процедуры с параметрами,например,
   name(1)  в свойстве Button и событии onClick,
   однако  в скриптах это работает.

Re: Финальная версия 5.4

abc52 wrote:

A почему не вызываются процедуры с параметрами,например,
   name(1)  в свойстве Button и событии onClick,
   однако  в скриптах это работает.

Почему не вызываются, все вызывается, либо я не понял правильно вопрос. Дайте пожалуйста пример.

Dmitry.

14 (edited by abc52 2019-05-17 08:14:24)

Re: Финальная версия 5.4

Ув. Дмитрий !

Работает  только  кнопка    "proc1"          см.  script.pas 

Не понятно как  отправить  пример  A_proc.rar

var s,x: string;

procedure proc1(s,x: string);  begin  proc('p1'); func(' F1 ');end; // proc1 - работает

function func(x: string):string;  begin   ShowMessage(x); end;

procedure proc(s: string);  begin   ShowMessage(s); end; // proc(' p2 ') - не работает

begin
end.

Re: Финальная версия 5.4

abc52 wrote:

Ув. Дмитрий !

Работает  только  кнопка    "proc1"          см.  script.pas 

Не понятно как  отправить  пример  A_proc.rar

var s,x: string;

procedure proc1(s,x: string);  begin  proc('p1'); func(' F1 ');end; // proc1 - работает

function func(x: string):string;  begin   ShowMessage(x); end;

procedure proc(s: string);  begin   ShowMessage(s); end; // proc(' p2 ') - не работает

begin
end.


проверил, работает

procedure Form1_Button1_OnClick (Sender: TObject; var Cancel: boolean);
begin
    proc(' p2 ');
end;

procedure proc1(s,x: string);
begin
    proc('p1');
    func(' F1 ');
end; // proc1 - работает

function func(x: string):string;
begin
    ShowMessage(x);
end;

procedure proc(s: string);
begin
    ShowMessage(s);
end; // proc(' p2 ') - не работает


begin

end.

можете прислать свой проект на support@drive-software.com
протестирую.

Dmitry.

Re: Финальная версия 5.4

procedure Form1_Button1_OnClick (Sender: TObject; var Cancel: boolean);
begin
    proc(' p2 ');
end;

Так конечно работает   
В  событии  OnClick    proc(' p2 ')    не работает

Re: Финальная версия 5.4

Так делать нельзя, необходимо создавать событие OnClick, затем уже из этого события вызывать proc('2');
т.е.

procedure Form1_Button1_OnClick (Sender: TObject; var Cancel: boolean);
begin
    proc(' p2 ');
end;
Dmitry.

Re: Финальная версия 5.4

Импорт и Экпорт доработан, скачайте пожалуйста снова бета версию.

Dmitry.

Re: Финальная версия 5.4

Ув.  Дмитрий !

  Очень жаль, что  нельзя.

Но наверное можно задействовать клавишу Esc в формах,
кроме главной  ( без  Onclick  )  в  версии  5.4 бета.

   Свободная  левая рука  тянется  к  Esc.

Re: Финальная версия 5.4

abc52 wrote:

Ув.  Дмитрий !

  Очень жаль, что  нельзя.

Но наверное можно задействовать клавишу Esc в формах,
кроме главной  ( без  Onclick  )  в  версии  5.4 бета.

   Свободная  левая рука  тянется  к  Esc.

Задействовать для чего? Для закрытия формы? Для этого расположите на форму кнопку с действием "Закрыть форму", по умолчанию данная кнопка закрывает форму и при нажатии на Esc.

Dmitry.

21 (edited by abc52 2019-05-17 17:35:08)

Re: Финальная версия 5.4

Ув.  Дмитрий !  Спасибо за  понимание
 
   Совершенно  верно - для закрытия формы.

  Esc   для этого  и  подходит  как  стандарт
  под  левую  руку в большинстве программ.

  Сделайте,  пожалуйста,   левой  руке  подарок.
   (  правая  в это время  отдохнет  )

Re: Финальная версия 5.4

импорт/экспорт - супер..
но хотелось бы некоторые таблицы скрыть

Re: Финальная версия 5.4

sibprogsistem wrote:

импорт/экспорт - супер..
но хотелось бы некоторые таблицы скрыть

Скачайте пожалуйста  бета версию 5.5
https://www.dropbox.com/s/to42wv53pdc0g … a.zip?dl=0


В меню вызов экспорта и импорта можно скрыть, а вызывать его через скрипт, скрывая необходимые таблицы, как в этом примере скрывается таблица с именем person


procedure Form1_OnShow (Sender: TObject; Action: string);
begin
    Form1.mniExportData.Visible := False;
    Form1.mniImportData.Visible := False;
end;

procedure Form1_Button1_OnClick (Sender: TObject; var Cancel: boolean);
var
    i: integer;
begin
    frmdbCoreImport.Show;

     for i := frmdbCoreImport.cbTableName.Items.Count-1 downto 0 do
     begin
         if frmdbCoreImport.cbTableName.Items[i] = 'person' then frmdbCoreImport.cbTableName.Items.Delete(i);
     end;
end;

procedure Form1_Button2_OnClick (Sender: TObject; var Cancel: boolean);
var                              
    i: integer;
begin
     frmdbCoreExport.Show;

     for i := frmdbCoreExport.gridTables.RowCount-1 downto 0 do
     begin
         if frmdbCoreExport.gridTables.Cells[0, i] = 'person' then frmdbCoreExport.gridTables.DeleteRow(i);
     end;
end;
Dmitry.

Re: Финальная версия 5.4

дайте пожалуйста пример проекта где и как это делается.

Re: Финальная версия 5.4

ivan wrote:

дайте пожалуйста пример проекта где и как это делается.

Post's attachments

Attachment icon Phone Book ImportExport.zip 156.63 kb, 370 downloads since 2019-05-23 

Dmitry.