powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Идеальная платформа - из чего и как построить?
23 сообщений из 598, страница 24 из 24
Идеальная платформа - из чего и как построить?
    #39902365
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA
Лог обновления ведёте для возможности отката при сбое? В каком виде?

Ну лог обычный текстовый файл.
с error info warning
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39902366
МодальноеОкно
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
irbis_al
МодальноеОкно,
это уже было в Симпсонах 1С

Вы посмотрите какая радость,контора с многомиллионными активами наконец -то в чём то догнала маленькую ИТ контору.

1. где радость
2. кто кого догнал...
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39902387
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
irbis_al
могу поменять по горячему


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

Как говорится, скупой платит дважды. Тупой трижды или пожизненно.
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39902388
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vill_ager,
В основном скриптов нет, при установке обновления "конфигурации"

М...Вот тут не понял...
Получается у Вас для каждого отраслевого решения свой exe.(Который внутри типовой exe +пакет обновления(Который зависит от отраслевого решения) )
А вот давайте на нашем примере.
Разберём обновления и кастомизацию.
Допустим один клиент захотел врачу вбить диплом.(Дополнительное поле)
Другой категорически против.
Имеем два решения на одном ядре.
Что делаю я.
1.В базу второго клиента добавляю столбец
Код: plsql
1.
alter table people add diplom varchar2(40)


2.В pl/sql(Хранится в базе второго клиента ) добавляю
Код: plsql
1.
2.
3.
insert into &shema.people(....,diplom) values(....:diplom);
----
update &shema.people .....set diplom=:diplon where id=:id;


3.В initскрипте JS (Хранится в базе второго клиента) добавляю переключение на экранную xml форму.
Код: javascript
1.
self.xmlpath='clientcreazy'


В папку clientcreazy копирую файл people.xml
и там добавляю
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Поле в грид.
<dbgrid>
<!--field name="ID" caption="ID" size="80" /> !-->
<field name="NAME" caption="Наименование" size="250" colorcolumn="#ffffb5"/>
<field name="PASSPORTSER" caption="Серия" size="45"  />
<field name="PASSPORTNUMBER" caption="Номер" size="30" colorfont="#bc2bad"/>
<field name="SIDDRESS" caption="Адрес" size="150" />
<field name="BIRTHDATE" caption="Дата рождения" size="100" format="dd.MM.yyyy" colorcolumn="#00DDFFDD"/>
<field name="DIPLOM" caption="Адрес" size="150" />
</dbgrid>
И в CRIUD диалог
<tabpanel>
<tabitem caption="Главная">
<searchpanel name="LASTNAME" caption="Фамилия" is_button="false" is_focus="true" size="480" firstcaps="true"/>
<searchpanel name="FIRSTNAME" caption="Имя" is_button="false"  size="430" firstcaps="true" />
<searchpanel name="MIDDLENAME" caption="Отчество" is_button="false"  size="430" firstcaps="true"/>
<searchpanel name="SIDDRESS" caption="Адрес(для ФMC не используется)" is_button="false"  size="340" />
<searchpanel name="DIPLOМ" caption="ДИПЛОМ" is_button="false"  size="340" />



Всё займёт пять минут(или меньше)...два клиента довольны.
Могу это на видео показать.
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39902391
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt
irbis_al
могу поменять по горячему


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

Как говорится, скупой платит дважды. Тупой трижды или пожизненно.

Это если Вы сделаете.
А Вот у меня всё нормально ...уже с 2001 года.(Может я лучше как инженер)
И я несу ответственность своим карманом за простой.(downtime) по моему косяку.
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39902421
vill_ager
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
irbis_al
vill_ager,
В основном скриптов нет, при установке обновления "конфигурации"

М...Вот тут не понял...
Получается у Вас для каждого отраслевого решения свой exe.(Который внутри типовой exe +пакет обновления(Который зависит от отраслевого решения) )

Нет
EXE единый
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39902433
vill_ager
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
irbis_al
А вот давайте на нашем примере.
Разберём обновления и кастомизацию.
Допустим один клиент захотел врачу вбить диплом.(Дополнительное поле)
Другой категорически против.

В конфигурацию (таблицу экранов) добавляем
локальное описание экрана для конкретной таблицы,
в котором прописываем наш кастомный столбец.
Затем жмем на обновление БД
Затем прописываем в модуль _e_line строки
для вписки столбца в экранную форму (после поля ФИО):
Код: python
1.
2.
3.
if mem.scname=='spr_vr':
    if get=="name":
        mem.addLine("diplom",u"Диплом",50,type="CHAR")



Никаких папок, копирований и sql-скриптов

Тут нужно пояснить понятие "локальное":
в конфигурации это экраны, отчеты, модули и т.п. - идентификатор которых начинается с "_"
Такие элементы не меняются при обновлении базовой конфигурации
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39902447
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vill_ager,
В конфигурацию (таблицу экранов) добавляем
локальное описание экрана для конкретной таблицы,

Вообще выглядит изящно...
Единственное пример немного простой...ведь это поле диплом будет потом возможно участвовать в отчётах.
(И вам нужно будет добавить и там отчет либо изменить отчёт)
В других формах...и Вы всегда будите это затенять.А если столбцов больше.
Приведу пример посложнее...не знаю автоматизировали ли Вы склад или магазин.
Магазин автозапчастей ,одежды ,продуктов питания аптек..принципиально не отличается как логика склада(хотя в аптеке там серия)
Пришло ушло ...но там принципиально отличается атрибутикой.Одежде нужен артикул...авто запчастям помимо артикула подходящая
автомашина,продукты хранение срок годности,условия хранения.
Т.е если логика строится не по базе и нет переключений на отраслевую папку а всё затенять локально возможно это боль.(Хотя возможно ваш фреймворк с этим справится намного проще...ведь кастомизация по диплому действительно простая.)
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39902689
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vill_ager,
А вот я хотел спросить когда грид обсуждали
https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1318372&msg=22014737
Да забыл...коль тема оживилась спрошу...
Как решается вопрос.(И решается ли вообще) если надо чуть поменять рендеринг.
Ну типа подсветить строку или только ячейку если условия значения ячейки или строки.(При показателе стобцв 1 <0 а столбца 5 равного 6.56 подсветить столбец 2 красным светом а всю строку обвести жёлтым бордюром)
Типа набросал.(Столбец средняя реализация при 0 жёлтый цвет)
https://cloud.mail.ru/public/4N3v/59puX6cFP
У меня решается всё так же скриптовым инженирингом.(что может и браться из базы а не только из xml)
Но тут в xml добавил

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
<dbgrid>
<!--field name="ID" caption="ID" size="80" /> !-->
-------------------------Перечисляются поля
<field name="DATALASTREFRESH" caption="Обновление статистики" size="0"  format="dd.MM.yyyy HH24.mm.ss" />
<script type="js" exec="
var val=tm.getValueAt(row, 9);
/* Подсветить всё строку если штрихкод 4607088544097
 if(val=='4607088544097') component.setBorder(javax.swing.BorderFactory.createLineBorder(java.awt.Color.YELLOW, 1));*/
if(column==9) if(value!=null) {
component.setBackground(table.getBackground());
 if (value.getValue()==0) { component.setBackground(java.awt.Color.YELLOW);
/*Подсветить столбец*/
}
else  if(!selected) component.setBackground(table.getBackground());
} else  if(!selected) component.setBackground(table.getBackground());
" />
</dbgrid>



В java выглядит многословно(Это фишка языка)...но вот мои фолловеры пишут ,то ли на ruby то ли на python(по мне так они одинаковы) и там всё изящнее.
Более того вышла новая философия GraalVM
https://habr.com/ru/company/haulmont/blog/433432/
Где можно внутри GraalVM писать на python и ruby и т.д.
И вот прислали мне образ VirtualBox .Где мои java классы наследуются то ли ruby или pyton. и оно даже работает.( мне кажется медленней..но я ещё проведу ряд замеров)
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39902815
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я "подкрашивания" вычисляю в SQL и вывожу столбец с цветом. Нужная колонка смотрит на нужную колонку с цветом и "красится".
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39902822
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argo
Я "подкрашивания" вычисляю в SQL и вывожу столбец с цветом. Нужная колонка смотрит на нужную колонку с цветом и "красится".

У Вас же web система...в браузере интерфейс.?
Я в апексе(Oracle apex) тоже так делаю(и много другого)...HTML в плане дизайна на уровень выше..
Там можно и наползание одно на другое...полупрозрачный фон и нахлёст...Подкрасить только первую букву...в общем в html всё проще..
А вот в рендеринге десктопе всё иначе.
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39902877
vill_ager
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
irbis_al,
предусмотрены крючки (методы) в модели (Qt)
которые вызываются при отрисовке грида - на них вешается обработчик
Выглядит примерно так

Зацепиться можно как в глобальной конфигурации, так и в локальной кастомизации.

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

Их немного, добавляю в платформу по мере необходимости.

irbis_al
...ведь это поле диплом будет потом возможно участвовать в отчётах.
(И вам нужно будет добавить и там отчет либо изменить отчёт)
Могу локально на лету через скрипт скорректировать любой отчет, добавив в нужною ячейку "[diplom]"
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39902890
vill_ager
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В моем случае кастомизация через локальные элементы
очень эффективна для мелкого нетиражного тюнинга.

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

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

решение: сформирован пакет (описание экранов, отчеты, скрипты),
выложен на сайт,
у заказчиков прописано автоматическое обновление

Обновление происходит так:
платформа
конфигурация
пакеты
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39903047
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
т.е., для таких вещей надо писать код?
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39903050
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRos,
Да..это самое простое написать скрипт.
и можно покрыть очень много условий...(Вплоть до расчёта синуса и логарифма и если sin>0.5 то подкрасить ячейку(строку))
В моей практике просили подкрасить столбец или строку один или два раза.
Когда фильтр и интерфейс по принципу "необходимо и достаточно" подкраска это "понты для приезжих".(Но тем не менее ИС должна это уметь делать)
А у Вас явный оверхед...(С моей точки зрения).
Всё равно писать(помогать подкрасить) Вам(или консультировать Вам)...так зачем в ИС делать подобный инжениринг...есть более приоритетные вещи.(во всяком случае для меня
Ибо всё что сделано или будет сделано идёт из моего кармана и из моего дохода.
)
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39903052
vill_ager
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ViPRos,

а где тут "подкрашивание" в Вашем скриншоте?
тут явно в гриде по несколько иконок в строке

Условное подкрашивание без кода не сделать
Условия ведь могут быть разные, вплоть до дня недели и погоды на улице...
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39903053
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vill_ager
ViPRos,

а где тут "подкрашивание" в Вашем скриншоте?
тут явно в гриде по несколько иконок в строке

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


https://www.devexpress.com/products/net/controls/winforms/grid/~charting-and-information-analysis~conditional-formatting
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39903054
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRos
vill_ager
ViPRos,

а где тут "подкрашивание" в Вашем скриншоте?
тут явно в гриде по несколько иконок в строке

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


https://www.devexpress.com/products/net/controls/winforms/grid/~charting-and-information-analysis~conditional-formatting

А вот тут я не понял Ваш "посыл"
The WinForms Grid that Does Everything
Т.е грид который делает что угодно(Вот в этом я сомневаться изволю...наверняка сложные вещи делает на том же скриптовом инженеринге)...но стоит от 1000 до 2200 зелёных
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39903056
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
irbis_al

А вот тут я не понял Ваш "посыл"
The WinForms Grid that Does Everything
Т.е грид который делает что угодно(Вот в этом я сомневаться изволю...наверняка сложные вещи делает на том же скриптовом инженеринге)...но стоит от 1000 до 2200 зелёных

Ну, ВИП.Производство на ВИПРОС стоит 100 000 евро, а с внедрением и того больше.
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39903057
vill_ager
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ViPRos
vill_ager
ViPRos,

а где тут "подкрашивание" в Вашем скриншоте?
тут явно в гриде по несколько иконок в строке

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


https://www.devexpress.com/products/net/controls/winforms/grid/~charting-and-information-analysis~conditional-formatting
Если пройти по ссылке дальше: ( Documentation ),
то после обычного условного форматирования в
стиле Excel можно увидеть тот самый код

чудес не бывает
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39903061
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vill_ager
Если пройти по ссылке дальше: ( Documentation ),
то после обычного условного форматирования в
стиле Excel можно увидеть тот самый код

чудес не бывает

есть и то и то
обычно условного форматирования без кода хватает за глаза
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39903064
dma_caviar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vill_ager
Если пройти по ссылке дальше: ( Documentation ),
то после обычного условного форматирования в
стиле Excel можно увидеть тот самый код

чудес не бывает

Понятно что на каком-то уровне код все равно есть. Вот только прикладному разработчику с ним контактировать не обязательно.
...
Рейтинг: 0 / 0
Идеальная платформа - из чего и как построить?
    #39910068
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vill_ager
Как "идеально" решать проблему доставки обновлений?

Если идеально, то для начала нужно проверить новую платформу на всех используемых в настоящее время конфигурациях и накат новой пары платформа+конфигурация поверх используемых в настоящее время вариантов.

vill_ager
У меня обновление сделано в 2 этапа:

Такой подход будет очень печален у пользователей, которые лет так пять не обновлялись, а потом вдруг пришли.
...
Рейтинг: 0 / 0
23 сообщений из 598, страница 24 из 24
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Идеальная платформа - из чего и как построить?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]