Программист 1с
twitter email rss
  • Home
  • Полезности
    • Мобильное приложение курьера
    • MailChimp + УТ 11.
    • 1с-sms
    • Pharma-MPD
    • Зуботехническая лаборатория
  • Блог
  • Партнеры
  • Команда
    • Услуги
    • Опыт
    • Отзывы
    • Контакты
  • Поддержка
    • Инструкция
    • Redmine






Работаем с Opendatabot из 1с

on 04.04.2017in 1Сtags: 1с, API, Opendatabotwith No Comments

Сервис Opendatabot для мониторинга регистрационных данных компаний. Сервис предоставляет возможность работать сторонним приложениям работать через API 

Предоставляем вашему вниманию обработку, которая по ЕДРПОУ или  ИНН производит поиск регистрационных данных. В результате обработка получает следующие данные: 

  • Имя владельца 
  • Полное наименование 
  • Вид деятельности 
  • Адрес 

Обращаем ваше внимание на правила получения API ключа: 

Для получения ключа доступа к API, необходимо отправить email на адрес mail@opendatabot.com, где просьба указать название продукта и адрес его сайта, после чего мы отправим вам сгенерированный ключ. Для использования API достаточно разместить ссылку на https://opendatabot.ua/ в разделе Партнеры вашего проекта.

Скачать обработку можно тут: 

  Opendatabot.epf (9,5 KiB, 1 245 скачиваний)

Сокращаем ссылки в 1с

on 28.03.2017in 1Сtags: 1с, Короткие ссылкиwith No Comments

В рамках реализации задачи попробовали работать с сервисом сокращения ссылок Clck.ru и освежить в памяти используемые ранее методы прошлой публикации.

В данном посте вы можете скачать обработку, которая позволяет получить короткий интернет адрес с использованием api сервисов goo.gl, bit.ly и clck.ru

Bit.ly
Для работы с сервисом необходимо знать логин пользователя сервиса и его API ключ. Данную информацию можно узнать на странице http://bit.ly/a/your_api_key.

Goo.gl
C API сервиса goo.gl можно ознакомиться тут. Для работы с сервисом нужно знать API ключ. Ключ можно сгенерировать по ссылке в описании, кнопка «GET A KEY»:

Clck.ru
У этого сервиса есть REST-образный интерфейс, позволяющий автоматизировать работу с ним. Для работы с сервисом не нужно проходить регистрации или получать API ключ. Описания сервиса можно посмотреть тут. Короткая ссылка приходит в виде текста.
Скачать обработку можно тут:

  ShortLink.epf (7,8 KiB, 614 скачиваний)

Загрузка данных из Google spreadsheet в 1с

on 20.03.2017in 1Сtags: 1с, Googlewith 3 комментария

В рамках решения задачи по интеграции 1с со сторонней системой нам надо было добавить возможность считывания данных в 1с из excell и Google spreadsheet.
Так как требовалось реализовать оба варианта начали смотреть на возможность сохранения Google-таблицы во временный файл. Получилось пойти по следующему варианты решения:
скачиваем Goolge-таблицу в excell файл;
считываем данные из файла.

Получение данных Google-таблицы в файл:


Функция ПолучитьВременныйФайлИзГуглТаблицы(Знач УРЛФайла) Экспорт
	RegExp = Новый COMОбъект("VBScript.RegExp");  
	УРЛФайла = Прайскоп_ОбщегоНазначенияСервер.РегулярныеВыражения_Заменить(RegExp,УРЛФайла,"\/edit.*?$", "");
	ИДФайла = СтрЗаменить(УРЛФайла,"https://docs.google.com/spreadsheets/d/","");

	Соединение = Новый HTTPСоединение("docs.google.com", , , , , Истина);
	ФайлИд = ПолучитьИмяВременногоФайла("txt");
	Соединение.Получить("/feeds/download/spreadsheets/Export?key=" + ИДФайла +"&exportFormat=xlsx&gid=0", ФайлИД);	
	ФайлОтвета = Новый ТекстовыйДокумент;
	ФайлОтвета.Прочитать(ФайлИд, "utf-8");
	Текст = ФайлОтвета.ПолучитьТекст();
	Символ = Найти(Текст,"A HREF="); 
	
	ИтоговыйФайл = ПолучитьИмяВременногоФайла("xlsx");
	
	Если Символ <> 0 Тогда
		Остаток = Прав(Текст,Символ-1);
		Символ2 = Найти(Остаток,""">"); 
		
		УРЛ = Лев(Остаток,Символ2-1);
		УРЛ =СтрЗаменить(УРЛ,"https://docs.google.com","");
		УРЛ = СтрЗаменить(УРЛ,"&","&");
		Соединение = Новый HTTPСоединение("docs.google.com", , , , , Истина);
		Соединение.Получить(УРЛ, ИтоговыйФайл);
		Возврат ИтоговыйФайл;
	Иначе
		Возврат Неопределено;
	КонецЕсли;
КонецФункции // ()

Считывание данных из файла:
После выполнения данной функции у вас есть имя файла xlsx, который вы можете прочитать для его последующего разбора данных.
Напомню что прочитать excell файл можно и без установки excell на сервере:


	ТабличныйДокумент = Новый ТабличныйДокумент;
	ТабличныйДокумент.Прочитать(ИмяВременногоФайла, СпособЧтенияЗначенийТабличногоДокумента.Значение);	

Формирование скриншотов сайтов в 1с

on 30.08.2016in 1Сtags: 1с, APIwith No Comments

В данном посте предлагается вашему вниманию набор функций для создания скриншотов сайтов с использованием 1с.

Данный функционал может быть интересен в случае когда к документу реализации надо прикрепить скриншот текущего состояния отправки. Для формирования скриншотов используются сервисы:

  • mini.s-shot.ru
  • images.shrinktheweb.com
  • thumbalizr.com

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

Скриншот новой почты
Скриншот нашего блога
Скриншот сайта партнёра
Настройки

 

 

Ссылка для скачивания: 

  ScreenSite.epf (9,0 KiB, 722 скачиваний)

Удаление старой номенклатуры

on 25.08.2016in 1Сtags: 1сwith No Comments

Full_TrashУ интернет-магазинов время от времени может возникать большое количество номенклатуры в базе. Это может происходить из-за полного втягивания прайса поставщиков. Не факт что по всем этим товарам нужна информация и была какая-то активность. Представляем вашему вниманию обработку, которая пометит на удаление номенклатуру, по которой не было движения по регистрам накопления «Продажи» и «Товары на складах».

Вместе с пометкой на удаление самой номенклатуры происходит удаление связанных записей из:

  • Регистров сведений.
  • Регистров накоплений.
  • Пометка на удаление связанных элементов справочников.
  • Удаление записей из таблиц документов.

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

Внимание! Сначала все действия производите на копии базы. Потом только приступайте к работе над рабочими данными.

Обработка запускается на конфигурации «Управление торговлей». Ссылка на скачивание: 

  DelPosition.epf (8,3 KiB, 708 скачиваний)

DelPos

Бот telegram и 1с

on 19.08.2016in 1Сtags: 1с, API, telegramwith No Comments

telegram_logoРазработали тестовый вариант решения задачи получения отчетов 1с без входа в систему. В качестве источника запросов на вывод данных служит бот телеграмма. В примере происходит вывод отчета «Воронка продаж» за выбранный пользователем период. Отчет пользователь скачивает в виде pdf-файла.

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

Краткая видео-демонстрация:

Возможное использование функционала:

  • Уведомление администраторов системы
  • Уведомление клиента интернет-магазина
  • Получение актуальных отчетов руководством без входа в 1с

Если данный функционал вас заинтересовал и вы видите возможность его применения в своём бизнесе — свяжитесь с нами: e-mail: office@danila.org.ua

Mysql. С какого компьютера пришёл запрос ?

on 01.06.2016in Работаtags: mysqlwith 1 Comment

techtalk-mysql1с пишет задания, которые должны выполняться другой программой. Задание представляет из себя запись в таблице базы mysql. Для распараллеливания работы поднимается некоторое количество виртуальных машин. Каждая машина должна забрать свои задания из базы MySQL. Отмечу что база MySQL одна общая и сторонняя программа делает запрос к этой базе.

В качестве решения в таблицу заданий добавлена колонка с именем хоста, значение этой колонки указывает какой машине надо отдать задание. Используем information_schema.processlist в запросе для определения имени хоста, от которого пришёл запрос. Таким образом мы понимаем от какой машины пришёл запрос и можем отдать ей её задания.

Текст запроса:

SELECT * FROM task WHERE host in(select SUBSTRING_INDEX(host,’:’,1) from information_schema.processlist WHERE ID=connection_id())

Подключение сервиса PriceCop

on 25.05.2016in 1Сtags: 1с, API, PriceCopwith No Comments

pc_logoВ рамках улучшения работы по ценообразованию одного из клиентов познакомился с сервисом мониторинга цен — PriceCop. Данный сервис даёт возможность регулярно собирать данные по ценами и наличию товаров интернет-магазинов. Так как цены конкурентов являются одним из решающих факторов, влияющих на принятие решение о покупке в интернет-магазине, цель автоматизации была:

  • получать собранные данные по конкурентам;
  • отображать всё в удобном для сравнения интерфейсе;
  • устанавливать цену номенклатуры интернет-магазина.

После анализа, было принято решение получать данные от сервиса PriceCop через API (http://pricecop.net/api.html).

Приведу часть функционала, который удалось выделить в отдельную внешнюю обработку для конфигурации Управление торговлей для Украины 3.0. Данная обработка позволяет строить таблицу цен по своим товарам вместе с ценами магазинов-конкурентов. Для принятия решения мы предоставляем пользователю информацию про минимальную  среднюю цену, количество магазинов которые участвовали в анализе.

Также есть возможность отбора товара, учитывая его наличие.

1c_pc_main

На стороне сервиса PriceCop мы используем метод AllPrices, который позволяет получить весь список цен по товарным позициям из подписки клиента. Во время обращения надо передать API-ключ клиента

С технической точки зрения в данной обработке все стандартно: получаем WSПрокси, вызываем метод и обрабатываем полученный ОбъектXDTO.

Также используется программное создание кросс-таблицы, так как мы не знаем какой количество магазинов будет у нас в результате (подробнее описывал это тут http://danila.org.ua/kross-tablitsa-1s-8-2-upravlyaemaya-forma/).  

Чтобы пользователю было удобно ориентироваться в большом количестве магазинов сделали форму отображения записи таблицы цен:

1c_pc_datail

После внесения изменения по ценам пользователь может зарегистрировать свои цены в базе.

1c_pc_price

Скачать данную обработку можно тут: 

  pc_ut30_demo.epf (16,1 KiB, 646 скачиваний)

Мобильное приложение курьера

on 29.02.2016in 1Сtags: 1с, Мобильное приложениеwith No Comments

icon-144x144Мы решили поделиться своими результатами работы в области разработки приложений для мобильной платформы 1с. В результате получилось отдельное приложение, которое включает в себя следующий функционал:

  • Загрузить из файла формата xml данные про точки, которые надо выполнить;
  • Просмотреть список заказов;
  • Просмотреть карту заказов;
  • Найти ближайший заказ относительно текущего месторасположения android-устройства;
  • Написать sms, email или совершить звонок из карточки заказа
  • Запустить Яндекс-навигатор для формирования маршрута к выбранному заказу.

Приложение может быть интересно для мобильных сотрудников, работа которых заключается в посещении клиентов по заданному маршруту. Приложение позволяет получать перечень точек из xml-файла. Ваша учётная система может формировать такие файлы и отправлять на почту сотрудникам. После получения файла сотрудник имеет возможность  загрузить данные в программу. Структура xml-файла должна быть следующей:

xml

 

Загрузить apk-файлы для установки приложения можно тут (выбираете в зависимости от архитектуры процессора):

  ua.danila.me-arm.apk (25,7 MiB, 880 скачиваний)

  ua.danila.me-x86.apk (29,8 MiB, 696 скачиваний)

Демонстрационные данные про заказы:

  data_me.xml (1,2 KiB, 1 031 скачиваний)

1. Screenshot_install
2. Screenshot_install
3. Screenshot_load_data
4. Screenshot_order_list
5. Screenshot_order_form
6. Screenshot_map
7. Screenshot_find_nearest
8. Screenshot_settings

Открываем из мобильного приложения окно оплаты в ibox

on 03.02.2016in 1Сtags: 1с, Интеграция, Мобильное приложениеwith No Comments

ibox_logoКурьерские службы предоставляют возможность оплатить стоимость заказа с карты. В рамках нашего проекта Клиентом была выбрана система ibox. Чтобы исключить человеческий фактор окно оплаты ibox должно открываться из мобильного приложения курьера. Во время открытия окна оплаты должна передаваться информация про сумму оплаты и назначение платежа. Проанализировав Intents приложения iboxPro пришли к следующему решению:


&НаКлиенте
Процедура ОткрытьОкноОплаты(Команда)
	#Если МобильноеПриложениеКлиент Тогда
		НовВз = Новый ЗапускПриложенияМобильногоУстройства();
		НовВз.Действие="ru.ibox.pro.acceptpayment";
		НовВз.ДополнительныеДанные.Добавить("Amount",СуммаЗаказа);
		НовВз.ДополнительныеДанные.Добавить("Description","За заказ: " + НомерЗаказа);
		НовВз.Запустить(Ложь);
	#КонецЕсли
КонецПроцедуры

ibox_payment

 

Page 1 of 2312345»1020...Last »

Новости

  • Работаем с Opendatabot из 1с
  • Сокращаем ссылки в 1с
  • Загрузка данных из Google spreadsheet в 1с
  • Формирование скриншотов сайтов в 1с
  • Удаление старой номенклатуры

Подписка

Copyright © 2022 danila.org.ua
Умные решения для вашего бизнеса