Имя: Пароль:
1C
1С v8
Не могу соединиться с сервером из 1с
0 Zombi
 
17.08.12
10:25
Пытаюсь отправить из 1с данные в программку, накладывающую текст на видео, не знаю как подключиться к ней из 1с. Пишу:

HTTPxml =  Новый COMОбъект("MSXML2.ServerXMLHTTP");
HTTPxml.setTimeouts(600000,600000,600000,600000);
HTTPxml.Open("POST", "192.168.1.11:2555");

Пишет:

{Форма.Форма.Форма(33)}: Ошибка при вызове метода контекста (open)
   HTTPxml.Open("POST", "192.168.1.11:2555");
по причине:
Произошла исключительная ситуация (msxml3.dll): URL-адрес не использует поддерживаемый протокол

Хотя телнетом на этот ИП  и порт подключается. Прошу помощи, так как сам не очень разбираюсь во всяких сторонних компонентах.
1 Zombi
 
17.08.12
12:01
ап
2 mardrake
 
17.08.12
12:03
Может стоит на клиенте поставить msxml?
3 Zombi
 
17.08.12
12:05
(2) Я думал если объект создался, значит проблема не с установкой. Попробую переустановить.
4 Zombi
 
17.08.12
12:41
Установка msxml и на клиенте и на сервере не помогла, какие еще варианты?
5 andrewks
 
17.08.12
12:43
а ты уверен, что этот порт использует именно протокол http?
6 Zombi
 
17.08.12
12:52
(5) Вот что в его документации написано:

Формат DSSL XML для ActivePOS
Формат позволяет присылать события в ActivePOS от имени кассового терминала. Сообщения в этом формате можно присылать как по TCP так и UDP.

Описание протокола. Как видно из названия протокола, данный протокол основан на XML. Каждое событие, произошедшее на кассовом терминале, представляется в виде блока-транзакции:


<?xml version="1.0" encoding="cp1251"?>
<transaction>
 <event_type>pos_position_add</event_type>
 <operation_id>E44D0F4A-9822-11E0-36A3-0050FB005F0A</operation_id>
 <cashier>Пупкин Василий Федорович</cashier>

 <date>06/16/2011</date>
 <time>18:14:05</time>

 <position>5</position>
 <weight>1.064</weight>
 <quantity>1</quantity>
 <code>1149990037</code>
 <name>Корм "Престиж"</name>
 <price>185.4</price>
</transaction>

Протокол использует следующие поля:

event_type - тип события.
Имеется строго ограниченный список значений, которые могут содержаться в данном поле:

pos_work_session_start - начало сессии
pos_work_session_end - завершение сессии
pos_cashier_registration - регистрация кассира
pos_exit_from_the_system - выход кассира из системы
pos_moneybox_open - открытие денежного ящика
pos_new_receipt_sell - новый чек "продажа", событие должно содержать имя кассира
pos_new_receipt_return - новый чек "возврат", событие должно содержать имя кассира
pos_new_receipt_cancel - новый чек "отмена продажи", событие должно содержать имя кассира
pos_new_receipt_exchange - новый чек "замена", событие должно содержать имя кассира
pos_new_receipt_inclusion - новый чек "внесение денежных средств", событие должно содержать имя кассира
pos_receipt_number - номер чека
pos_position_add - добавление позиции
pos_position_change - изменение позиции
pos_position_cancel - отмена позиции
pos_position_cost_increase - увеличение стоимости позиции
pos_position_cost_decrease - уменьшение стоимости позиции
pos_position_amount_increase увеличение количества товара
pos_position_amount_decrease - уменьшение количества товара
pos_applying_discount_for_position - применение скидки к товару
pos_cancel_discount_for_position - отмена скидки на товар
pos_applying_discount_for_receipt - применение скидки к чеку
pos_preliminary_result - предварительная суммарная стоимость
pos_final_result - финальная стоимость по чеку
pos_credit_card_payment - оплата кредитной картой
pos_cash_payment - оплата наличными
pos_cash_change - сдача
pos_receipt_cancel - отмена чека
pos_receipt_delay - отложенный чек
pos_receipt_restore - восстановление чека
pos_receipt_close - закрытие чека
pos_x_report - X-отчет
pos_z_report - Z-отчет
pos_operation_error - ошибка
pos_fraud - мошенничество
pos_comment - комментарий
pos_new_receipt_weighing - взвешивание
pos_new_receipt_cashcounting - подсчет наличных
operation_id - уникальный идентификатор операции (порядковый номер чека передается отдельным событием после открытия чека)
date - дата совершения операции (MM/dd/yyyy)
time - время совершения операции (hh:mm:ss)
position - позиция
code - артикул продукта, штрих-код
quantity - количество
weight - вес
name - наименование товара
price - цена
Часто используемый вариант - скрипт отсылающий сообщения на 127.0.0.1 по UDP. Порт должен соответствовать терминалу, созданному в диалоге настройки ActivePOS.

t = "<?xml version= ... <transaction> ... </transaction>"
import socket
try:
   s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
   s.connect(("127.0.0.1", port))
   s.send(t)
   s.close()
except socket.error, msg:
   error("can't forward to port %i: %s" % (port, msg))
   s.close()
7 Zombi
 
17.08.12
13:21
ап
8 andrewks
 
17.08.12
13:22
9 Zombi
 
17.08.12
13:27
(8) Спасибо, буду пробовать.
10 Zombi
 
17.08.12
14:32
Добавляю на форму элемент активХ, но в свойствах не вижу никаких событий и свойств, связанных с этим объектом. Почему так?
11 Zombi
 
17.08.12
14:49
ап..
12 Zombi
 
17.08.12
15:14
ап.
Программист всегда исправляет последнюю ошибку.