1

(9 replies, posted in Russian)

Спасибо огромное! Всё получилось. По второму пункту поставил значение PixelSize=1.5 (было 2). Размер QR кода уменьшился до 2,1, что вполне устраивает. При меньших значениях PixelSize QR код сканером не читается.

2

(9 replies, posted in Russian)

Сделал другое приложение. Задача всё та же - регистрация справок, выдаваемых департаментом управления персоналом. Всё работает, но есть два "НО":
1) При входе в приложение пользователей 111 и 222 выскакивает сообщение о том, что обработчик событий должен быть процедурой. Хотя на работу приложения это никак не влияет. Не пойму, в чём причина? Скрипт перечитал уже несколько раз вдоль и поперёк.
2) Можно ли уменьшить размер QR кода на печати? Хотелось бы, чтобы он был не более 15х15мм. В настройках по умолчанию стоит 1,53х1,53, на печати выводится 2,8х2,8

3

(9 replies, posted in Russian)

k245 wrote:

Лучше не стало - теперь пишет о необходимости купить лицензию )))

Странно. Сделано это в лицензионной версии, но довольно старой (1.52). Спасибо за участие. Уже вопрос снимаю.

4

(9 replies, posted in Russian)

k245 wrote:

Приложение дальше редактирования логина не открывается

Спасибо. Перезалил.

5

(9 replies, posted in Russian)

Добрый вечер всем. Прошу помощи в отладке QRCode. При выводе на печать документа в коде должны быть данные из frm1.edBarcode. Но они там не появляются. Проект прилагаю.

Записал условие так:

WHERE orders.num = {Edit1} AND orders.date = {DateTimePicker1};

Работает.

sibprogsistem wrote:

а в свойствах компонента DateTimePicker1 формат пробывали указывать?  фотмат указывается так: 
y.d.m
d.m.y
d.y.m

Формат в свойствах указан.

sibprogsistem wrote:

эту ветку посмотрите
http://myvisualdatabase.com/forum/viewtopic.php?id=4854
там есть отбор по дате

Спасибо, но там проблема не решена - остался без ответа вопрос о формате даты. Ведь у меня дата документа отбирается в формате strftime('%d.%m.%Y',orders.date), т.е. в данном случае как "09.01.2019", а из DateTimePicker1 в условие отбора она записывается как "2019-01-09 00:00:00.000"

Доброго всем дня. Начался новый год и новая нумерация документов в проекте учёта материальных ценностей учреждения. Возникла необходимость дополнить условие датой  "orders.date" из DateTimePicker1. Без этого все наименования из двух документов с одинаковыми номерами но за разные годы собираются при выводе на печать в одном документе.
Вопрос: как обязательным условием сделать не только номер, но и дату документа?

SELECT

order_details.amountMINUS,
orders.num,
product.productName,
order_details.cost,
invNum.invNum,
strftime('%d.%m.%Y',orders.date),
department.departmentName,
otdel.otdelNAME,
orders.poluchatel2,
orders.ktoVidal,
orders.osnovanie

FROM order_details

LEFT OUTER JOIN   orders   ON order_details.id_orders=orders.id
LEFT OUTER JOIN  product   ON order_details.id_product=product.id
LEFT OUTER JOIN  invNum   ON order_details.id_invNum=invNum.id
LEFT OUTER JOIN  department   ON orders.id_department=department.id
LEFT OUTER JOIN  otdel  ON orders.id_otdel=otdel.id

WHERE orders.num LIKE "{Edit1}"

Спасибо.
Проблему решил. Оказалось всё очень просто. Запись в коде

CopyFile('sqlite.db', 'Backup\backup '

подразумевает, что файл sqlite.db лежит в папке программы, где на самом деле его нет. Нужно прописать путь к файлу и всё будет ОК.

Добрый день, Дмитрий. Столкнулся с таким явлением: если файл sqlite.db лежит в папке с программой, то файл БД сохраняется без проблем, как прописано в скрипте

procedure Form1_OnClose (Sender: string; Action: string);
begin
    ///// Создание резервной копии БД при выходе и закрытии программы ////////////////
    CopyFile('sqlite.db', 'Backup\backup '+ FormatDateTime('dd-mm-yyyy', now)+'.db');  // запись резервного файла БД при выходе
    Timer.Free;
    frmLogin.Close;
end;

Но стоит только переложить файл в другое место, копия БД не создаётся вообще. Как решить проблему?

Огромное спасибо, Дмитрий! Проект работает!
Ещё вопрос: чтобы остатки формировались не на текущую дату, а на указанную, нужен уже не просто "Отчёт", а "SQL отчёт"? Я правильно понимаю?

И вновь у меня проблема с отчётом. Надеюсь, что последняя - проект работоспособен и уже работает. Не могу сделать ведомость по остаткам ТМЦ. Проблема в общем-то похожа на предыдущую - как вычислить сумму значений вычисляемых полей... Крутил и так, и этак, но сам не могу. Проект прилагаю. Вход через админа. На главной форме вверху кнопка "Звіти", далее кнопка "Залишки ТМЦ". Ведомость формируется.
Нет итоговых значений по группам и по всей ведомости.
Также хотелось бы, чтобы нулевые остатки не включались в отчёт.

Работает. Спасибо!

DriveSoft wrote:

Вроде должно работать, пожалуйста прикладывайте проект.

Это ведь разные таблицы

Доброго всем последнего дня лета!
Если при клике по таблице "product" в текстовом поле Edit2 (product.id) отображается id выбранного продукта, то как сделать, чтобы в ComboBox1 (order_details.id_product, productName) отобразилось наименование продукта с этим id?
Скрипт

procedure Form2_Edit2_OnChange (Sender: string);
begin
Form2.ComboBox1.dbItemID := SQLExecute ('SELECT IFNULL(id_product, -1) FROM order_details WHERE id='+Form2.Edit2.sqlValue);
end;

в данной ситуации не работает.

СПАСИБО, ДМИТРИЙ! ВСЁ РАБОТАЕТ КАК И ХОТЕЛОСЬ!

m.prokhachev wrote:

На самом деле, в простом виде это может Дмитрий решить, усовершенствовав в MVD действие кнопки "отчет".

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

m.prokhachev wrote:

А покажите код, который передает данные в отчет из вашей программы...

SELECT
tovarName.tovarName,
tovar.prihod,
tovar.rashod

FROM tovar

LEFT OUTER JOIN tovarName ON tovar.id_tovarName=tovarName.id

На форуме https://www.fastreport.ru/ru/forum/inde … topic=4120 нашёл обсуждение аналогичной проблемы, но как это решить практически? Где и какой код нужно записать в данном конкретном случае?

Сделал простенький проект. Результат тот же. Выражение

[SUM(<Report."rashod">,MasterData1)]

даёт не сумму, а последовательность цифр

sibprogsistem wrote:

особо не вник... дел много..   Но может костыль....

в поле сумировать.... а потом в отчет ? 

у меня везде костыли)))

Увы, не понимаю, что такое "костыль"

В продолжение предыдущей записи прилагаю изображение отчёта с обозначенными проблемами

Проблема до сих пор не решена.
Прошу помощи в создании отчёта. Проект прилагается. С главной формы по кнопке "Звіти" ("Отчёты") перейдите на форму 2. Выберите материал и кнопкой "Картка" ("Карточка") сформируйте карточку материала.
1) Вместо суммы выдач в итоговой  ячейке записывается последовательность величин выдач.
2) Не знаю, как в ячейке "остаток" прописать формулу вычисления остатка после каждой операции.

Не пойму, почему в отчёте не вычисляется сумма, а вместо этого последовательно перечисляются значения слагаемых.
Запись в ячейке такая:
[SUM(<Report."amountMINUS">,MasterData1)] (см. рисунок)