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 2 of 11)
Я попытался добавить строку
Form1.TableGrid1.dbUpdate;
в конце кода , что бы обновить таблицу, и все поля где есть зачёркнутость, что бы они ушли в низ. Но вылетает ошибка. Причём всё срабатывает, сортировка происходит, но ошибка зачем то выскакивает.
procedure Form1_TableGrid1_OnEditAccept (Sender: TObject; ACol, ARow: Integer; Value: String; var Accept: Boolean);
begin
if (ACol=0) and (not Form1.TableGrid1.Cell[ACol,ARow].Empty) then // если изменяют значения в пятой колонке и значение не является пустым
begin
if Value = 'True' then
begin
SQLExecute('UPDATE test SET yes=1 WHERE id='+Form1.TableGrid1.sqlValue);
Form1.TableGrid1.Cell[1,ARow].TextColor := clGray;
Form1.TableGrid1.Cell[1,ARow].FontStyle := fsStrikeOut;
end else
if Value = 'False' then
begin
SQLExecute('UPDATE test SET yes=0 WHERE id='+Form1.TableGrid1.sqlValue);
Form1.TableGrid1.Cell[1,ARow].TextColor := clWindowText;
Form1.TableGrid1.Cell[1,ARow].FontStyle := 0;
end;
end;
Form1.TableGrid1.dbUpdate; //ОШИБКА ИЗ ЗА ЭТОЙ СТРОЧКИ
end;
DriveSoft wrote:Речь идет об использовании уже существующей БД MySQL в проекте?
Есть возможность использовать существующую БД, но она должна удовлетворять двум условиям
1. Каждая существующая таблица БД должна иметь поле Primary Key с именем id
2. Внешние ключи в таблицах должны быть вида: id_tablename, где tablename - имя таблицы, на которую ссылается ключ.
Затем используя для проекта БД SQLite, создайте структуру БД в My Visual Database, которая в точности повторяет структуру в вашей существующей БД, после чего просто переключите ваш проект на использование MySQL и подключитесь к существующей БД.
А в будущем не планируется сделать возможность копирования этих строк? Что бы не в ручную из одного проекта MVDB в другой пересоздавать, а можно было бы копировать и вставить
derek wrote:Здравствуй Agatlogic,
Возможно, попробуйте это так
Derek.
Ваш пример в "Memo", а меня интересует в "table gride"
переделал пример под задачу. Заранее спасибо
как зачеркнуть текст в tablgrid, и сделать его серым или бледным при checkbox=1? что бы получилось что-то подобное
Целый, пробую как в примере
https://vk.com/@createmyvisualdatabasea … aem-derevo сделать. Оттуда скачал проект, но ошибка такая же. Незапускается проект.
Просто хочу свой проект немного облегчить при запуске. Что бы пока я работаю с одной частью кода, отключать ненужную. Что даст возможность программе грузится не минуту, а пару секунд.
вот ссылка на тот проект для скачивания
https://vk.com/away.php?to=https%3A%2F% … Qi-j3Rzrvm
не могу понять как она работает, скачал чужой проект как пример или попробовал сделать в своём. Итог один и тот же. После строки end. просто через какое то количество пробелов красная строка без пояснений. Пример моего кода:
uses
'задачник.pas';
begin
end.
может что то дописать нужно?
А как сделать так, что бы checkbox был только в тех строках, где есть данные в колонке "name" ?
1) Есть ли возможность по примеру
Form1.TableGrid1.Columns.InsertcheckboxColumn(0);
создать checkbox только в той строчке таблицы, где допустим есть запись "задача"
2) как с помощью этого checkbox , поменять значение в строке с 0 на 1 или наоборот. То есть как им внести изменения базу данных?
sibprogsistem wrote:они выделяются автоматом
Да, если скрипт не большой. То выделяются, но если он больше размеров экрана, то уже не подсвечивается.
Есть ли какие то программы или внутри MVDB, что бы можно было код сгруппировать пробелами? Что бы перед каждым begin к примеру добавлялся отступ.
Какие есть способы при длинных скриптах понять какой begin к какому end; относится? Если экран меньше чем эта длина они не подсвечиваются. Есть какие то способы выровнять скрипт по отступам автоматически или может есть сторонние программы для скрипта для удобства?
Разобрался...
kb := 0;
while cProm <> cEnd do
begin
v := FormatDateTime('yyyymmdd',задача_люди.DatePicker1.DateTime +kb);
cProm := strtoint(v);
kb:=kb+1;
end;
end;
На какой форме, и в какой таблице должны быть дочерние записи?
На форме frmAddPloskiyList в таблице TableAddRazvertki должны быть все дочерние записи таких же параметров которые выбраны в ComboBOX? или по производителю, или как? Не пойму задачу...
Как создать записи исходя из диапазона дат?
Допустим (data1)18.02.2020 и (data2)27.02.2020
нужно создать в таблице 10 записей, так как 27(data2)-18(data1)+1(начальный день включительно)=10
name DAY1 date 18.02.2020
name DAY2 date 19.02.2020
name DAY3 date 20.02.2020
name DAY4 date 21.02.2020
name DAY5 date 22.02.2020
name DAY6 date 23.02.2020
name DAY7 date 24.02.2020
name DAY8 date 25.02.2020
name DAY9 date 26.02.2020
name DAY10 date 27.02.2020
как это сделать?
я так понимаю нужен цикл. Но я с ними не разу не сталкивался
есть такой вариант. Он правильный?
Form2.Edit2.value := abs(Trunc(form2.datetimepicker2.datetime - form2.datetimepicker1.datetime)+1);
m := Form2.Edit2.text;
А как эту строчку приравнять к переменной?
Form2.Edit2.value := abs(Trunc(form2.datetimepicker2.datetime - form2.datetimepicker1.datetime)+1);
нужно что то похожее на
m := abs(Trunc(form2.datetimepicker2.datetime - form2.datetimepicker1.datetime)+1);
а как это посчитать не в калькуляторе, а в скрипте?
round(abs(julianday(date1) - round(abs(julianday(date2)))))
Что бы я мог получить переменную с этим значением?
в 1 способе месяц не привязан к количеству дней, что в разные месяцы даёт разное количество дней
во втором, не могу получить переменную количества дней, что бы использовать в скрипте, в момент сохранения
wow derek, very simple and interesting
Thanks jean.brezhonek. this is what I need
Есть 2 даты, в двух DatePicker, как их сравнить, что бы понять сколько дней разницы между ними? То есть ответ в итоге должено быть число дней, разницы между ними
И кнопка отмена действия, ил вернуться на пару шагов назад. А то иногда нечаянно удалишь что нить или перенесёшь не так, а откатить ток загружаясь
А если речь идёт о "ShowRecord" ?
Что бы работать с id, перед открытием записи я вытаскиваю из таблицы ид в переменную строкой
idrevenue:= SQLExecute('SELECT id FROM revenue WHERE id='+ мероприятие_бухгалтерия.TableGrid1.sqlvalue);
а есть ли способ узнать ид когда форма уже открыта? ну то есть вычислить ид записи в момент сохранения скриптом
вроде бы решил таким способом
SQLExecute('INSERT INTO zada4i(дата_время) VALUES ('+задача_люди.DateTimePicker1.sqlDate+')');
Posts found: 26 to 50 of 262