насколько я помню на ранних версиях программы какие то примеры были, вот только не могу найти.
Да, при необходимости его можно создать с помощью скрипта, доработал пример:
My Visual Database → Posts by DriveSoft
насколько я помню на ранних версиях программы какие то примеры были, вот только не могу найти.
Да, при необходимости его можно создать с помощью скрипта, доработал пример:
Popkov-alex
Здравствуйте.
У компонента ComboBox есть свойство Filter, где вы можете написать условие для фильтрации записей.
Например можете скрыть первую запись, которая имеет id=1
id<>1
т.о. будут показаны записи, id которых не равно 1
prahousefamily
Please send me your project to support@drive-software.com with link on this topic
Hello.
procedure StudentDashBoard_TableGrid1_OnCellClick (Sender: string; ACol, ARow: Integer);
begin
StudentDashBoard.DBImage1.Clear;
StudentDashBoard.DBImage1.LoadFromDatabase('StudentDatabase', 'Photo', StudentDashBoard.TableGrid1.dbItemID);
end;
Unfortunately I can help you only with specific question.
1. К сожалению поиск по полю Дата/Время с использованием SQL запроса не был реализован в старой версии.
2. Это можно сделать скриптом, пример
procedure frmReports_сохранить_OnClick (Sender: string; var Cancel: boolean);
begin
SQLExecute('insert or replace into period (id, timefrom, timeto) VALUES (1, "'+ FormatDateTime('yyyy-MM-DD hh:nn:ss.000', frac(frmReports.dtFrom.datetime)+trunc(frmReports.tFrom.datetime) ) +'", "'+FormatDateTime('yyyy-MM-DD hh:nn:ss.000', frac(frmReports.dtTo.datetime) + trunc(frmReports.tTo.datetime))+'")');
frmReports.TableGrid2.dbUpdate;
end;
только уберите действие "Сохранить запись" для кнопки "сохранить"
Огромное спасибо! Очень круто.
Можно еще добавить туда полосу загрузки? Ну типа когда копируеш файл а там показывается остававшееся время и зеленая полоса.
К сожалению компонент ProgressBar пока не поддерживается.
Если на сайте имеется MySQL база данных, то вы можете с помощью скрипта подключиться к ней и выполнить SQL запрос, чтобы добавить ваши данные, затем эти данные можно показать через WebGrid, пример
http://myvisualdatabase.com/webgrid/
Проще всего было бы сгенерировать html файл с помощью скрипта и загружать его на сервер используя Ftp, но пока это не реализовано, т.к. никто пока не просил об этом )
Hello.
There is no changes in the function FormatFloat, but there is some changes in the TableGrid.
Please attach your project, I will test.
memult
В вашем запросе здесь используется логика AND, т.е. будут показаны записи в которых есть совпадения в skan.prim и skan.klslovo одновременно, в вашем случае необходимо использовать логику OR
((CASE WHEN '{edsearch}' <> '' THEN skan.prim LIKE '%{edsearch}%' ELSE 1=1 END) OR (CASE WHEN '{edsearch}' <> '' THEN skan.klslovo LIKE '%{edsearch}%' ELSE 1=1 END)) AND
Только в программе. Причём на одном компьютере только.
На других пробовал все нормально.
Поэтому и решил уточнить, возможно есть возможность установить разрешение самой программы.
Не могли бы вы сделать скриншот? Можете отправить его на support@drive-software.com со ссылкой на данную тему.
kovalenko
Если сделаете маску, которую я привел выше, то именно так и будет.
Fixed project:
kovalenko
У компонент TextBox есть свойство EditMask, присвойте ему значение:
!\(999\)000-0000;1;_
abgroup-artur
Я правильно понимаю, что вам необходимо получить идентификатор внешнего ключа id_KP из выбранной записи грида?
Hello.
An example for you:
legerman
К сожалению ваш вопрос больше похож на рассказ )
Пожалуйста сформулируйте вопрос более конкретно.
К сожалению не могу повторить ошибку. Опишите пожалуйста подробней пошаговые действия приводящие к ошибке.
Также не совсем ясно, что значит "При редактировании TextBox при прокрутке меню"
Please download latest version (3.3), example:
http://myvisualdatabase.com/forum/viewt … ?pid=19481
Hello Dmitry,
Sergen has found a clever workaround to my question about it, but I think à help system could be really valuable to MVD and to the application we develop.
Could you had a way to open contextual help file page based on the index or ID of the page in the .chm file ? Or the Shelexecute command ? But I really feel that the HelpContext and HelpIndex would be better.
Either way, I'm sure you'll your best.
Thank you and cheers
Mathias
Hello.
Please download latest version (3.3), example:
http://myvisualdatabase.com/forum/viewt … ?pid=19481
Example, how to work with .chm help file in your project (ver. 3.3 and above):
const
IDH_TOPIC10 = 10;
IDH_TOPIC20 = 20;
IDH_TOPIC30 = 30;
IDH_TOPIC40 = 40;
IDH_TOPIC50 = 50;
procedure Form1_OnShow (Sender: string; Action: string);
begin
Application.HelpFile := ExtractFilePath(Application.ExeName) + 'Help\HelpFile.chm';
end;
procedure Form1_bContents_OnClick (Sender: string; var Cancel: boolean);
begin
Application.HelpContents;
end;
procedure Form1_bIndex_OnClick (Sender: string; var Cancel: boolean);
begin
Application.HelpIndex('test');
end;
procedure Form1_bSearch_OnClick (Sender: string; var Cancel: boolean);
begin
Application.HelpSearch;
end;
procedure Form1_bTopic30_OnClick (Sender: string; var Cancel: boolean);
begin
Application.HelpContext(IDH_TOPIC30);
end;
procedure Form1_bTopic40_OnClick (Sender: string; var Cancel: boolean);
begin
Application.HelpContext(IDH_TOPIC40);
end;
procedure Form1_bKeyword_OnClick (Sender: string; var Cancel: boolean);
begin
Application.HelpKeyword('Test');
end;
Example project:
Пример работы со справкой в формате .chm (начиная с версии 3.3)
const
IDH_TOPIC10 = 10;
IDH_TOPIC20 = 20;
IDH_TOPIC30 = 30;
IDH_TOPIC40 = 40;
IDH_TOPIC50 = 50;
procedure Form1_OnShow (Sender: string; Action: string);
begin
Application.HelpFile := ExtractFilePath(Application.ExeName) + 'Help\HelpFile.chm';
end;
procedure Form1_bContents_OnClick (Sender: string; var Cancel: boolean);
begin
Application.HelpContents;
end;
procedure Form1_bIndex_OnClick (Sender: string; var Cancel: boolean);
begin
Application.HelpIndex('test');
end;
procedure Form1_bSearch_OnClick (Sender: string; var Cancel: boolean);
begin
Application.HelpSearch;
end;
procedure Form1_bTopic30_OnClick (Sender: string; var Cancel: boolean);
begin
Application.HelpContext(IDH_TOPIC30);
end;
procedure Form1_bTopic40_OnClick (Sender: string; var Cancel: boolean);
begin
Application.HelpContext(IDH_TOPIC40);
end;
procedure Form1_bKeyword_OnClick (Sender: string; var Cancel: boolean);
begin
Application.HelpKeyword('Test');
end;
Проект с примером:
Данный пример позволяет обработать ошибку, которая возникла непосредственно в базе данных (СУБД).
Например вы установили ограничение UNIQUE для какого либо поля в БД. Когда вы пытаетесь создать запись с дубликатом по данному полю, то получите системную ошибку от СУБД, которую можете перехватить и обработать ее так, как вам необходимо. Пример:
// глобальное события для всех ошибок от СУБД
function OnSQLException(Sender: TObject; Msg: string; SQL: string): boolean;
begin
// ошибка при выполнении функций SQLExecute или SQLQuery
if Sender=nil then
begin
result := true; // предотвращает показ системной ошибки
ShowMessage(Msg); // ваше сообщение об ошибке может быть здесь
end;
// ошибка возкнила при выполнении действия кнопки frmEmployee.bSaveEmp
if Sender = frmEmployee.bSaveEmp then
begin
if Pos('UNIQUE constraint failed', Msg)=1 then // по тексту сообщения узнает тип ошибки.
begin
result := True; // предотвращает показ системной ошибки
MessageBox('Человек с данной фамилией уже присутствует в БД..', 'Error', MB_OK+MB_ICONWARNING);
end;
end;
end;
procedure Form1_Button5_OnClick (Sender: string; var Cancel: boolean);
begin
SQLExecute('INSERT INTO employees (lastname) VALUES ("ivanov")');
end;
procedure Form1_Button6_OnClick (Sender: string; var Cancel: boolean);
var
Results: TDataSet;
begin
SQLQuery('INSERT INTO employees (lastname) VALUES ("ivanov")', Results);
end;
Проект с примером:
Видимо каждый запрос нужно взять в скобки, т.е.
(SELECT count(*) FROM zapravkakioc WHERE zap1 = '+')
+
(SELECT count(*) FROM zapravkakioc WHERE zap2 = '+')
+
(SELECT count(*) FROM zapravkakioc WHERE zap3 = '+')
+
(SELECT count(*) FROM zapravkakioc WHERE zap4 = '+')
+
(SELECT count(*) FROM zapravkakioc WHERE zap5 = '+')
+
(SELECT count(*) FROM zapravkakioc WHERE zap6 = '+')
+
(SELECT count(*) FROM zapravkakioc WHERE zap7 = '+')
+
(SELECT count(*) FROM zapravkakioc WHERE zap8 = '+')
Если не сработает, приложите пожалуйста ваш проект.
Попробуйте тогда так
SELECT count(*) FROM zapravkakioc WHERE zap1 = '+'
+
SELECT count(*) FROM zapravkakioc WHERE zap2 = '+'
+
SELECT count(*) FROM zapravkakioc WHERE zap3 = '+'
+
SELECT count(*) FROM zapravkakioc WHERE zap4 = '+'
+
SELECT count(*) FROM zapravkakioc WHERE zap5 = '+'
+
SELECT count(*) FROM zapravkakioc WHERE zap6 = '+'
+
SELECT count(*) FROM zapravkakioc WHERE zap7 = '+'
+
SELECT count(*) FROM zapravkakioc WHERE zap8 = '+'
My Visual Database → Posts by DriveSoft
Powered by PunBB, supported by Informer Technologies, Inc.
Theme Hydrogen by Kushi