stas.kodpi wrote:

Доброй ночи.
Наваял базку с несколькими ячейками.
Надо, что бы в отдельном едитбоксе(ячейке) выводилась сумма всех предыдущих значений  при чем автоматом. + вісчитать процентр
как мне сделать? не могу(
и попробовал по-другому - через вычисляемое поле - все равно не хочет. вообще пишет ошибку на старте программы (
в чем проблема? ткните носом.
заранее благодарен
прикладываю проект

Здравствуйте.


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


В гриде сумма значений считается с помощью вычисляемого поля, на форме new сумма считается скриптом.


Исправленный проект:

kovalenko wrote:

Дмитрий если позволите ещёвопрос.
У меня в форме Новый заказ в закладке Работы по заказу в подсчёте стоимости (предварительный вариант) есть поле, куда я ввожу скидку по стоимости работ. Так вот, если сумма к оплате 2000 и скидка 10% то в окне К оплате выводиться не 1800, а другая сумма, НО, после сохранения и повторного открытия этого заказа, уже всё ровно.К оплате 1800. Это не критично, но можно как-то исправить?


Проверил, на форме frmApplication ввожу скидку в компонент edDiscount, значение к Оплате в компоненте edPayment меняется сразу.
Или я не правильно понял?


kovalenko wrote:

И ещё вопрос, при переходе в форму посредство кнопки Показать запись из Грида другой формы, у меня показывается конкретная запись, срабатывает фильтр. В том-же случае но при использовании кнопки Показать форму, у меня соответственно после перехода на новую форму, показываются все записи. Вопрос, при использовании функции Показать запись можно-ли в новой форме сбрасывать все фильтры для просмотра всех остальных записей? Можно конечно ручками отключать все параметры фильтрации, но может есть какой-либо вариант со скриптами и использовании отдельной кнопки, что-то вроде "Сбросить все фильтры поиска"?

Пример, как очистить компоненты

procedure Form1_Button1_OnClick (Sender: string; var Cancel: boolean);
begin
    Form1.Edit1.Clear;
    Form1.Memo1.Clear;
    Form1.CheckBox1.State := cbGrayed;
    Form1.ComboBox1.dbItemID := -1;
    Form1.DateTimePicker1.Checked := False;
end;

3,503

(37 replies, posted in General)

AD1408

I made some changes.


In the components there is no hard coded date format. Components take date format from the user OS.

Вы можете разместить на форме например две кнопки с действием "Сохранить запись" и установить их свойство Visible = False, т.о. они будут невидимы. Далее разместите еще одну кнопку, и создайте для нее событие OnClick, в итоге получится скрипт:

procedure Form1_Button3_OnClick (Sender: string; var Cancel: boolean);
begin
    Form1.Button1.Click;
    Form1.Button2.Click;
end;

т.е. одна кнопка нажимает на две остальные невидимые, которые имеют действие "Сохранить запись"



Либо можете реализовать сохранение в несколько таблиц с помощью исполнения SQL запроса INSERT TO с использованием функции SQLExecute, но это чуть сложней.

3,505

(1 replies, posted in Russian)

Здравствуйте.


Думаю вы не правильно создали структуру БД. Данные из одной таблицы, не должны сохраняться в другу таблицу, вместо этого в базах данных используются таблицы.


В настоящее время я пишу книгу, где довольно подробно и простым языком объясняются общие принципы работы с БД на примерах My Visual Database, прочтите пожалуйста, это избавит вас от будущих ошибок
http://myvisualdatabase.com/forum/viewtopic.php?id=2554

3,506

(12 replies, posted in General)

If  issued, not issued missing is categories of book, why you don't use separate table to store categories?
Please check out this project, where every person can belongs to a category.

3,507

(28 replies, posted in Russian)

Здравствуйте.


Например так


var
   s: string;
begin
   s := '1';
   enter_kontroler.TableGrid1.dbFilter := '(users.prinadl_1 = '+s+')';
end;

3,508

(4 replies, posted in General)

AD1408 wrote:

What about multi monitors use situation?


App always opens on default monitor. This, I like as monitors count can change you still get it on the default monitor.


However, let say in two monitor situation, if I move the app from default monitor [1] to second monitor [2];
is it possible to make app  to open sub forms on second monitor too?

Please download latest version
https://www.dropbox.com/s/4sb2tk75rauoj … b.zip?dl=0


For all child forms set property Position = poMainFormCenter

3,509

(5 replies, posted in Russian)

Просто замените эту строку

frmPrihodRashod.combobox1.dbItemID := SQLExecute ('SELECT IFNULL(product.productname, -1)FROM product WHERE id = ' + IntToStr(form1.GridTovar.dbItemID) );

на

frmPrihodRashod.combobox1.dbItemID := form1.GridTovar.dbItemID;

kovalenko
Да, спасибо за найденную ошибку.

3,511

(38 replies, posted in Russian)

bemorhona-qt wrote:

Уважаемый Дмитрий!
Я понимаю что срок моей версии программы должна завершится давно, но у меня на данный момент нет средств для покупки лицензии, если я смогу завершить свой проект то завод купит его у меня и я смогу купить лицензию. Помогите пожалуйста с поставленной задачей. Заранее благодарю.

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


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


Проект:

kovalenko

Ошибка была в самой программе, скачайте пожалуйста последнюю бета версию 3.4
https://www.dropbox.com/s/4sb2tk75rauoj … b.zip?dl=0


Также по какой то причине в вашем проекте была ошибка в структуре БД, которая как то связана с удалением таблицы operation, поправил


Также я удалил внешний ключ application.id_completeness, т.к. он фактически не используется

3,513

(38 replies, posted in Russian)

bemorhona-qt
Судя по вашему проекту вы используете ознакомительную версию программы, срок действия которой должен был быть давно завершен.


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

3,514

(12 replies, posted in General)

Hello.


I have added button with SQL query for that
https://www.dropbox.com/s/vde4a1hwzmkht … d.zip?dl=0

3,515

(37 replies, posted in General)

AD1408 wrote:

Dmitry,
Could you please help us sorting date issue on this project, so that date format can be read from the user system (OS) rather than trying to manipulate it as EHW explained on the post above #22


Please describe the issue in the one post or create a new topic for the issue.

3,516

(5 replies, posted in Russian)

Здравствуйте.


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

memult wrote:

Спасибо.
С сортировкой первых двух пунктов все нормально. Подскажите, как сделать, чтобы строки, где процент =100%, отображались внизу таблицы. Независимо от сортировки.?

Думаю это можно реализовать только с помощью SQL запроса, в котором будут два SQL запроса с объединением UNION ALL



SELECT Поле1, Поле2, Поле3
FROM 
  (
  SELECT Поле1, Поле2, Поле3
  FROM TableName
  WHERE Поле3<>100
  ORDER BY Поле2 ASC, Поле1 ASC, Поле3 DESC
  )

UNION ALL

SELECT Поле1, Поле2, Поле3
FROM  TableName
WHERE Поле3=100

3,518

(5 replies, posted in Russian)

ZBear wrote:

Добавлю сюда же. Создаю запись, есть поле Дата и поле Время. После редактирования запись Дата пропадает из грида. Версия программы 2.8, 3.3 выдает ошибку (во вложении). Прикладывать проект думаю смысла нет т.к. он на MySQL

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

3,519

(5 replies, posted in Russian)

ZBear wrote:

Как сделать чтобы в гриде время отображалось в формате HH:MM (без секунд)

Если используете MySQL, тогда можно отформатировать время с помощью вычисляемого поля вида

DATE_FORMAT(timefield,"%H:%i")

3,520

(4 replies, posted in General)

It's possible.


1. Set property Position = poDesigned for Form2


2. Script for button with action ShowForm:

procedure Form1_Button1_OnClick (Sender: string; var Cancel: boolean);
begin
    Form2.Left := Form1.Left - Form2.Width;
    Form2.Top := Form1.Top + Form1.Height;
end;

3,521

(1 replies, posted in Reports)

Hello.


In your SQL queries I don't see a foreign key to make relationship between these two tables.


Please check out an example (you can do it without SQL):

3,522

(1 replies, posted in General)

I made some changes in your project.


Add new database table "ManyToMany" to assign data between RegAssignToTrainerBatch and AddStudentClassFromDatabase.
Now you can add data from "AddStudentClassFromDatabase" to TableGrid on form "RegAssignToTrainerBatch"


But I can't understand your question about ComboBox

Здравствуйте.


Отправьте пожалуйста снова.

memult wrote:

второе поле и третье поле - это тестовые поля, словари,как связанная таблица. Значения задаются через Combobox.

для сортировки можно указать и внешние ключи, просто укажите их там

Здравствуйте.


В настройках кнопки "Поиск" и в настройках компонента TableGrid имеется пункт "Сортировать", выберите там значение ORDER BY, далее в тектовом поле справа вы можете ввести поля через запятую, по которым необходимо сортировать данные, т.е.

Поле2 ASC, Поле1 ASC, Поле3 DESC

только не совсем понял, какой тип поля имеет второе поле.