DroidPresB - Система мобильной торговли, с открытым исходным кодом, разрабатываемая под операционную систему Android. DroidPresB является Форком DroidPres
понедельник, 14 января 2013 г.
DroidPresModB_V1.0.27
Вышла новая версия клиентской части DroidPresModB_V1.0.27. В этой версии всего одно изменение, добавлена кнопка, которая позволиет отфильтровать заказанный товар.
Новая версия по прежнему совместима с оригинальным сервером DroidPres.
Решил попробовать и... Исходники устарели! :( Их закрыли? Или руки не дошли? А как это чудо переписать под 1С8х(.Net сервер сразу ищет 1С7.7)? Тяжело добавить ПАПКИ товаров? если товаров больше 30-40 то не удобно листать.
Есть пара пожеланий. Вроде не сложных, но увы я только начал кодить под андроид... 1) Можно вывести кнопку выбора категории товаров прямо под товарами (рядом с фильтрами) 2) можно определить "зоны" клика на товарах - добавить 1, выбор количества в диалоге кнопками, добавить или установить столько сколько и прошлый раз.
Еще одна жутко раздражающая меня (первый месяц с андроидом) реакция на глобальную кнопку "закрыть" ("<"). Было бы не плохо если бы меня переспрашивали ("Да"-"Нет"). Такое есть в большинстве (провереных мной) игр.
мною параллельно ведется еще один форк этого проекта, и если есть желание побыть альфа-бета тестером то welcome поиск по droidpreselling примерно в числах 16-17, то есть на выходных, может будет готова база для тестирования, а пока код постоянно переписывается(в том числе и серверная часть), с учетом тех функций которые добавились в проект
Выглядит круче (на скриншотах), но не нашел там скомпилированый проект - только исходники. И не помешало бы завести хотя-бы примитивный форум для разработки (5-6 веток - пожелания, разработчики, багия, новое в версиях...). Одной ветки/блога явно маловато.
после запуска бегут строки в андроиде и в питоне на андроиде доходит до "ERROR: org.xmlrpc.android.XMLRPCFault: ..." после чего выдает сообщение "XMLPRC ошибка данных. Обратитесь к системному администратору." с кнопкой ОК. Ошибки в списке (в ...) каждый раз разные. на отправку, на обмен, на 23 и на 27 примерах питоновской выгрузки. 27 после обновления очищает список клиентов-образцов и товаров (возможно по умолчанию база пустая). Еще на 27 требует наличие в исходниках \src\apk\_DroidPres.apk но при подстановке туда 27 релиз или копирования из 25 все равно ошибка! :(
Я хотел поинтересоваться про ошибку: Сперва выходит окошко "XMLPRC ошибка данных. Обратитесь к системному администратору." с кнопкой ОК. Потом в андроиде выходит такое сообщение. ERROR: XMLRPC Fault: :method "SetLocation" is not supported [code 1] Во время получения данных оно выходит через раз, а во время отправления документов почти каждый раз. На работу оно не влияет, но как-то неказисто получается :) Нельзя ли как нибудь заглушку прописать, если сам метод еще не отработан? Доло в том, что мы не пользуемся GPS навигацией и условно метод "SetLocation" нам не нужен. За ранее спасибо.
Это проблема в сервере, который написан на Python, сервер писал автор оригинального проекта, я могу только посоветовать использовать мой сервер, там таких проблем нет. Мой сервер пока не имеет внятного интерфейса, на выходных опубликую поправленную версию.
Извините, что пока не отвечаю собщения. Сейчас появился срочный, спонсируемый заказ на внедрение карт. То-есть можно будет посмотреть перемещение торговых представителей, точнее места, в которых были набиты заказы.
как добавить новые поля в справочники? Например необходимо добавить поле "склад" в справочник торгового представителя. как это сделать в 1с я знаю, как это сделать для андроида - не имею понятия.
В 2-х словах объяснить не получится, для осущетвления вашей задачи надо как минимум сделать 3 вещи: 1) Изменить структуру БД; 2) Дописать использование этого поля(t-sql и java); 3) Доработать часть обмена с сервером(сам сервер и клиент).
Мне, для нормального внедрения нужно сделать совсем немного. Вся продажа настроена на прес-селинг, предзаказ. В данный момен торговые сами себе набивают заявки в программе 1с. Этот документ комплексного характера, содержит в себе такие поля как "Склад" (для отгрузки), "Экспедитор" (временный склад, условно машина, которая повезет затем этот товар клиенту) и "Агент" (ссылка на справочник Агентов, т.е. фамилия того агента, кто осуществил продажу, нужно для дальнейших отчетов). Конечно в этом документе полно других полей, но все они решаемы с базовой версией. С полем "Экспедитор" я разобрался. У нас в системе Экспедитор привязан к клиенту, таким образом зная клиента находим его экспедитора, это я уже сделал. Осталось решить 2 задачи. 1- куда привязать "Склад" и 2 - где взять ссылку на "Агента". Думаю, агента не сложно будет вписать, постараюсь, но вот со складом заморочка. Хорошо бы привязать его к справочнику "Агентов" Если можно, поясните еще. Какую БД менять? (если в 1с, это не проблема) 2. Дописать использование этого поля (если добавите например строковое поле в Агента (в самом КПК) и дадите ссылку, я сам внесу изменения в модуль прокси_1с 3. что подразумевается под словом сервер и клиент? сервер - это сервер на питоне, а клиент - это андроид?
Я правильно понял, в 1с каждому агенту соответсвует склад? При отправке данных, вместе с прочей информацией о заказе, передаётся "agent_id", который был указан в настройках клиента(android приложения). Таким образом, можно в 1с вести сопоставление номера агента и склада. Если я что-то не правильно понял- поправьте. Вот ссылка на описание структуры передаваемых данных о заказе: https://code.google.com/p/droidpres/wiki/SetDoc
Уважаемый, помоги пожалуйста! Целый месяц перекраивал свою конфигурацию, переписывал все процедуры в 1с для обмена с КПК и вот сегодня первый тестовый запуск и нифига не пошло :( 1. версия 1С 7.7 sql, база данных в формате SQL 2000 Изменил файл прокси-сервера для 1с по инструкции (прописал путь к своей базе) при попытке сделать обмен данными программа запускается и тут же пропадает, на сервере Питона пишется ошибка "ERROR: V1CEnterprise.Application.GetRefClientGroup" это последний вариант запуска., до этого была ошибка "ERROR: V77S.Application.GetRefClientGroup" строку запуска изменил таким образом def __Connect(): pythoncom.CoInitialize() #@UndefinedVariable con = Dispatch(V7_APPLICATION) con.Initialize(con.RMTrade, '/D%s' % DB_PATH, '')//вот здесь было NO_SPLASH_SHOW
убрал, что бы видеть окно запуска. Окно открывается, выбираю нужного пользователя и тут же закрывается не запустившись. В чем может быть проблема?
процедура GetRefClientGroup в 1с имеется, как положено с ключем Экспорт
Здравствуйте, я не использовал сервер на питоне и не знаю как он работает, я использую свой сервер на .NET. Можете попробовать его, если не заработает- пишите мне на BTRVODKA@gmail.com что-нибудь придумаем.
Спасибо за ответ, но все заработало, я разобрался. как всегда было все банально, просто у пользователя, под которым загружался 1с не было прав к OLE, поэтому то и вылетала программа с ошибкой. Сейчас уже все работает, но я приму к сведению ваш сервер.
Сразу напишу чего не хватает серверу 1. Сворачивания в трей 2. Автоматическая загрузка при старте винды в невидимом режиме и отображение в том же трее 3. Индикация вообще процессов сервера. Запущен, прием данных и т.д
Пока посмотреть можно только в исходном коде. На выходных займусь документацией и опубликую последую версию с обзором новых функций. Пока могу выложить только кусок кода, который описывает структуру прайсов.
public struct ProductsPricesStruct { public int product_id; public int pricelist_id; public double price; }
public struct PriceStruct { public int _Id; public string name; }
"а андроиде доходит до "ERROR: org.xmlrpc.android.XMLRPCFault: ..." после чего выдает сообщение "XMLPRC ошибка данных. Обратитесь к системному администратору." с кнопкой ОК."
та же самая ошибка.... ставил разные версии с разных сайтов - все равно сыпется ошибка... это с питоновской версией сервера...
при использовании exe сервера (пересобранного под х86)
ERROR: org.xmlrpc.android.XMLRPCExeption:org.apache.http.conn.HttpHostConnectException:Connection to http://XXX.XXX.XXX.XXX:8888 refused
Доброго всем времени суток! Интересует, существует ли хоть какое нить описание функционала данной системы? По данному блогу понятно только то что можно отправлять заказы. т.е. интересно есть ли в системе маршруты агентов, можно ли посмотреть долг клиента, как передаются цены клиентов (у нас например у каждого клиента есть скидка+скидка на группы товаров+спец прайс клиентов).
Еще очень интересен момент обмена данными с КПК с сервером, агент отправляет заявку, для того что бы получить остатки он должен дождаться проведения документа в учетной системе, как это реализовано?
Описание оригинальной версии: 1)https://code.google.com/p/droidpres/ 2)http://infostart.ru/public/80472/ 3)http://www.youtube.com/watch?v=z4utZSU1raI
Маршрутов агентов нет и в ближайшее время не предвидится. Дебиторку можно посмотреть, отображается 2 суммы, например можно отобразить просроченный долг и не просроченный, либо суммы по 2-м последним документам. Выгрузку различных прайсов и привязки их к клиентам уже есть в бета версии релиз выйдет приблизительно через 2 недели вместе с сервером. Скидки так-же можно выгружать индивидуально каждому клиенту.
Что касается обновления остатков, на мобильном устройстве отправка и получение данных происходит независимо. То-есть агент может отправить документы не обновляя остатков, все данные агентам выгружаются напрямую из 1с, без использования промежуточных баз. То-есть если у вас по регламенту проведение документов каждый час- то агент может отправить заказы и обновить остатки только после времени проведения документов.
Проведение заказа у нас происходит еще во время набора товаров в заказ, т.е. построчно. Нам как раза нужно что бы во время сеанса обмена ТП отправил заявку и сразу же получил остатки измененные его же заказом. Это возможно?
Как сервер запустить? который ехе.
ОтветитьУдалитьПолностью согласен, инструкции не хватает на сайте.
УдалитьКакие у вас сложности возникли?
Под ХР 32 - Не является приложением win32. Под Server2008 64 говорит, что не установлен .net 4.0, хотя всё установлено вплоть до 4.5.
УдалитьВыложил новую версию сервера "DroidPresModB.Server_V1.0.27.zip", пересобрал под .net 4.0, предыдущая версия требовала 4.5
УдалитьСервер не запускается (((
УдалитьПод ХР 32 - Программа не запускается (5)
Под Server2003 SE R2 - Не является приложением win32
Это из-за того, что собрано приложение для win x64.
УдалитьНа днях попробую пересобрать под x32.
Решил попробовать и...
ОтветитьУдалитьИсходники устарели! :( Их закрыли? Или руки не дошли?
А как это чудо переписать под 1С8х(.Net сервер сразу ищет 1С7.7)?
Тяжело добавить ПАПКИ товаров? если товаров больше 30-40 то не удобно листать.
Выложил последние рабочие исходники, сейчас готовлю глобальное обновление сервера.
УдалитьСейчас сервер замечательно работает с 1с8. Надо указать в настройках подключения версию 1с.
УдалитьЕсть пара пожеланий. Вроде не сложных, но увы я только начал кодить под андроид...
ОтветитьУдалить1) Можно вывести кнопку выбора категории товаров прямо под товарами (рядом с фильтрами)
2) можно определить "зоны" клика на товарах - добавить 1, выбор количества в диалоге кнопками, добавить или установить столько сколько и прошлый раз.
Еще одна жутко раздражающая меня (первый месяц с андроидом) реакция на глобальную кнопку "закрыть" ("<"). Было бы не плохо если бы меня переспрашивали ("Да"-"Нет"). Такое есть в большинстве (провереных мной) игр.
Удалитьмною параллельно ведется еще один форк этого проекта,
Удалитьи если есть желание побыть альфа-бета тестером то welcome
поиск по droidpreselling
примерно в числах 16-17, то есть на выходных, может будет готова база для тестирования,
а пока код постоянно переписывается(в том числе и серверная часть), с учетом тех функций которые добавились в проект
droidpreselling
Удалитьне нашел! :( Можете дать прямую ссылку?
Готов побыть альфа-бетта-тестером!
http://code.google.com/p/droidpreselling/
УдалитьВыглядит круче (на скриншотах), но не нашел там скомпилированый проект - только исходники. И не помешало бы завести хотя-бы примитивный форум для разработки (5-6 веток - пожелания, разработчики, багия, новое в версиях...). Одной ветки/блога явно маловато.
Удалитьпри обмене через Python27 в андроиде выдает ошибку "XMLPRC ошибка данных. Обратитесь к системному администратору."
ОтветитьУдалитьНапишите подробнее, какая ошибка? Я пока только слышал про ошибку "SetLocation".
Удалитьпосле запуска бегут строки в андроиде и в питоне
Удалитьна андроиде доходит до "ERROR: org.xmlrpc.android.XMLRPCFault: ..."
после чего выдает сообщение "XMLPRC ошибка данных. Обратитесь к системному администратору." с кнопкой ОК.
Ошибки в списке (в ...) каждый раз разные. на отправку, на обмен, на 23 и на 27 примерах питоновской выгрузки. 27 после обновления очищает список клиентов-образцов и товаров (возможно по умолчанию база пустая). Еще на 27 требует наличие в исходниках \src\apk\_DroidPres.apk но при подстановке туда 27 релиз или копирования из 25 все равно ошибка! :(
Я хотел поинтересоваться про ошибку:
УдалитьСперва выходит окошко "XMLPRC ошибка данных. Обратитесь к системному администратору." с кнопкой ОК.
Потом в андроиде выходит такое сообщение.
ERROR: XMLRPC Fault: :method "SetLocation" is not supported [code 1]
Во время получения данных оно выходит через раз, а во время отправления документов почти каждый раз. На работу оно не влияет, но как-то неказисто получается :)
Нельзя ли как нибудь заглушку прописать, если сам метод еще не отработан?
Доло в том, что мы не пользуемся GPS навигацией и условно метод "SetLocation" нам не нужен.
За ранее спасибо.
Это проблема в сервере, который написан на Python, сервер писал автор оригинального проекта, я могу только посоветовать использовать мой сервер, там таких проблем нет.
УдалитьМой сервер пока не имеет внятного интерфейса, на выходных опубликую поправленную версию.
Извините, что пока не отвечаю собщения. Сейчас появился срочный, спонсируемый заказ на внедрение карт. То-есть можно будет посмотреть перемещение торговых представителей, точнее места, в которых были набиты заказы.
ОтветитьУдалитькак добавить новые поля в справочники? Например необходимо добавить поле "склад" в справочник торгового представителя. как это сделать в 1с я знаю, как это сделать для андроида - не имею понятия.
ОтветитьУдалитьВ 2-х словах объяснить не получится, для осущетвления вашей задачи надо как минимум сделать 3 вещи:
Удалить1) Изменить структуру БД;
2) Дописать использование этого поля(t-sql и java);
3) Доработать часть обмена с сервером(сам сервер и клиент).
Мне, для нормального внедрения нужно сделать совсем немного. Вся продажа настроена на прес-селинг, предзаказ. В данный момен торговые сами себе набивают заявки в программе 1с. Этот документ комплексного характера, содержит в себе такие поля как "Склад" (для отгрузки), "Экспедитор" (временный склад, условно машина, которая повезет затем этот товар клиенту) и "Агент" (ссылка на справочник Агентов, т.е. фамилия того агента, кто осуществил продажу, нужно для дальнейших отчетов). Конечно в этом документе полно других полей, но все они решаемы с базовой версией.
УдалитьС полем "Экспедитор" я разобрался. У нас в системе Экспедитор привязан к клиенту, таким образом зная клиента находим его экспедитора, это я уже сделал. Осталось решить 2 задачи. 1- куда привязать "Склад" и 2 - где взять ссылку на "Агента". Думаю, агента не сложно будет вписать, постараюсь, но вот со складом заморочка. Хорошо бы привязать его к справочнику "Агентов"
Если можно, поясните еще. Какую БД менять? (если в 1с, это не проблема)
2. Дописать использование этого поля (если добавите например строковое поле в Агента (в самом КПК) и дадите ссылку, я сам внесу изменения в модуль прокси_1с
3. что подразумевается под словом сервер и клиент? сервер - это сервер на питоне, а клиент - это андроид?
Я правильно понял, в 1с каждому агенту соответсвует склад?
УдалитьПри отправке данных, вместе с прочей информацией о заказе, передаётся "agent_id", который был указан в настройках клиента(android приложения). Таким образом, можно в 1с вести сопоставление номера агента и склада. Если я что-то не правильно понял- поправьте.
Вот ссылка на описание структуры передаваемых данных о заказе: https://code.google.com/p/droidpres/wiki/SetDoc
Да, вы все верно поняли. Спасибо. Буду смотреть.
УдалитьВсе нормально, получилось. Теперь буду настраивать в рабочей версии. Еще раз спасибо!
УдалитьУважаемый, помоги пожалуйста! Целый месяц перекраивал свою конфигурацию, переписывал все процедуры в 1с для обмена с КПК и вот сегодня первый тестовый запуск и нифига не пошло :(
Удалить1. версия 1С 7.7 sql, база данных в формате SQL 2000
Изменил файл прокси-сервера для 1с по инструкции (прописал путь к своей базе)
при попытке сделать обмен данными программа запускается и тут же пропадает, на сервере Питона пишется ошибка "ERROR: V1CEnterprise.Application.GetRefClientGroup"
это последний вариант запуска., до этого была ошибка
"ERROR: V77S.Application.GetRefClientGroup"
строку запуска изменил таким образом
def __Connect():
pythoncom.CoInitialize() #@UndefinedVariable
con = Dispatch(V7_APPLICATION)
con.Initialize(con.RMTrade, '/D%s' % DB_PATH, '')//вот здесь было NO_SPLASH_SHOW
убрал, что бы видеть окно запуска.
Окно открывается, выбираю нужного пользователя и тут же закрывается не запустившись.
В чем может быть проблема?
процедура GetRefClientGroup в 1с имеется, как положено с ключем Экспорт
Здравствуйте, я не использовал сервер на питоне и не знаю как он работает, я использую свой сервер на .NET. Можете попробовать его, если не заработает- пишите мне на BTRVODKA@gmail.com что-нибудь придумаем.
УдалитьСпасибо за ответ, но все заработало, я разобрался. как всегда было все банально, просто у пользователя, под которым загружался 1с не было прав к OLE, поэтому то и вылетала программа с ошибкой. Сейчас уже все работает, но я приму к сведению ваш сервер.
УдалитьЭтот комментарий был удален автором.
ОтветитьУдалитьЧто слышно по поводу новой версии сервер для x32? За ранее спасибо
ОтветитьУдалитьЯ был в отпуске 2 недели, в ближайшее время закончу.
УдалитьБуду с нетерпением ждать. Очень перспективный проект по своей сути
УдалитьСразу напишу чего не хватает серверу
ОтветитьУдалить1. Сворачивания в трей
2. Автоматическая загрузка при старте винды в невидимом режиме и отображение в том же трее
3. Индикация вообще процессов сервера. Запущен, прием данных и т.д
И что нового в 28 бете ?
Спасибо за отзыв, приведение интерфейса в человеческий вид- это то, чем я сейчас занимаюсь.
УдалитьВ 28 бете добавлены разные прайсы, то-есть есть возможность разным клиентам продавать по разным ценам.
УдалитьПопробовал новый релиз. на счет прайсов, интересно опиcание процедуры GetPrise....
УдалитьГде можно посмотреть?
Пока посмотреть можно только в исходном коде. На выходных займусь документацией и опубликую последую версию с обзором новых функций. Пока могу выложить только кусок кода, который описывает структуру прайсов.
Удалитьpublic struct ProductsPricesStruct
{
public int product_id;
public int pricelist_id;
public double price;
}
public struct PriceStruct
{
public int _Id;
public string name;
}
Спасибо за ответ, но я подожду инструкцию :)
УдалитьДля меня этот код пока что темный лес :)
"а андроиде доходит до "ERROR: org.xmlrpc.android.XMLRPCFault: ..."
ОтветитьУдалитьпосле чего выдает сообщение "XMLPRC ошибка данных. Обратитесь к системному администратору." с кнопкой ОК."
та же самая ошибка.... ставил разные версии с разных сайтов - все равно сыпется ошибка... это с питоновской версией сервера...
при использовании exe сервера (пересобранного под х86)
ERROR: org.xmlrpc.android.XMLRPCExeption:org.apache.http.conn.HttpHostConnectException:Connection to http://XXX.XXX.XXX.XXX:8888 refused
Предлагаю пообщаться по почте, в идеале скиньте свою конфигурацию с минимально заполненными данными.
УдалитьДоброго всем времени суток!
ОтветитьУдалитьИнтересует, существует ли хоть какое нить описание функционала данной системы?
По данному блогу понятно только то что можно отправлять заказы.
т.е. интересно есть ли в системе маршруты агентов, можно ли посмотреть долг клиента, как передаются цены клиентов (у нас например у каждого клиента есть скидка+скидка на группы товаров+спец прайс клиентов).
Еще очень интересен момент обмена данными с КПК с сервером, агент отправляет заявку, для того что бы получить остатки он должен дождаться проведения документа в учетной системе, как это реализовано?
Описание оригинальной версии:
Удалить1)https://code.google.com/p/droidpres/
2)http://infostart.ru/public/80472/
3)http://www.youtube.com/watch?v=z4utZSU1raI
Маршрутов агентов нет и в ближайшее время не предвидится.
Дебиторку можно посмотреть, отображается 2 суммы, например можно отобразить просроченный долг и не просроченный, либо суммы по 2-м последним документам.
Выгрузку различных прайсов и привязки их к клиентам уже есть в бета версии релиз выйдет приблизительно через 2 недели вместе с сервером.
Скидки так-же можно выгружать индивидуально каждому клиенту.
Что касается обновления остатков, на мобильном устройстве отправка и получение данных происходит независимо. То-есть агент может отправить документы не обновляя остатков, все данные агентам выгружаются напрямую из 1с, без использования промежуточных баз.
То-есть если у вас по регламенту проведение документов каждый час- то агент может отправить заказы и обновить остатки только после времени проведения документов.
Проведение заказа у нас происходит еще во время набора товаров в заказ, т.е. построчно.
УдалитьНам как раза нужно что бы во время сеанса обмена ТП отправил заявку и сразу же получил остатки измененные его же заказом.
Это возможно?
И еще вопрос, на чем написаны последние версии мобильной части? и сервера обмена?
УдалитьВ релизе я добавлю кнопку "Отправить+получить", остальное завит от того, что будет написано на стороне 1с.
УдалитьКлиент написан на Java, сервер на C#.
Еще вопрос клиент написан на Java, а в какой среде?
ОтветитьУдалить