gifts2017

Web клиент к 7.7

Опубликовал gildebrand (gildebrand) в раздел Программирование - Работа с интерфейсом

В качестве примера возможности использования API J1C предлагается демонстрация реализации web-клиента к 7.7

Ссылка на демо-пример: 

В качестве примера возможности использования J1C предлагается демонстрация реализации web-клиента.
Ссылка на демо-пример: http://89.169.100.50/WebJ1C/Login.faces

При реализации были использованы следующие технологии:
J1C
JSF 1.2
RechFaces 3.3 от JBoss
MyFaces 2.0 от Appache
Tomcat 6.0
Демонстрационная база 1С: Комплексная конфигурация (468 релиз)

Реализованный функционал:
Просмотр справочников: Контрагенты, Номенклатура.
Ввод и проведение документа "Поступление ТМЦ".
Просмотр общего журнала.
Просмотр журнала по поставщикам.
Дополнительные справочники, необходимые, для заполнения документа "Поступление ТМЦ" (Единицы, валюты и т.п.).

Из особенности реализации стоит отметить следующее.
Реализация "фейса" и бизнес-логики (например проведение)  и использованием J1C в итоге по количеству кода менее затратно, чем тоже самое в 1С. Это достигается главным образом за счет полиморфизма и наследования. Например, в демонстрации справочник "Номенклатура" и "Контрагенты" - это один и тот же класс. Отличия проявляются только на форме в jsp - какие атрибуты показывать пользователю.
В отличии от существующих решений альтернативного доступа к данным 1С - данное решение отличается тем, что предоставляет возможность проведения документа. При этом разработчику J1C предоставляет необходимый, для этого инструментарий.

См. также

Подписаться Добавить вознаграждение

Комментарии

1. dushelov (Душелов) 14.09.10 00:43
2. Misha ⁠ (Magister) 14.09.10 01:18
В опере интерфейс практически не работает.
3. Роман Осадченко (cleaner_it) 14.09.10 04:46
Супер! Благодаря таким разработкам 1С 7.7 будет на плаву даже после прекращения поддержки 8.2:)
4. Александр Пономарев (Abris9) 14.09.10 06:24
5. Антон (anton.fly7) 14.09.10 07:57
красиво :) только в хроме тоже не хочет работать ((
6. gavril (gavril) 14.09.10 08:10
В IE тоже не особо.
Точнее не особо поработаешь :(
Но как концепт - порадовало.
7. Доржи Цыденов (support) 14.09.10 08:42
Круто! Развивайте проект! Какие сейчас есть сложности в реализации?
8. vek (vek) 14.09.10 09:04
Плюс однозначно! Успехов в продолжении!
9. Александр Рытов (Арчибальд) 14.09.10 09:17
С нетерпением жду продолжения ;)
10. Влад Кацманевич (cool.clo) 14.09.10 10:23
11. GSoft. (GSoft) 14.09.10 10:34
12. Oberonm (oberonm) 14.09.10 11:22
HTTP Status 500 -

--------------------------------------------------------------------------------

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

java.lang.IllegalStateException: duplicate Id for a component j_id_jsp_1894617443_2:j_id_jsp_1894617443_22:header
org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:68)
org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
org.ajax4jsf.application.TreeStructureNode.apply(TreeStructureNode.java:92)
org.ajax4jsf.application.AjaxStateManager.getTreeStructureToSave(AjaxStateManager.java:189)
org.ajax4jsf.application.AjaxStateManager.buildViewState(AjaxStateManager.java:514)
org.ajax4jsf.application.AjaxStateManager.saveView(AjaxStateManager.java:478)
org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:396)
javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:178)
org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:341)
org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:206)
org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388)
org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515)

13. Павел Кучеренко (NCCSOFT) 14.09.10 13:04
Веб-клиент подходит для любой конфигурации? Всё же есть плюсы и у веб-клиента, по сравнению с RDP, Cytrix...
14. dushelov (Душелов) 14.09.10 13:31
У меня в опере нормально работает.
15. ValeriTim (ValeriTim) 14.09.10 14:03
То, что сделал автор, конечно достойно уважения, но не вижу смысла развивать такой проект далее. В 8.2 уже есть возможность работы через веб интерфейс и ничего особого дописывать для его реализации не надо. Все работает и в файловом варианте и настраивается не сложно.
16. Андрей Лихоманов (lihomanov) 14.09.10 14:19
Прикольно! не думал что можно такое реализовать! :D
17. Андрей (Свой) 14.09.10 15:21
вот бы еще на ДБФ работало
18. Михаил (ILM) 14.09.10 18:57
Может стоить уже сказать 7-ке Rip. Зачем же её мучить-то бедную.
Она напоминает мне больную бабушку в коме, лежит, проводки подведены, что-то в мозгу колышется, а вот встанет или нет, это уже зависит от того дедушки, который рядом с ней. :cry:
19. gildebrand (gildebrand) 14.09.10 21:30
(15) Это только пример использования апи J1C. Сама по себе задача делать тонкого клиента не стоит. Если кто захочет его делать - может использовать J1C.
А перед J1C ставится задача сделать полноценное апи, с помощью которого и тонкого клиента можно сделать и различную интеграцию, да мало что еще. Вообщем задача в том, что бы сделать из 7-ки более открытую систему.
20. gildebrand (gildebrand) 14.09.10 21:34
(7) Сложности в отсутствии рук ибо задач много. Например надо бы апи под dbf адаптировать, да много еще идей. Так что кто желает присоединиться к проекту - буду рад.
21. gildebrand (gildebrand) 15.09.10 03:17
(13) Данный клиент подходит только к комплексной конфе. Но если говорить про само АПИ - то к любой.
22. gildebrand (gildebrand) 15.09.10 03:29
(18) Я не хочу вступать в достаточно бесполезный спор на тему что лучше 7 или 8. Но вам отвечу в таком ключе: спасибо, конечно, 1С - подсадила многих на себя, но надо сказать что сделала она это не бескорыстно, проявив на редкость коммерческую прозорливость. Но при этом она перестаралась и сделала "тюремной" жизнь "программистов 1С".
Кто понял о чем говорю молодцы, а кто не понял - забудьте что написал.
23. gildebrand (gildebrand) 15.09.10 03:36
(12) Дублирования идентификаторов пока не могу отловить - дело видимо где то в коре JSF. Может есть кто с опытом на JSF тут?
24. gildebrand (gildebrand) 15.09.10 03:38
(6) Да, тестилось все под лисой. В других не смотрел. Так что смотрите под "правильным" браузером.
25. ValeriTim (ValeriTim) 15.09.10 09:57
(19) бесполезная трата времени ... :(
26. Роман Осадченко (cleaner_it) 15.09.10 10:43
(25) Думаю, что ты не прав. OpenConf, 1С++, FormEx и др. - все это направлено на улучшение нашей жизни (программистов). В этом направлении не может быть бесполезной траты времени

PS: Кстати - для 1С 8.2 начал появляться OpenConf:) Читаем Закрытые библиотеки 1С v8. Пока ничего нет... но первый шаг сделан!
27. gildebrand (gildebrand) 19.09.10 01:15
(17) Основная "проблема" с дбф версией - пока не нашел подходящего бесплатного драйвера дбф для явы. Драйверов много, но те что приличные - платные, а те что бесплатные имеют свои минусы. По крайней мере, те что бесплатные не поддерживают в явном виде нотацию tsql, так что бы не сильно переделывать встроенный парсер в апи.
28. АНДРЕЙ Фамилия (MegaMouse) 19.09.10 13:51
У Меня браузер глючит и я немогу ни один документ(справочник) просмотреть? в смысле редактировать.
Однозначно плюс. Могу присоединится.
29. fastwriter (fastwriter) 20.09.10 08:36
За использование технологий Java - однозначно плюс.

Кроме того, альтернативный web-клиент к 1с77 - штука нужная, если вспомнить что навороты 1с8 необходимы не всем, да и ее системные требования и система лицензирования обходятся заметно дороже чем у 77.
30. Юрий Щербаков (ufo58) 20.09.10 11:38
прошу простить ... может чего не понял ...
ссылка на раб стол работает ....
плюс однозначно, но ...
а где же собственно "Внешний отчет, обработка"?
31. ilya005 (ilya005) 21.09.10 01:55
Красиво, работает, плюс по любому, но очень похоже на изобретение велосипеда,
в 8.2 всё тоже и работает под всеми браузерами и БУДЕТ развиваться за деньги "налогоплательщиков".
Так что как идея - супер, как реальное применение - врядли ;)
32. gildebrand (gildebrand) 21.09.10 02:02
(31) Еще раз - это только демо возможности J1C. Как основная же задача J1C - это компенсировать недостатки 7 в интеграционной части, а так же различного рода интеграционных задач. Например, быстрое и эффективное создание вебсервисов, причем как "в", так и "из".
Хотя и можно создавать альтернативный клиент пользователю...
33. Доржи Хренов (Кадош) 20.01.12 12:32
ссылка на демо не работает
34. сергей сергей (sergei198821) 21.08.14 15:06
А можно по подробнее расказать, о технологии создания Web интерфейса. Мне это очень интересно
35. Art Sem (Art77) 03.03.16 14:14
Добрый день. Очень заинтересовала ваша разработка. Как модно посмотреть этот пример?
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа