for flooders
:: Главная :: Решения :: Статьи :: Сайт М. Дроздова :: Файловый архив :: Книга по VFP 9 :: Русский Help Online :: OFF-LINE Форум
   Л и с о в о д ы   в с е х   с т р а н,  о б ъ е д и н я й т е с ь !!!  

Список Форумов  :: Вопросы по 1С
   :: Помощь сайту :: 

Скрестить зоопарк
Аспид
Автор

Сообщений: 3036
Откуда: Москва
Дата: 24.09.17 12:37:29ОтветитьЦитировать
Опишу процесс.
Есть заказы из инет магазина от незарегиных пользователей.
Данные попадают в ненормализованнуя таблицу WebOrders.

Манагер связывется с заказчиком, и коли тот и правда покупает, заносит его в 1С.
После этого этот заказ, должен появиться в нашей системе, уже в нормализованном виде.

При занесении контрагента в 1С он автоматом попадает в нашу БД (нашей системы).

Как сделано на скорую руку.
В системе на фоксе, выбираем необработанные заказы (из WebOrders)
Далее ищется к нему заказчик, и адрес.
Все передается в нормализованную таблицу
Вот картинка
[attachment 28353 ]

Все работает, но крайне неудобно для манагера.
Он заходит в наше ПО, если нет контрагента (а как правило нет, старые сразу заносят в другом месте) то заходит в 1С, заносит контрагента, продолжает в нашей.
Выбирает (заносит) адрес с км. после этого переносится в нормальный вид.

Думал, как все описать в одном месте, определяющим явилось внесение контрагента
Решил все то же сделать в 1С. УФ.
Бухгалтерия предприятия, редакция 3.0 (3.0.50.19)

В силу убогости знаний в 1С замучился эксперементировать.
WebOrders показываю через внешние источники данных.
Там сразу форма, и все быстро делается.
Добавил на форму контрагентов, и все показывает.
Сохраняю все, через ADO. Мне так легче. Через ХП.

Проблема возникла с адресами.
В 1С они не нужны, их там нет.
В нашей БД адреса привязаны к контрагенту (У каждого свои)
Попробовал через внешние источники данных, что то не смог скрестить.
Сделал обработку "Адреса" все ок, но...
Пробую сделать справочник Адрес. Перед заполнением очищаю, потом из выборки наполняю.
(Очевидно, при многопользователькой работе - абзац!, но таких вариантов не видится. 1 манагер этим занимается)

В общем, не ясно, как правильно структуру всего этого выстроить.
И веб сервисы в голове (с 1С не знаю как скрестить).
Посоветуйте что то вразумительное.

Многословно получилось. Короче не выходит)


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




Исправлено: Аспид, 24.09.17 12:39
Ratings: 0 negative/0 positive


Вложения:
[Безымянный.png (10.1KB)]  

Re: Скрестить зоопарк
pasha_usue

Сообщений: 2880
Откуда: Е-бург
Дата: 25.09.17 11:56:45ОтветитьЦитировать
Очень сумбурно. Я внешними подключениями не пользуюсь. Я всегда через ADO дёргаю в таблицу значений. А потом заливаю в реквизит формы таблица значений. Фильтры неудобно, вручную придётся делать.

Дальше. Оператор создал контрагента, его можно сразу же отправить в другую базу (дёрнуть ваш метод, который за это отвечает), соответственно, будет идентификатор. Ну, а адрес в ADO-шном соединении можно уже инсертить с указанием идентификатора контрагента. Или я ничего не понял.
Ratings: 0 negative/0 positive

Re: Скрестить зоопарк
Аспид
Автор

Сообщений: 3036
Откуда: Москва
Дата: 25.09.17 12:53:03ОтветитьЦитировать
Собственно все работает.
Но впечатление, что через зад сделано)
Для простоты
есть внешняя таблица с полями АдресИД, КустомКод, ОрдерИД
Надо эти поля собрать в 1с. КустомКод - это код контрагента.
ОрдерИД id записи внешней таблицы WebOrders. Она является оснвоной, выбирая запись из которой (ОрдерИД)
Открывается форма Объекта. (Аналог фоксовой, что на картинке)
На ней есть выбор котрагента. И выбор адреса.
До выбора адреса, все складно.
А с адресом беда. Справочник адресов формирую на лету.
Т.е. удаляю старое, и прописываю новое, нужное.

pasha_usue
Я внешними подключениями не пользуюсь.
Удобно немного. Подключился, сразу объект получил, с формой списка.

pasha_usue
Оператор создал контрагента, его можно сразу же отправить в другую базу
Так и есть.

Вопрос наверное в следующем.
Есть внешние таблицы.
WebOrders - получить данные, нет проблем, хоть через АДО.
А какой объект создавать в 1С? Если обработку, то в ней в таблицу значений заносить данные.
А потом по выбранной строке, сделать форму редактирования, где и подтащить контрагента и адрес?


------------------
Ratings: 0 negative/0 positive

Re: Скрестить зоопарк
pasha_usue

Сообщений: 2880
Откуда: Е-бург
Дата: 25.09.17 13:03:49ОтветитьЦитировать
Аспид
А с адресом беда. Справочник адресов формирую на лету.
Т.е. удаляю старое, и прописываю новое, нужное.
О нет. Нельзя так издеваться над больными людьми. Почему бы не сделать запрос и заполнить список значений? И из поля типа "список значений" уже выбирать.

Аспид
Вопрос наверное в следующем.
Есть внешние таблицы.
WebOrders - получить данные, нет проблем, хоть через АДО.
А какой объект создавать в 1С? Если обработку, то в ней в таблицу значений заносить данные.
А потом по выбранной строке, сделать форму редактирования, где и подтащить контрагента и адрес?
Визуальный объект - обработка. В ней список. Плюс форма для редактирования с контрагентом и адресом. Можно сделать переключающиеся невидимые страницы, и не заморачиваться с передачей контекста между формами. Самое простое решение.
Ratings: 0 negative/0 positive

Re: Скрестить зоопарк
Аспид
Автор

Сообщений: 3036
Откуда: Москва
Дата: 25.09.17 20:32:41ОтветитьЦитировать
Вот как я понял.
Делаю обработку. В данных 2 таблицы значений (Заказы и адреса) И справочник контрагентов.
Делаю форму со списком заказов, на котором выбираю нужную запись.
После этого варианты. В этой же обработке открываю другую форму, где показываю эту запись, + выбор контрагента и адреса.
Так?


------------------
Ratings: 0 negative/0 positive

Re: Скрестить зоопарк
Аспид
Автор

Сообщений: 3036
Откуда: Москва
Дата: 25.09.17 20:52:10ОтветитьЦитировать
pasha_usue
Можно сделать переключающиеся невидимые страницы, и не заморачиваться с передачей контекста между формами. Самое простое решение.
Все понял. Накидал, и правда, все просто)


------------------
Ratings: 0 negative/0 positive

Re: Скрестить зоопарк
pasha_usue

Сообщений: 2880
Откуда: Е-бург
Дата: 25.09.17 21:24:02ОтветитьЦитировать
Аспид
В данных 2 таблицы значений (Заказы и адреса)
Ну, если в адресах действительно необходимы поля кроме Id и Name, то тогда таблица значений. В противном случае, хватит списка значений.
Ratings: 0 negative/0 positive

Re: Скрестить зоопарк
Аспид
Автор

Сообщений: 3036
Откуда: Москва
Дата: 26.09.17 07:55:08ОтветитьЦитировать
pasha_usue
Ну, если в адресах действительно необходимы поля кроме Id и Name
Да. Еще расстояние. Именно оно формирует цену доставки.
Все теперь складненько выходит)


------------------
Ratings: 0 negative/0 positive



Извините, только зарегистрированные пользователи могут писать в этом форуме.

On-line: 44 and Guests: 44


© 2000-2018 Fox Club 
Яндекс.Метрика