26

(22 replies, posted in Russian)

k245 wrote:

pha1984
Что бы вы конкретно хотели ещё от данного проекта?

Лично я бы хотел:
1) что бы в редакторе скриптов (хотя бы в справке) были отражены все доступные методы и классы, а то иногда по пол дня думаешь как решить задачу.
2) Нормальную поддержку работы с XML
3) Дополнить панель инструментов элементами типа Splitter и прочими (что бы не писать кучу кода руками)
4) Еще можно было бы web view обновить...

Что до покупки лицензии - мне бы тоже было непонятно придет ли мне лицензия если автор не подает признаков жизни на форуме, да и проект замер на версии 6.5

27

(7 replies, posted in Russian)

В запросе к базе не уточняется id_product. Добавь его в условия и должен получить то, что ищешь

k245 wrote:

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

P.S. В настоящий момент они отображаются в иерархии по свойству Owner, что и так очевидно: у всех компонентов формы владельцем является форма.

Правой кнопкой по списку и выбрать вариант "дерево"

Не совсем понял вопрос, но если Вам надо установить ComboBox сотрудника из результата запроса, то выглядеть это буде так:

FrmReportCard.CBStaff.dbItemID := SQLExecute('SELECT Staff.id FROM Staff  JOIN DictPosition ON staff.id_DictPosition=DictPosition.id WHERE Administrative =1') 

Хотя бы можете объяснить как сделать так чтобы работа шла через другой браузер (хром, FF), а не через IE? А дальше я сам.

vovka3003, будьте так любезны, черкните код который должен быть. Заранее благодарю.

Не подскажете как это можно сделать в связке с MVD?

Вот сборка, нажатие на Button1 заполняет поле, а нажатие на Button2 должно вывести сообщение с переводом, но вываливает ошибку. Что я делаю не так?

Добрый вечер!
Подскажите как из Google translate (translate.google.ru) получить текст перевода? Id у элемента-контейнера нет...

35

(3 replies, posted in Russian)

Если я задам

ShowRecord('имя_формы','имя_таблицы','id_записи');

то форма блокирует возможность работы с другими формами.
При создании кнопки мы указываем что делать и с какими формами/элементами форм, как до этих настроек из скрипта добраться?
Это бы сильно упростило мою задачу.

36

(3 replies, posted in Russian)

Доброго дня всем.
Подскажите пожалуйста как решить следующую проблему:
Мне нужно открыть форму не в режиме ShowModal. Кнопок в проекте много и хочется написать универсально.
Как получить передаваемые открываемой форме данные и имя вызываемой формы?

Я обычно делаю дополнительную таблицу в БД. В ней свожу 2 связи. Одна указывает на заявку, другая на человека. (В Вашем случае). На форме это будет либо таблица, либо комбо с мнодественным выбором и обработкой скриптом при открытии/сохранении/изменении

38

(13 replies, posted in Russian)

То, что у Вас в 7 посте - очень набросок ))). Так леса не считают. Это я Вам как специалист говорю. Если нужно подробнее - в лс.

39

(2 replies, posted in General)

SQLilte DB is't good solution for work with multiple connections at the same time (3 and more), it may crash your database. If You want to use app for many users at the same time MySQL will be a best choise. Better on local server or remote server because of you may connect to server from anywhere.
Second: MySQL can be used with webview or another webapp (or android, iOS app) connected to your base.

40

(13 replies, posted in Russian)

Zenja, леса конечно модульная конструкция, но считается не совсем так. Базовый модуль это 2 рамы, 2 ригеля, 3 настила (щита), 1 диагональная стяжка и 1 горизонтальная. А вот когда это большой фасад уже считается иначе. Вплоть до учета количества подъемов. Количество мест крепления тоже не всегда по расчету проходит (типовое).
Stas, читая Ваши мысли у меня вообще не формируется понимание какие именно леса Вы считаете: рамные РЛСП, хомутовые или клиновые? Разные конструкции - разный метод счета.

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

По сути: я бы собирал каждый сегмент фасада отдельно в одину общую таблицу (общий расчет объекта, выводимый в грид), а потом этот грид отправлял в отчет, где оформлял бы для печати.

а как реализовать так, что-бы программа считала именно те значения, которые я выбираю чекбоксами, ну и выводила в отчет? или хотя бы в таблицу.

А почему бы не проверять состояние чекбокса Checked?
Весь расчет формы запихнуть в 1 процедуру и повесить ее на событие OnChange всех параметров.
Базовые параметры либо подтягивать из ini файла, либо жестко задать в переменных процедуры счета.

Добрый день!
Подскажите, как получить имена всех нодов одного уровня в XML документе?
У меня есть код, но он идет только по первой ветке, а соседнюю даже не видит.

procedure GetList;
var
    XMLDoc: TfsXMLDocument;
    XMLItem: TfsXMLItem;
    i: integer;
begin
    XMLDOC:=TfsXMLDocument.Create;
    XMLItem:=TfsXMLItem.Create;
    if FileExists('list.xml') then
    begin
        XMLDoc.LoadFromFile('list.xml');
        XMLItem:=XMLDoc.Root;
        for i:=0 to XMLItem.Count-1 do
            begin
                XMLItem:=XMLItem.Items[i];
                ShowMessage(XMLItem.Name);
                i:=i+1;
            end;
    end;
end;

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

sibprogsistem wrote:

создайте доп поле (m-f) для определения пола, от него и отталкивайтесь  ..

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

Не работает, что я делаю не так?
Вызов процедуры по нажатию кнопки, после отработки открывается форма frmReport.

procedure ReportGrunt (target: TObject; row: integer; Price: Double);
var Value, TareValue, TareSmall, TareBig, TareSmallCol, TareBigCol, Sum: Double;
    NewCol: TNxTextColumn;
begin
    Value:=TdbEdit(TAForm(target).FindComponent('tbGruntValueZapas')).Value;
    TareSmall:=TdbEdit(TAForm(target).FindComponent('tbGruntTareSmall')).Value;
    TareSmallCol:=TdbEdit(TAForm(target).FindComponent('tbGruntTareSmallCol')).Value;
    TareBig:=TdbEdit(TAForm(target).FindComponent('tbGruntTareBig')).Value;
    TareBigCol:=TdbEdit(TAForm(target).FindComponent('tbGruntTareBigCol')).Value;
    TareValue:=TareSmall*TareSmallCol+TareBig*TareBigCol;
    Sum:=Price*TareValue;
    frmReport.tgReport.Columns.Add(NewCol);
    frmReport.tgReport.Columns.Add(NewCol);
    frmReport.tgReport.Columns.Add(NewCol);
    frmReport.tgReport.Columns.Add(NewCol);
    frmReport.tgReport.Columns.Add(NewCol);
    frmReport.tgReport.AddRow(1);
    frmReport.tgReport.Cells[0,row]:=TdbLabel(TAForm(target).FindComponent('lbGrunt')).Caption;
    frmReport.tgReport.Cells[1,row]:=FormatFloat('# ###.00', Value);
    frmReport.tgReport.Cells[2,row]:=FormatFloat('# ###.00', TareValue);
    frmReport.tgReport.Cells[3,row]:=FormatFloat('# ###.00', Price);
    frmReport.tgReport.Cells[4,row]:=FormatFloat('# ###.00', Sum);
end;

Спасибо.
Еще вопрос: как добавить столбец в TableGrid? Нашел конструкцию from1.Tgrid.Columns.Add, но не могу понять как быть дальше, не принимает ни количество ни текстовое значение....

Для того чтобы найти родительский элемент мы используем свойство Parent. Мне нужно пойти в обратную сторону от родителя к подчиненным.
Подскажите пожалуйста как скриптом найти подчиненные элементы на форме?

В событии OnShow вместо имени формы пиши TAForm(Sender). Сработает при условии что элементы требующие перевода далее идентичны на всех формах. И в переменное Sender хранится указатель на форму.

5.6

procedure HorMenuCreate;
var MenuItem: TdbLabel;
    Pic: TImage;
    Img: TPicture;
begin
    //create horizontal menu items
    MenuItem:=TdbLabel.Create(frmHorMenu);
    MenuItem.Parent:=frmHorMenu;
    MenuItem.Top:=13;
    MenuItem.Left:=3;
    MenuItem.Width:=183;
    MenuItem.AutoSize:=false;
    MenuItem.Alignment:=taCenter;
    MenuItem.Font.Color:=$00ECECEB;
    MenuItem.Name:='H3000';
    MenuItem.Caption:='H3000 "Жидкий гранит"';
    MenuItem.OnClick:=@MenuItemClick;
    MenuItem.OnMouseEnter:=@MenuItemHoover;

При компиляции выдает Undeclared idetifier: OnMouseEnter

Разобрался.

TdbEdit(TAForm(FormName).FindComponent('Edit')).Value:=#smth