реально косяк в проге с условиями на 3 кнопки
Прописываешь каждый раз
MessageBox('...')
работает, но каждый раз окно открывает
А так всегда работает по сценарию 2х кнопок MessageBox...
My Visual Database → Posts by vit007
реально косяк в проге с условиями на 3 кнопки
Прописываешь каждый раз
MessageBox('...')
работает, но каждый раз окно открывает
А так всегда работает по сценарию 2х кнопок MessageBox...
Наверно, касяк в проге, если убрать на NO действие, и работает NO и CANCEL... Нужен мощный совет...
if IDYES = MessageBox('Распечатать заявку: ' +frmNew.edIdYear.Text,'Подтверждение',MB_YESNOCANCEL+MB_ICONQUESTION) then
begin
//Печать. при наличии кл.Сохранить, сохранение производится автоматически
frmNew.Button1.Click;
end else
if IDNO then
begin
//Только сохранение
frmNew.Button2.Click;
end else
if IDCANCEL then
begin
end;
Сейчас, CANCEL у меня делает то же, что и пункт NO (создает новую запись). А еще можно клавиши переименовать?
Подскажите, а как вызвать диалоговое окно для выбора куда сохранить...
Такой вариант ко к раз для записи в текствое поле, так у меня есть... А вот как записать в базу значение DataTimePicker1, что оно, значение, было ДАТА... Это действие хорошо получается в свойствах кнопки сохранить, а как это выражается в скрипте - не понятно...
Понятно, что меняя значение потеряется. Поэтому у меня был выбор делать поля только ДАТА, где не понятно, как сохранять значение DataTimePicker или Все поля ТЕКСТ, где все проще и извесно...
Сделал так
Trunc(now) - Trunc(StrToDate(SQLexecute('SELECT data FROM req WHERE id='
До 3D еще рости рости
А вот в в скрипте часто использую
cId:=SQLEXecute('SELECT id FROM request WHERE id='+frmMain.TableGrid1.sqlValue);
Вот каждый раз базе приходится создавать переменную и делать выборку. Это можно или не нужно выносить "за скобку"...
Есть конструкция
SQLexecute('SELECT (julianday("now") - julianday(dataR) ...)
Она хорошо работает если dataR в базе имеет "тип поля" ДАТА
Но вот незадача, в процессе работы базы, мне надо до закидывать новые значения реального времени, как сделать не понял... т.к. это делает кнопка сохранить, а как в скрипте это выполнить непонятно...
Перевел "тип поля" в ТЕКСТ, и julianday ругается на разность представления значения...
Подскажите, в скрипте часто используются одинаковые переменные. Существует практика, где одна и та же переменная вынесена в глобальную и скрипт заработал бы "плавнее"... В машинном коде макрос бы сэкономил объем памяти...
Победа... принцип: из цикла дубликатов выдергиваем id главной таблицы, затем подставляем в ShowRecord и вуаля...
Что-то получается поправить, а что-то нет... т.к. у меня в окне просмотра не зависимая таблица, то когда вызывается просмотр, то в таблицу сливаются все значения. И не хочется править основу. Может есть скрипт вызова из основной таблицы ссылкой из дубликата... Приложил фото, что 000, то это по стандарту, а можно как на фото 001?
Наверно, из графики надо добавить в прогу картинки клавишь в серых тонах. Т.е. есть у меня кнопки только с рисунком, и когда управляешь параметром Enable, то клавиша вроде посерела, а картинка на ней по-прежнему "сочная".... . И может быть непонятно...
Увы нет. Решил тогда добавить в базу дополнительные поля с сохранением содержимого... и уже оттуда дергать значения...
Этот вариант был первый...
Осталась проблема, как вызвать значения из таблицы, к которой привязан словарь...
rId:=SQLEXecute('SELECT id FROM request WHERE id='+list[i]);
cId:=SQLEXecute('SELECT id FROM client WHERE id='+list[i]);
gr := SQLexecute('SELECT setGroup FROM groupN LEFT OUTER JOIN client ON groupN.id=client.id_groupN WHERE client.id='+list[i]);
Вот так, выдергивается у меня значение setGroup из таблицы client принадлежащей request. В таблице дубликате все отображается, но если просмотреть эту запись, то таблицы client, request выдают нужный (выбранный) id записи, а вот из таблицы groupN не выдергивается значение...
Сделал так. Раз в базе формируется из двух независимых частей номер, то
nmY := SQLexecute('SELECT year FROM request WHERE id='+list[i]);
nmId := SQLexecute('SELECT ident FROM request WHERE id='+list[i]);
SQLExecute('INSERT INTO reminders(r_num)VALUES("'+nmY+'-'+Format('%.3d',[StrToInt(nmId)])+'"')');
на выходе 20-001, как и надо.
Вроде понятно... это не ID, а разница. Надо или переделывать в базе ячейку без тире или как-то прописать с формат...
У меня как в основной есть вставка нестандартного счетчика
frmNew.edIdYear.Text := frmNew.edYear.Text + '-' + Format('%.3d', [id]);
И настроено, чтоб в базе сохранялось поле edIdYear в ячейку year-ident. А значит в дубле таблицы, должно отображаться содержимое поля, но у меня отображается id...
Вызываю в дубль скриптом
rId:=SQLEXecute('SELECT id FROM request WHERE id='+list[i]);
nm := SQLexecute('SELECT year-ident FROM request WHERE id='+list[i]);
Как можно поправить...
Через "батон" работает, значит еще не разобралмя с инструментом "чекбокс". Спасибо
У меня в проге выключены элементы
frmFon.mniFile.Visible := False;
frmFon.mniOptions.Visible := False;
frmFon.mniAbout.Visible := False;
Хочу запилить условие через чек бокс, чтоб можно было зажигать...
Конечно, можно вначале проги сделать еще менюшку выбора роли... но пока не хочется так...
Вот что нашел... почему-то, когда есть клавиша с настройкой "Посмотреть форму", все работает через эту клавишу. А при использование скрипта "Форма.Show" - нет. Получается как-то id не выбирается... или косяк в проге?
попробовал разные подстановки... и, мне кажется, по какой-то причине не создается новая таблица... Да и при холодном пуске, т.е. вкл прогу и сразу повзаимодействовал... то id выдается записи, а наполнения нет, только при повторном появляется, и записи проверяются с конца...
Закомментировал, и все равно не работает...
Блин, что-то сломалось и не в какую юлианское сравнение не работает... посмотрите опытным глазом...
Всем спасибо за участие.
My Visual Database → Posts by vit007
Powered by PunBB, supported by Informer Technologies, Inc.
Theme Hydrogen by Kushi