kdvima
Приветствую.
Пожалуйста создайте отдельную тему для данного вопроса.
Попробуйте также уточнить вопрос, т.к. он сформулирован немного размыто, и приложите ваш проект (zip файл без exe и dll)
My Visual Database → Posts by DriveSoft
kdvima
Приветствую.
Пожалуйста создайте отдельную тему для данного вопроса.
Попробуйте также уточнить вопрос, т.к. он сформулирован немного размыто, и приложите ваш проект (zip файл без exe и dll)
Example for save dialog
procedure Form1_Button1_OnClick (Sender: string; var Cancel: boolean);
var
SaveDialog: TSaveDialog;
begin
SaveDialog := TSaveDialog.Create(Form1);
if SaveDialog.Execute then
begin
ShowMessage( SaveDialog.FileName );
end;
SaveDialog.Free;
end;
for select folder:
procedure Form1_Button2_OnClick (Sender: string; var Cancel: boolean);
var
s: string;
begin
s := '';
SelectDirectory('Caption', 'c:\', s); // default dialog
SelectDirectory('Caption', 'c:\', s, True); // with button create a directory
SelectDirectory('Caption', 'c:\', s, True, True); // with button create a directory and shows files
if s<>'' then ShowMessage(s);
end;
В дизайнере отчета, у объекта Page1 есть свойство BackPicture, в котором вы можете выбрать необходимый рисунок.
Только его предварительно необходимо подготовить, создать рисунок с размером листа A4. Проще всего это сделать с помощью Photoshop, в котором можете создать рисунок, выбрав размер A4 при создании документа.
Form1.Edit1.Text := DateToStr(now); выдает дату например - 07.01.2017, а надо чтобы было в секундах, как это реализовать?
Можно так
Form1.Edit1.Text := FloatToStr(now*24*60*60);
Получите количество секунд прошедших с даты December 30, 1899
Грид будет обновляться автоматически, если он настроен (Settings), также в настройках должна стоять галочка на против пункта "Показать все записи из таблицы"
Если все равно не работает, приложите пожалуйста ваш проект.
А нельзя настроить софт так, что бы отправлять sms по Украине через этот сервис - https://www.epochta.com.ua/products/sms/ ? Просто тут цены на рассылку подешевле, чем в турбосмс
Можно.
Скачайте пожалуйста последнюю бета версию
https://www.dropbox.com/s/1y0jek64gzfdy … a.zip?dl=0
Я добавил в нее функцию HTTPPost
Данный сервис поддерживает отправку смс посредством POST запроса с передачей данных с помощью XML, подробней
https://www.epochta.com.ua/products/sms/v2.php
Также сделал тестовый проект для отправки смс, протестировал, работает.
Ok. Dmitry.
Thank you.
Did you get license code?
It's not problem if you put different scripts to one event
procedure Form1_OnShow (Sender: string; Action: string);
begin
// script1
// ...
// script2
// ...
// script3
// ...
end;
or you can use procedures for that:
procedure Form1_OnShow (Sender: string; Action: string);
begin
OnShow1;
OnShow2;
OnShow3;
end;
procedure OnShow1;
begin
// some script
end;
procedure OnShow2;
begin
// some script
end;
procedure OnShow3;
begin
// some script
end;
newsletter@schiavinatto.com
gilbertoschiavinatto@yahoo.com.br
I have sent you an email to gilbertoschiavinatto@yahoo.com.br
Please confirm that you have received this email.
No problem, Dmitry, I was on vacation, my email is gilberto@schiavinatto.com.
Please let me know another e-mail, I already sent on this e-mail your license key, but for some reason you have not received my messages.
After for to do try to add
SaleTransHist.tgSaleInvTransHist.CalculateFooter;
Try to add 0 values for the cells, like this
SaleTransHist.tgSaleInvTransHist.Cells[12,i] := '0';
Work with USB devices and DLLs not planned yet.
Hello.
It seems that you can't get my e-mails.
I found your profile on facebook and sent your license code using fb message.
Also you can let me know another your e-mail.
Sorry for inconvenience.
What exactly method to connect via network you need, Socket?
https://en.wikipedia.org/wiki/Winsock
may be I can add it in the next version, I'll check it.
Hello.
My Visual Database can use COM port to work with external devices.
Also you can make HTTP request and get result of request.
HTTPGet(url: string): string
Or even download file from the web.
HTTPGetFile(url: string; SaveToFile: string): boolean
You can open any text files (like HTML or XML) and parse it using regular expression.
bulutsuzgece
Unfortunately I can't help you, because you use pirated version of software.
На вкладке "Таблицы базы данных" в самом верхнем левом углу есть кнопка, которая позволяет переключиться на другую СУБД.
Импорт и экспорт данных необходимо произвести самостоятельно, экспорт из SQLite можно сделать с помощью утилиты SQLite Studio, импорт в MySQL например программой MySQL Workbench, ее же можете использоваться для администрирования MySQL.
Пожалуйста приложите проект с описанием действий приводящих к ошибке, постараюсь помочь.
Please download latest beta version here:
https://www.dropbox.com/s/1y0jek64gzfdy … a.zip?dl=0
Then check it out:
procedure SaleTransHist_tgSaleInvTransHist_OnChange (Sender: string);
var
i,c: integer;
sPrevRow: string;
begin
sPrevRow := '';
c := SaleTransHist.tgSaleInvTransHist.RowCount-1;
for i := 0 to c do
begin
if SaleTransHist.tgSaleInvTransHist.Cells[0,i] = sPrevRow then
begin
sPrevRow := SaleTransHist.tgSaleInvTransHist.Cells[0,i];
SaleTransHist.tgSaleInvTransHist.Cell[0,i].Empty := true;
SaleTransHist.tgSaleInvTransHist.Cell[1,i].Empty := true;
SaleTransHist.tgSaleInvTransHist.Cell[3,i].Empty := true;
SaleTransHist.tgSaleInvTransHist.Cell[4,i].Empty := true;
SaleTransHist.tgSaleInvTransHist.Cell[12,i].Empty := true;
SaleTransHist.tgSaleInvTransHist.Cell[13,i].Empty := true;
SaleTransHist.tgSaleInvTransHist.Cell[14,i].Empty := true;
SaleTransHist.tgSaleInvTransHist.Cell[15,i].Empty := true;
SaleTransHist.tgSaleInvTransHist.Cell[16,i].Empty := true;
end else sPrevRow := SaleTransHist.tgSaleInvTransHist.Cells[0,i];
end;
end;
попробуйте так
Email := '';
if RegExp.Exec then
repeat
// Матчи
Form1.Memo2.Lines.Add( RegExp.Match[0] );
// группы
for i := 1 to RegExp.Match.Count-1 do
begin
Email:= Email + 'Group'+IntToStr(i)+': '+RegExp.Match[i] + #10#13;
Form1.Memo3.Lines.Add('Group'+IntToStr(i)+': '+RegExp.Match[i]);
end;
until not RegExp.ExecNext;
SQLExecute ('INSERT INTO AAA (aaa) VALUES ("'+ Email +'");');
Form1.TableGrid1.dbUpdate;
Igor.Stepanov
Заново переделывать не нужно, просто переключите проект на MySQL, и он будет работать. Также у вас должена быть установлена СУБД MySQL.
Возможно потребуется доработка SQL запросов, если вы их использовали в проекте.
Можете нажать Ctrl+C когда на экране сообщение с SQL запросом и оно скопируется в буфер обмена.
Либо выводите SQL запрос например в компонент Memo, и копируйте оттуда.
Form1.Memo1.Text := Form1.TableGrid1.dbGetSqlStatement;
Hello.
The unit must have same structure, like script.pas
example:
function TreeFindItem(Sender: TTreeView;NodeItem: TTreeNode;Name: String):TTreeNode;
begin
if(NodeItem=Nil) then NodeItem := Sender.Items.GetFirstNode
else NodeItem := NodeItem.GetFirstChild;
if(NodeItem<>Nil) and (NodeItem.Text <> Name) then
repeat
NodeItem := NodeItem.GetNextSibling;
until (NodeItem=Nil) or (NodeItem.Text=Name);
Result := NodeItem;
end;
function TreeAddItem(Sender: TTreeView;ItemList: TStrings;BookMark: TBookMark;Resort: Boolean):TTreeNode;
var
ThisNode,Node: TTreeNode;
i: integer;
begin
Node := Nil;
for i := 0 to ItemList.Count-1 do
begin
ThisNode := TreeFindItem(Sender,Node,ItemList[i]);
if(ThisNode<>Nil) then Node := ThisNode
else begin
if I<Itemlist.count-1
then begin
if I=0 then Node := Sender.items.Add(Node, Itemlist[i])
else Node := Sender.items.AddChild(Node, Itemlist[i]);
end
else begin
if I=0 then Node := Sender.items.AddObject(Node, Itemlist[i],Bookmark)
else Node := Sender.items.AddChildObject(Node, Itemlist[i],Bookmark);
end;
Node.stateIndex := Node.level + 1;
if Resort and (Node.parent <> nil) then Node.parent.alphasort;
end;
end;
Result := Node;
end;
function TreeGetItem(Sender: TTreeView;ItemList: TStrings):TTreeNode;
begin
Result := TreeAddItem(Sender, Itemlist, nil, false);
end;
procedure TreeDeleteItem(Sender: TTreeView;ItemList: TStrings;level: integer);
var
Node, Parent: TTreeNode;
begin
Node := TreeGetItem(Sender,ItemList);
while Node.level>=Level do
begin
Parent := Node.parent;
Node.delete;
if (Parent=nil)or(Parent.hasChildren) then break;
Node := Parent;
end;
end;
begin
end.
but this unit for delphi, it will not work for MVD.
Игоревич
1. Довольно трудно сделать защиту базы данных при использовании SQLite, если необходима надежная защита, вам нужно использовать СУБД MySQL, т.о. базу данных можно расположить на сервере и создать необходимые настройки привелегий, чтобы исключить доступ к базе для посторонних лиц.
2. Вы первый кто просит об этом. Какую задачу это сможет решить?
3. Планируется возможность загрузки своих иконок.
My Visual Database → Posts by DriveSoft
Powered by PunBB, supported by Informer Technologies, Inc.
Theme Hydrogen by Kushi