ок. спасибо. буду пробовать.

DriveSoft wrote:

Посмотрите пожалуйста данный проект с примером
http://myvisualdatabase.com/forum/misc. … download=1

Дмитрий спасибо.
Я находил этот пример прежде чем спросить.
Но мозгов не хватает сообразить как использовать у себя.
А через действие SQLзапрос для кнопки это нельзя реализовать?
Или обязательно в скриптах?

SELECT   
Zayvka.ZayvkaDateOplata,
Mat.MatName,
Zayvka.ZayvkaKol,
Zayvka.ZayvkaSumma
                 
FROM Zayvka                   
                               
LEFT OUTER JOIN Mat ON Mat.id=Zayvka.id_Mat LEFT OUTER JOIN Gruppa ON Gruppa.id=Mat.id_Gruppa LEFT OUTER JOIN MatMesto ON MatMesto.id=Mat.id_MatMesto LEFT OUTER JOIN Postavsik ON Postavsik.id=Zayvka.id_Postavsik

WHERE
(Zayvka.ZayvkaSumma > 0) AND   
(CASE WHEN {DateTimePicker1} IS NOT NULL THEN date(ZayvkaDateOplata) >= date({DateTimePicker1}) ELSE 1=1 END) AND 
(CASE WHEN {DateTimePicker2} IS NOT NULL THEN date(ZayvkaDateOplata) <= date({DateTimePicker2}) ELSE 1=1 END) AND                                                                                       
(CASE WHEN {ComboBox1} <> -1 THEN Mat.id_Gruppa = {ComboBox1} ELSE 1=1 END) AND
(CASE WHEN {ComboBox2} <> -1 THEN Mat.id_MatMesto = {ComboBox2} ELSE 1=1 END) AND
(CASE WHEN {ComboBox3} <> -1 THEN Zayvka.id_Postavsik = {ComboBox3} ELSE 1=1 END)
   
ORDER BY Zayvka.ZayvkaDateOplata       

Этот SQL запрос работает.
При использовании Multiselect в Combobox работать перестаёт.
Вернее он не воспринимает Combobox с Multiselect.
Помогите доработать!
Спасибо,
Пётр

1. что касается разрешения экранов и ширины столбцов... формы настроены так что зацепляя мышой за рамку легко всё подстраивается под пользователя ( в том числе и все компоненты на форме, нужно только правильно закрепить их к нужным краям). Чтоб менялась ширина столбцов я не замечал. Только что увеличил у себя, перешел к другому пользователю, перегрузил у него прогу, но ничего не изменилось. Почему так - я не знаю. Проблемы нет - поэтому я её и не решаю)))
2. Для доступа по VPN-тунелю вам необходим на входе роутер с функцией настройки VPN. Мы юзаем такой Роутер USB-WiFi MikroTik hAP (RB951Ui-2nD). В инструкции или в инете процедура настроек описана. Реальный IP берёте у своего провайдера. Пользователям кому нужен доступ по VPN выдаете логин и пароль которые пропишите в настройках роутера для каждого. Как настроить доступ у пользователя на компе или ноуте - в инете так же много инфо по шагам. Даже со смартфона сможете на сервер заходить, жаль только прога на андройде не пашет).

Добрый день!

Может кому пригодится мой вариант с доступом:
1. Проект лежит на сервере в расшаренной папке и все работают по сети.
2. Для удалённой работы доступ к серверу настроен по VPN.

п.с. мне кажется это самый простой способ

Этой процедурой можете задавать и разрядность и кол-во знаков после запятой.

procedure frmPlatez_TableGrid1_OnChange (Sender: TObject);
begin
    if frmPlatez.TableGrid1.Columns[3] is TNxNumberColumn then
        begin
            TNxNumberColumn(frmPlatez.TableGrid1.Columns[3]).Footer.FormatMask:='#,##0.00';
        end;
end;

32

(34 replies, posted in Russian)

k245, минорные.
DriveSoft, не получал, вышлите пожалуйста.
А поддержка на форуме продолжится без покупки 6.хх?

33

(34 replies, posted in Russian)

Добрый день! Напомните плиз: если покупал прогу год назад то бесплатные обновления уже закончились?

34

(2 replies, posted in Russian)

разобрался... в новой версии программы у вычисляемого поля теперь задаётся "Тип поля"... а при сохранение "старого" проекта в новой версии программы у всех вычисляемых полей "Тип поля" по умолчанию задаётся как "ТЕКСТ"...
всё ОК )))

35

(2 replies, posted in Russian)

Добрый день!
После установки новой версии перестала работать процедура отображения в таблице вычисляемого поля по классам.
Причем если таблица заполняется скриптом то процедура работает.
В предыдущих версиях процедура работала.
Пример процедуры:
procedure frmOtgruzFakt_TableGrid1_OnChange (Sender: TObject);
begin                                             
     if frmOtgruzFakt.TableGrid1.Columns[2] is TNxNumberColumn then
        begin
            TNxNumberColumn(frmOtgruzFakt.TableGrid1.Columns[2]).FormatMask:='#,####0';
            TNxNumberColumn(frmOtgruzFakt.TableGrid1.Columns[3]).FormatMask:='#,##0.00';
            TNxNumberColumn(frmOtgruzFakt.TableGrid1.Columns[2]).Footer.FormatMask:='#,####0'; // подвал
            TNxNumberColumn(frmOtgruzFakt.TableGrid1.Columns[3]).Footer.FormatMask:='#,##0.00'; // подвал
        end;
        begin
     frmOtgruzFakt.TableGrid1.Columns[2].Footer.FormulaKind := fkSum;
     frmOtgruzFakt.TableGrid1.Columns[3].Footer.FormulaKind := fkSum;
     frmOtgruzFakt.TableGrid1.CalculateFooter;
          end;
end;

Прошу помощи.
С уважением,
Пётр

vovka3003 wrote:

С мылом попроще. Вот пример: http://myvisualdatabase.com/forum/viewt … 516#p31516
Как настроить уведомлялку на телефоне - вопрос гугления (у меня хром стреляет из пушки в фоновом режиме при получении письма на Яндекс)

встроил себе. всё отлично работает! еще раз спасибо!!!

спасибо!!!

спасибо!!!

vovka3003 wrote:

Можно отправлять e-mail, а на телефоне настроить уведомление в браузере или почтовике. Ещё, как вариант - телеграмм бот. Вроде в 21-м веке живём, а СМС-провайдеры все равно звереют с ценниками на СМС...

ааа... спасибо! это наверное и правда для меня приемлемей будет! не знаю почему на смс зациклился)
порою форум сейчас.
если есть пример для моего случая буду благодарен за наводку!)

спасибо!
сложновато для меня конечно... но попробую разобраться)

Ок. Подробнее.
Например: есть таблица "приход" со столбцами "дата", "поставщик", "вес".
Добавляем строку и после нажатия кнопки с функцией "сохранить запись" на телефон уходит смс содержащая "поставщик" и "вес".

Добрый день!
Подскажите, возможно, и если да то как, реализовать автоматическую отправку смс при сохранении записи в таблице, с данными из определённых полей этой записи?

43

(13 replies, posted in Russian)

DriveSoft wrote:

Программа My Visual Database для работы с данными использует Систему Управления Баз Данных (далее СУБД), простыми словами, это отдельная от MVD программа. СУБД бывают разными, по умолчанию в MVD используется СУБД SQLite, которая очень простая, не требует дополнительной настройки или установки, все сделано так, что вы даже не замечаете, что используете ее, но в тоже время она в принципе не предназначена для многопользовательской работы по сети, т.к. недостаточно надежная для этого.


MVD поддерживает не только СУБД SQLite, но и более продвинутую СУБД MySQL, которая предназначена для многопользовательской работы, в т.ч. и через Интернет. Но ее использование предполагает, что вы знакомы с этой СУБД, т.к. необходима ее установка и настройка.
Скачать ее можно отсюда
https://dev.mysql.com/downloads/mysql/


Здесь можете найти видео, как устанавливать MySQL
http://myvisualdatabase.com/forum/viewtopic.php?id=1734


Если в своем проекте вы используете SQL запросы в скриптах либо в выч. полях, возможно их придеться немного изменить, т.к. синтаксис SQL запросов немного отличается между MySQL и SQLite

ОК. Понял.
Спасибо!

44

(13 replies, posted in Russian)

DriveSoft wrote:
Petr wrote:

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

SQLite не рекомендуется для многопользовательской работы, по возможности используйте MySQL

Дмитрий, а можно чуть подробнее... я ещё тот юзер )))
Что значит лучше использовать одно чем другое?
Я накропал базу учета, движения товара, его оплату, контроль и т.д. в Вашей программе.
И никогда не задумывался что использую SQLite или MySQL )))

45

(13 replies, posted in Russian)

k245 wrote:

Ещё такое бывает при отладке программы, когда запускаешь программу, а она выдаёт ошибку до открытия основного окна. Т.е. база SQLite блокируется, когда  запущен экземпляр программы,который подвис до открытия главного окна. У меня такое часто бывает smile Открываю диспетчер задач и завершаю их работу.

да, я в курсе, но сейчас не этот случай, спасибо smile

46

(13 replies, posted in Russian)

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

47

(13 replies, posted in Russian)

k245 wrote:

Возможно, у вас остаётся открытым датасет, это приводит к блокировке базы:
https://vk.com/@createmyvisualdatabasea … azy-sqlite


При использовании в скрипте TDataSet освобождайте его после использования методом Free.

не, не использую в скрипте TDataSet

48

(13 replies, posted in Russian)

Добрый день!
Сегодня и у меня выскакивает такая ошибка!
До этого несколько месяцев база данных работала как часы!
Прошу помощи.

При варианте подсчета итогов через свойства какого либо поля наблюдался следующий баг:
при первоначальном переходе на форму с поиском всё ОК, всё ищет, футер считает. При закрытии и повторном переходе
на форму ругается что такой то колонки не существует. Разбираться не стал.
Остановился на варианте со скриптом, только убрал включение футера т.к. включаю его в свойствах таблицы.
Теперь точно всё работает.
Спасибо Дмитрий!

Работает!
Спасибо Дмитрий!
Два дня рыл форум прежде чем спросить)))