Приветствую,


Я отвечаю на все вопросы, если вы просмотрите список тем, то врядли найдете хотя бы одну без ответа,
но сейчас выходные, поэтому отдыхаю.



Какой почтовый сервер используете для отправки?

5,577

(1 replies, posted in General)

Hello,


Unfortunately there is no the possibility do it in the current version.

5,578

(24 replies, posted in Russian)

Milla.Makova wrote:

Обнаружила такую нехорошую особенность при вычислениях на форме:
если свойство ТекстБокса ставить Currency и при этом ставить галку на ThousandSep. (разделитель десятков), то число в этом Боксе перестает участвовать в расчете. Итог остается нулевым. Видимо это из-за пробела между тысячами и десятками.
По возможности исправьте пожалуйста это недоразумение.

Возможно чтобы получить числовое значение вы делаете так

StrToInt(Form1.Edit1.Text)

но необходимо так

Form1.Edit1.Value


Если не угадал, тогда пожалуйста приложите ваш проект, в котором возникает данная ошибка.

5,579

(28 replies, posted in Russian)

ZBear wrote:

Пароль 11, проверка заполнения поля пароля отключена так-что можно просто закрыть форму ввода пароля.

Сразу же при запуске появляется ошибка на колонку которая передаётся через вычисляемое поле, если оставить в таблице только поля этой связи то всё работает, стоит только добавить хотя бы ещё одну одну колонку передающуюся через связь сразу появляется ошибка.
Связанных списка у меня два и оба работают одинаково.


У меня возникает также ошибка в событии procedure main_mainGrid_OnChange (Sender: string; Action: string);
испавьте эту строку

if (not ValidInt(main.mainGrid.Cells[14,iRow])) or (not ValidInt(main.mainGrid.Cells[15,iRow])) then continue;

По поводу второй ошибки, программа не умеет автоматически связывать между собой те таблицы, между которыми нет связи, в вашем случае это таблицы SI и apparats, они связаны через таблицу posit, поэтому вы должны в таблице posit создать вычисляемое поле, в котором будет выведено необходимое значение из таблицы apparats и уже это вычисляемое поле необходимо выводить в грид.


Выч. поле для таблицы posit, которое выводит значение из apparats.apparat

(SELECT apparats.apparat FROM apparats WHERE apparats.id=posit.id_apparats)

5,580

(13 replies, posted in General)

Hello,


1.

procedure Form1_Edit1_OnEnter (Sender: string);
begin
    ChangeKeyboardLayout(LANG_GREEK);  
end;

2.

procedure Form1_Button1_OnClick (Sender: string; var Cancel: boolean);
begin
    ChangeKeyboardLayout(LANG_GREEK);
end;

Приветствую,


Это вполне возможно реализовать, но что делать в случае если обнаружится два дубликата? какой из них показывать на форме?

Форму целиком пока нет возможности скопировать, только если выделить все компоненты на форме удерживая Shift, и скопировать через буфер обмена в другой проект.


Отдельно таблицы тоже пока нет возможности скопировать, разве что сразу все, скопировав файл tables.ini из папки одного проекта, в другой.

Пока такой возможности нет.

Такая возможность планируется в будущем, но в текущей версии реализовать не получится.

Sid.Killsayd wrote:

"Если что то начнет тормозить при поиске, можно будет создать индексы."
Уже тормозит - что значит создать индексы?

Об индексах
https://ru.wikipedia.org/wiki/Индекс_(базы_данных)


Создать индексы в базе данных можно с помощью бесплатной утилиты SQLite Studio
Пришлите пожалуйста ваш проект с базой данных на support@drive-software.com
также опишите действия, чтобы увидеть, где именно тормозит.
Постраюсь выяснить причину и при необходимости создать индексы.

5,586

(12 replies, posted in Reports)

ehwagner
Look in the script of report

procedure Memo10OnAfterData(Sender: TfrxComponent);
begin
   Memo10.Text :=  formatfloat ('#,##0.00', Memo10.Value - Reportdiscount_flat.Value);
end;

procedure Memo12OnAfterData(Sender: TfrxComponent);
begin
       Memo12.Text :=  formatfloat ('#,##0.00', Memo12.Value - Reportdiscount_flat.Value);  
end;

5,587

(12 replies, posted in Reports)

ehwagner wrote:

No, that's not what I am talking about. That's what you had in your example and for a discount rate that works fine. What I'm looking for is to subtract a flat discount amount for the client on the bill group footer, not a rate or percentage that gets calculated in the summation expression. This flat amount gets subtracted from the summation of the bill line items. It's not a subtraction on each line item. It's a subtraction of the line items sum. Hope this helps in explaining what I am looking for. I just do not know how to write the expression in the Fast Report syntax. Thank you Dimitry.

I made some changes, please download project again:

igor197617 wrote:

Добрый день Дмитрий. Не могли бы вы на этом примере показать как описать событие для удаления файла из папки. Если в этом примере
нажать удалить то удаляется имя файла, а сам файл в папке остается.

Приветствую,


ответил вам в этой теме
http://myvisualdatabase.com/forum/viewt … 473#p12473

Создайте событие OnClick для кнопки удаления файла на форме

procedure frmEmployee_Button6_OnClick (Sender: string; var Cancel: boolean);
var
    sFile: string;
begin
    sFile := SQLExecute('SELECT image_filename FROM files WHERE id='+frmEmployee.TableGrid1.sqlValue);
    sFile := ExtractFileDir(Application.Exename)+sFile;
    if FileExists(sFile) then DeleteFile(sFile);
end;

5,590

(28 replies, posted in Russian)

ZBear wrote:

Спасибо за помощь.
Нашёл ещё ошибку (или я что-то не так делаю smile ), сделал связанные списки, на SQLite работает, на MySQL выходят ошибки главной таблици

Пожалуйста описывайте шаги, которые приводят к ошибке, также сообщите пароль администратора.

5,591

(12 replies, posted in Reports)

ehwagner wrote:

No. Just a total discount amount. And that amount should be subtracted from the total of the bill line items in the group footer.

Discount: [SUM( 
(<Report."cost">*<Report."countserv">) * (<Report."discount"> / 100)
,MasterData1)]

5,592

(12 replies, posted in FAQ)

identity wrote:

thank you so much for your help
can I use the CopyTo command for images as well?
I don't want the pictures to be saved in the database but my version does not have LinkFile for the images.

Unfortunately no.

Sid.Killsayd wrote:

Большое спасибо за пример, но для общего развития интересно: Как использовать функцию скрипта SaveFileFromDatabase

var
   sFile: string
begin
    sFile := SaveFileFromDataBase('tablename', 'fieldname', 4); // файл сохраняется во временную папку Windows, функция возвращает полный путь файла в этой папке
    CopyFile(sFile, 'd:\'+ExtractFileName(sFile)); // копируем файл из временной например на диск D

5,594

(12 replies, posted in FAQ)

identity wrote:

hi
I made a backup folder in the same folder as my project and then I insert this script and it works fine.
is there any way that the script make a backup somewhere other than the project folder? for example :
D:\new\backup

Yes, change this line

CopyFile('sqlite.db', 'backup/backup '+ FormatDateTime('dd-mm-yyyy hh-nn-ss', now)+'.db');

to

CopyFile('sqlite.db', 'D:\new\backup\backup'+ FormatDateTime('dd-mm-yyyy hh-nn-ss', now)+'.db');

5,595

(6 replies, posted in Russian)

inter1292 wrote:
DriveSoft wrote:

inter1292
Приложите пожалуйста ваш проект к сообщению (zip файл  без exe и dll)

К сожалению не смогу вам помочь, т.к. вы используете пиратскую версию программы.

5,596

(12 replies, posted in FAQ)

identity wrote:

Hi
I used this script but it does not work for me. I guess it's because I use version 1.45 which does not have copyTo command.
is there any other script to make a backup using version 1.45?
thanks

Hello,


This script should be work for you, please attach you project (zip file without exe and dll)
I'll check it.

5,597

(5 replies, posted in General)

identity
Please attach your project (zip file without exe and dll)

Я сделал для вас проект с примером в данной теме
http://myvisualdatabase.com/forum/viewtopic.php?id=2119

5,599

(1 replies, posted in Russian)

Положите на форму компонент TextBox, выберите в свойстве TableName необходимую таблицу, а в свойство FieldName напишите: id

5,600

(1 replies, posted in Russian)

Не совсем понимаю, что вы пытаетесь сделать эти запросом?
Скорей всего запись заменяется, т.к. уже есть запись с данным id