oknosoft / metadata.js Goto Github PK
View Code? Open in Web Editor NEWLibrary for building offline-first browser-based applications :: платформа автономных веб-приложений
License: MIT License
Library for building offline-first browser-based applications :: платформа автономных веб-приложений
License: MIT License
Как решается вопрос с одновременной (почти одновременной) записью разными пользователями в базу данных? Например уникальность номера у документа 1С.
Регламентное задание срабатывает. В чем может быть причина что изменения с сайта не попадают в 1С
Код загрузки из couchdb можно пройти в конфигураторе по шагам. Регламентные задания запускать не обязательно - в обработке администрирования интеграции есть кнопка. Скорее всего, значение параметр since = 0
. Укажите в поле since
номер изменения, начиная с которого требуется прочитать данные. Далее, при каждом цикле обмена, значение будет увеличиваться автоматически
Использование CouchDB и metadata.js для поставщика данных на несколько интернет магазинов как лучше реализовать? Возможно в этом случае лучше запускать metadata.js на сервере в node.js
Есть разные сценарии. Metadata.js на сервере может пригодиться для построения сложных индексов или серверного рендеринга. В большинстве случаев, хватает возможностей metadata в браузере.
Данную связка для создания публично доступного api с авторизацией как лучше применить
Есть положительный опыт использования [URL=https://github.com/colinskow/superlogin]superlogin[/URL] - со временем оформлю, как стандартный компонент для metadata v2
клиентское приложение на JS ходит за данными в http api cauchDB через интернет. Этот обмен шифруется?
Да
файлы, в частности картинки, которые хранятся в базе 1С будут кэшироваться
В нашем сценарии, присоединенные файлы и картинки хранятся в couchdb. На стороне 1С реализовано API, имитирующее работу с обычными присоединенными файлами.
Добрый день.
Устанавливаю metadata-js по инструкции http://infostart.ru/public/540168/
Но делаю все это в вирт.машинке с linux Ubuntu 16.04,
node'а установилась v6.8.1
команды
npm install -g metadata-js
npm install -g gulp-cli
выполняется без ошибок
а вот
metadata init
получаю ошибку:
/usr/bin/env: ‘node\r’: No such file or directory
и судя по всему ‘node\r’ - это где-то в коде перенос строки стоит в кодировке Windows или типа того
Где и что можно посмотреть?
Или вариант только ставить все под Windows?
Если в браузер прибежали изменения объектов ram - проблем не возникает. Мы синхронно обновляет такие объекты в памяти. Для doc, объектов в памяти не ожидается и синхронного обновления нет.
Но! его надо делать для тех объектов, которые были прочитаны но еще не выгружены из памяти
Вместо фильтрованной репликации, задействовать индивидуальные базы на сервере для групп абонентов с репликацией по индексу
Здесь у вас последняя версия стоит, очень много глюков.
http://www.oknosoft.ru/assets/examples/unf/
Для настройки состава полей, отбора, сортировки и группировки, необходимо реализовать:
metadata-abstract-ui
невизуальные классы, по аналогии с объектной моделью компоновки данных в 1Сmetadata-react-ui
компоненты для управления настройками отчетов и списковЕсть набросок визуальной части управления настройками и описание доступных полей списка но правильнее сначала реализовать невизуальные классы, а затем - прикрутить к ним редактор
SchemeSettings
- на первом этапе, можно сделать заглушку, возвращающую один из двух вариантов: плоский список или единственный уровень иерархииSchemeSettings
SchemeSettings
метаданных поля
признаками (измерение, ресурс, агрегатная функция - для ресурса, доступность для отбора, доступность для сортировки, функция сотрировки)Selection
по аналогии с 1С-ным Отбором компоновки данных
+ вложенные семействаSchemeSettingsEditor
по аналогии с 1С-ным Настройки компоновки данных
Добавил описание компонента
Задачи:
kind
label_position
mandatory
параметры выбора
и связи параметров выбора
из текущих метаданных поляВЫ в сторонний модуль dhtml, свои правки тоже вносите?
Код сервисворкера реализован, но репликация с CouchDB валится в непонятные моменты времени.
Ждём выхода pouchdb 6.2 - вроде, там xhr
должен быть заменён на fetch
Сейчас, для включения сортировок, требуются действия программиста. Это можно улучшить:
А интерфейсы быстро рисуются для клиента на яваскрипте к примеру,
заявку на покупку.
Почем у у вас не информативные коммиты?
реализовать свойство метаданных async_write
В 1С-ном наследии, когда класс данных имеет свойства, определенные только на клиенте или только на сервере, нет ничего страшного (пример - метод Показать() у ТаблицыЗначений).
Задача: полностью отделить ядро, которое должно одинаково работать в Nodejs и браузере от визуальных методов DataObj, что упростит реализацию UI альтернативными библиотеками
Реализовать в v2.0
Стили, описанные индивидуально для каждого компонента metadata-react-ui имеет смысл объединить в общий css файл и вместо className={classes.name}
использовать className={'class-name'}
Есть ли исходники v2, если да, то как их найти.
Чтобы юзер в онлайне обращался только к couchdb?
Чтобы не было синхронизации с pouchdb?
Ошибка в демо-примере
Используется ли библиотека у кого-нибудь на production?
Сейчас, поля ввода ссылочных типов получают список доступных значений асинхронно вне зависимости от способа кеширования
Проекту также не хватает здесь travel ci подобных систем, проверки кода, написание кода по выбранному стандарту и ReactJs)
Обработчики событий по умолчанию, имеет смысл поместить в контекст AppContainer
, а в формы объектов и списков передавать только индивидуальные обработчики для реализации нестандартного поведения формы.
Стандартные обработчики:
handleSelect: PropTypes.func, // обработчик выбора значения в списке
handleAdd: PropTypes.func, // обработчик добавления объекта
handleEdit: PropTypes.func, // обработчик открытия формы редактора
handleRevert: PropTypes.func, // откатить изменения - перечитать объект из базы данных
handleMarkDeleted: PropTypes.func, // обработчик удаления строки
handlePost: PropTypes.func, // обработчик проведения документа
handleUnPost: PropTypes.func, // отмена проведения
handlePrint: PropTypes.func, // обработчик открытия диалога печати
handleAttachment: PropTypes.func, // обработчик открытия диалога присоединенных файлов
Их можно объединить в объект data_obj_handlers
реализовать
Несколько вопросов:
Пример: подключили библиотеку интеграции к базе 1с, выполнили настройку couchdb и выгрузили туда метаданные и данные.
Теперь конструируем конректное веб приложение. Для этого нам нужны метаданные отправленные в couchdb.
Правильно я понимаю, что метаданные подтягиваются в наше приложение npm скриптом ' prebuild:meta
?
Результатом его работы является файл src/metadata/init.js
?
Планируете ли вы переход на Typescript или использование es6, es7 с babel и webpack для улучшения кода?
Почему сторонние библиотеки находятся в папке lib, а не в node_modules?
grouping
= array
, разворачивать массив при чтении и записывать таблицу alasql целиком, вместо текущего объектаbalances
, slice_last
, day
, month
acl
с массивом разрешений по используемым метаданнымA declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.