Skip to forum content
My Visual Database
A Simple Solution for Creating Databases
You are not logged in. Please login or register.
Active topics Unanswered topics
Search options (Page 166 of 400)
Topics by DriveSoft User defined search
Posts found: 4,126 to 4,150 of 9,999
sidhillsaid wrote:И ещё два вопроса, касаемых TWebBrowser
1) Как растянуть компонент на всю форму, при разворачивании окна?
2) Вы встроите весь вышеописаный функционал в версию 2.х - ведь TWebBrowser компонент этой версии.
Просто необходимо сдавать проект, а он в триал версии 3 создан, вскоре покупку попросит, или скажите, когда можно будет купить стабильную 3 версию?)
1. В другой вашей теме я сделал для вас пример.
2. Вы можете приобрести новую лицензию со скидкой 40% ($30), если необходимо, я могу вам на e-mail отправить ссылку для приобретения.
Приветствую.
К сожалению не совсем понял вопроса.
для новой записи полю id всегда присваивается уникальное значение, так и должно быть.
команду VACUUM можно выполнить так для конкретной таблицы
SQLExecute('VACUUM tablename');
либо так для всех таблиц
Сделал для вас пример, ассоциации задаются в скрипте, но по хорошему лучше сделать возможность создавать ассоциации в базе.
скрипт:
procedure Form1_edGroupSearch_OnChange (Sender: string);
begin
Form1.cbGroups.dbFilter := 'groupname LIKE "%'+ Form1.edGroupSearch.Text +'%"';
UpdateDatabase('groups');
if Form1.cbGroups.Items.Count = 2 then
begin
Form1.cbGroups.DroppedDown:=False;
Form1.cbGroups.ItemIndex := 1;
end else Form1.cbGroups.DroppedDown:=True;
if Form1.cbGroups.Items.Count = 1 then
begin
if (LowerCase(Form1.edGroupSearch.Text) = 'дом') or
(LowerCase(Form1.edGroupSearch.Text) = 'хата') then
begin
Form1.cbGroups.dbFilter := '';
UpdateDatabase('groups');
Form1.cbGroups.DroppedDown:=False;
Form1.cbGroups.dbItemID := 1;
end;
if (LowerCase(Form1.edGroupSearch.Text) = 'работа') then
begin
Form1.cbGroups.dbFilter := '';
UpdateDatabase('groups');
Form1.cbGroups.DroppedDown:=False;
Form1.cbGroups.dbItemID := 2;
end;
if (LowerCase(Form1.edGroupSearch.Text) = 'друг') or
(LowerCase(Form1.edGroupSearch.Text) = 'кореш') or
(LowerCase(Form1.edGroupSearch.Text) = 'друган') then
begin
Form1.cbGroups.dbFilter := '';
UpdateDatabase('groups');
Form1.cbGroups.DroppedDown:=False;
Form1.cbGroups.dbItemID := 3;
end;
end;
end;
Проект:
Скачайте снова бета версию.
Проект:
clyde wrote:Hello.
I've searched the forum but have been unable to find how to open a form to a specific record using a script. I have the id, I just want to do something like FormName.Show(id of the record I want to see on screen). Any help appreciated. Thanks.
Hello.
Please download latest beta version
http://myvisualdatabase.com/forum/viewtopic.php?id=2888
I have added method for form
Form2.ShowRecord('tablename', 1);
and
ShowRecord(Form2, 'tablename', 1);
sidhillsaid wrote:Разместил кнопку с данным кодом,
ругается на слово Stop
Я упомянул что сделаю метод Stop в следующей версии. Скачайте версию 3.05b
Скачайте версию 3.05b, пришлось добавить функцию ShowRecord
http://myvisualdatabase.com/forum/viewtopic.php?id=2887
Только после редактирования грид автоматически не будет обновляться.
Игоревич wrote:Продлю обязательно чуть позже. Срок продления какой
Ключ высылается как правило в течении 2-3 часов. Все минорные обновления бесплатны, т.е. v3.0 - 3.99
Версия 4 предположительно будет в ноябре 2017
Игоревич wrote:Вы добавили в версию setup 3.02a функцию GetComputerName которая мне необходима. но при этом там появились какие-то ошибки которых в версии 2,8 версии не было. Вопрос о продлении лицензии стоит.
Продление лиценции будет стоить $30, если желаете продлить, могу отправить на ваш e-mail ссылку для приобретения обновления.
sidhillsaid wrote:Отправил проект на почту, с описанием
Окно не закрывается, пока страница не загружена полностью, в след. версии сделаю метод Stop для браузера, т.е. просто разместите кнопку
procedure frmAvito_Button3_OnClick (Sender: string; var Cancel: boolean);
begin
Web.Stop;
end;
после нажатию на эту кнопку форму можно будет закрыть.
Также при создании объекта web, добавьте эту строку
тогда сообщения об ошибках на странице мешать не будут.
Игоревич wrote:Вообще не понял. Вы поправили но у меня получается незарегестрироованная версия. И что мне делать. Версии 2,9 не было. Вы исправили ошибки и что дальше. Мой проект который я делал в чопе. Круто. А делал его не один месяц.
Скачайте версию 2.8, там этой ошибки нет.
sidhillsaid wrote:Почему-то окно форма с tWebBrowser закрывается (как крестиком, так и по баттону закрытия формы) через раз. Иногда вообще не закрывается, с чем может быть связано?
И ещё, не понимаю значения строчки
while Web.ReadyState <> 4 do Application.ProcessMessages;
что она означает?
Приложите проект, с описанием, что необходимо сделать чтобы воспроизвести данное поведение.
Данная строка сама себя зацикливает, пока web страница не будет загружена браузером полностью,т.е. скрипт дальше не идет пока страница не будет загружена доконца.
Приведите пожалуйста ваш код, который осуществляет поиск в ComboBox
Hello.
procedure Form1_tgSearchExpenses_OnChange (Sender: string);
begin
Form1.edMnetTotal.Value := Form1.tgSearchExpenses.Columns[5].Footer.FormulaValue;
Form1.edMtaxTotal.Value := Form1.tgSearchExpenses.Columns[6].Footer.FormulaValue;
end;
v_pozidis wrote:I like to stop the work of a button when I press it and I use Form1.Button1.Cancel:=False; but it doesn't work.
In some cases I llike to work the button and in some cases not. Behind the button is a script
how is it possible ?
Please show me how exactly you use it.
Form1.Button1.Cancel it's not to stop something.
Determines whether the button's OnClick event handler executes when the Escape key is pressed.
If Cancel is true, the button's OnClick event handler executes when the user presses Esc.
Приветствую.
Думаю можно, скачивайте файлы с помощью функции HTTPGetFile и копируйте их в отдельную папку.
Имя файла вместе с путем записывайте в базу в поле photo_filename
RZ-007
после того как кликнули, поставьте паузу таким образом
Web.ClickElement('a', 'FORUM')
Sleep(1000);
Application.ProcessMessages;
Please open file tables.ini in any text editor.
Find and remove line
in [Rooms] section
Игоревич
Проверьте внесен ли в вашем проекте компонент DateTimePicker2 в настройках кнопки Поиск.
Ошибку поправил, скачайте пожалуйста снова бета версию
http://myvisualdatabase.com/forum/viewtopic.php?id=2887
Please attach your project (zip file without exe and dlls)
Kirs wrote:Извиняюсь Дмитрий а с первым вопросом можете помочь? Попробую более конкретнее описать. Можно както искать одним комбобоксом связи из разных полей?
Для этого вам придеться реализовать поиск с помощью SQL запроса (кнопка с действием "SQL запрос")
пример запроса:
SELECT
person.firstname,
person.lastname,
groups.groupname,
groups1.groupname,
person.id
FROM person
LEFT OUTER JOIN groups ON groups.id=person.id_groups
LEFT OUTER JOIN groups groups1 ON groups1.id=person.id_groups1
WHERE
(CASE WHEN {cbGroup}=-1 THEN 1=1 ELSE person.id_groups={cbGroup} END) OR
(CASE WHEN {cbGroup}=-1 THEN 1=1 ELSE person.id_groups1={cbGroup} END)
если не получиться реализовать самостоятельно, приложите ваш проект с описанием, где именно это необходимо.
Скорей всего в настройках вашего MySQL сервера установлен короткий таймаут.
Выполните данный SQL запрос, который установит таймаут на значение, которое обычно присутствует по умолчанию
SET @@GLOBAL.interactive_timeout=28800
выполнить данный sql запрос можно например с помощью кнопки с действием "SQL запрос"
дополнил
procedure Form1_bLineUpdate_OnClick (Sender: string; var Cancel: boolean);
var
Results: TDataSet;
DateValue: Double;
QtyValue: string;
sSQL, s: string;
sCountry, sRegion, sCity, sDateFrom, sDateTo: string;
begin
ChartBar.Series[0].Clear;
sCountry := IntToStr(Form1.cbCountry.dbItemID);
sRegion := IntToStr(Form1.cbRegion.dbItemID);
sCity := IntToStr(Form1.cbCity.dbItemID);
sDateFrom := Form1.DateTimePicker1.sqlDate;
sDateTo := Form1.DateTimePicker2.sqlDate;
sSQL :=
'SELECT '+
' Country.country, '+
' COUNT(Country.id) as qty'+
' FROM MyFavoriteCities '+
' LEFT OUTER JOIN City ON City.id=MyFavoriteCities.id_City '+
' LEFT OUTER JOIN Region ON Region.id=City.id_Region '+
' LEFT OUTER JOIN Country ON Country.id=Region.id_Country '+
'WHERE '+
'(CASE WHEN '+sCountry+'=-1 THEN 1=1 ELSE Country.id='+sCountry+' END) AND '+
'(CASE WHEN '+sRegion+'=-1 THEN 1=1 ELSE Region.id='+sRegion+' END) AND '+
'(CASE WHEN '+sCity+'=-1 THEN 1=1 ELSE City.id='+sCity+' END) AND' +
'(CASE WHEN '+sDateFrom+' IS NULL THEN 1=1 ELSE MyFavoriteCities."Date">=date('+sDateFrom+') END) AND' +
'(CASE WHEN '+sDateTo+' IS NULL THEN 1=1 ELSE MyFavoriteCities."Date"<=date('+sDateTo+') END) ' +
'GROUP BY Country.id ';
SQLQuery(sSQL, Results);
while not Results.Eof do
begin
s := Results.FieldByName('country').asString ;
QtyValue := Results.FieldByName('qty').asString;
if ValidInt(QtyValue) then ChartBar.Series[0].AddY(StrToInt(QtyValue), s );
Results.Next;
end;
end;
в примере выше код всегда получается с текущей страницы
sHTML := Web.GetHTMLBody; // получем html код страницы
sidhillsaid wrote:Большое спасибо, вечером опробую!
И, пока не опробывал, но посмотрел код, возможно будет проблема с конечной позицией, так как конечная позиция - это тег </div> которым заканчивается каждый блок в исходном коде, скрипт поймет какой именно <div> нужен?
Поймет, данная строка ищет закрывающий div начиная с начальной позиции, где div открывается
iEnd := PosEx('</div>', sHTML, iStart);
в параметре iStart указывается начало поиска.
Posts found: 4,126 to 4,150 of 9,999