OData
Технические вопросы
7.x

При записи бинарных данных POST запросом выдается ошибка

Cannot convert a primitive value to the expected type 'Edm.Stream'. See the inner exception for more details.

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

version="1.0" encoding="UTF-8"?>
xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns="http://www.w3.org/2005/Atom">
                type="application/xml">
                               >
                                               >111>

                                                m:type="Edm.Stream">/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAIBAQIBAQICAgICAgICAwUDAwMDAwYE
BAMFBwYHBwcGBwcICQsJCAgKCAcHCg0KCgsMDAwMBwkODw0MDgsMDAz/2wBDAQIC
AgMDAwYDAwYMCAcIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM
DAwMDAwMDAwMDAwMDAz/wAARCAABAAIDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEA
AAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh
MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6
Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZ
mqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx
8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA
AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV
YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hp
anN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPE
xcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD9
/KKKKAP/2Q==>
                                               >image/jpeg>
                               >
                >
>

Нравится

3 комментария

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

Здравствуйте, Александр.

Приведите, пожалуйста код, которым постите картинку.

Показать все комментарии
деталь история
Технические вопросы
Разработка

Добрый вечер. На рисунке, на месте красной линии хотелось бы видеть оформленные заявки дополнительно. как это можно реализовать? спасибо!

Нравится

4 комментария

Добрый. А что такое оформление заявки? Документ? Вроде как на истории документы отображаются.

Дмитрий, документы отображаются. хотелось бы видеть там и заявку. Пример Рис.1. мы видим историю Контрагента без заявок, затем переходим к продажам Контрагента Рис.2., открываем вкладку заявки, заявки имеются. В итоге в Истории их нет.как их туда подтянуть?

Здравствуйте, Татьяна!

Прикрепляю инструкцию по добавлению «Конфигурационной единицы» на деталь «История» менеджера деталей раздела «Контрагенты». Выполнив действия по аналогии Вы сможете реализовать добавление информации о заявке на деталь «История». Перед внесением изменений в конфигурацию настоятельно рекомендуем создать резервную копию базы данных.

Спасибо за инструкцию. будем пробовать.

Показать все комментарии
Технические вопросы
7.x

Добрый день,
Есть основная конфигурация и разработчика. Разработчик написал код. Сделал пакет по своей конфигурации.
Перенес пакет в основную конфигурацию.
Пытаюсь изменить код в основной конфигурации перенесенного пакета, выдается:

Элемент ".." создан сторонним издателем или установлен из репозитория. Сохранение изменений для данного элемента будет невозможно. Продолжить?

Есть какой то способ разлочить это?
Или же какой подход предлагается: менять все в конфигурации разработчика и потом переносить пакетом в основную?

Нравится

2 комментария

Здравствуйте!
Предполагается, что пакет - это завершенный функционал и редактирвоать его нельзя. Но всегда можно переопределить схему из базового(залоченного) пакета, добавив/отредактировав функционал. При этом, если что-то пойдет не так, всегда можно удалить замещенные схемы - и функционал из пакета не подстрадает.

Дубль

Показать все комментарии
Технические вопросы
5.x

Как можно настроит следующие права доступа?
У нас есть раздел активности. Туда добавляются привязанные активности из разделов инцидент и проблема.
Нужно что бы,
1. Все сотрудники компании могли видеть и работать (читать, добавит, изменит и удалит) активности привязанных к разделу инцидент.
2. Автор запроса проблема (Проблема. Контакт) мог увидеть на разделе активности все активности привязанных к разделу инцидент + лишь только те привязанные к проблеме активности, где он сам является автором.
Заранее большое спасибо.

Нравится

3 комментария

Добрый день!

Данным образом невозможно настроить права доступа, так как права доступа настраиваются на таблицу "Активности" в целом, вне зависимости, находится эта активность в инциденте, или нет.

Я же слышала что с помощью скрипта можно

Гюнель, по поводу второго пункта- я не понял что вы хотите сделать: чтобы сотрудник А видел все активности, у которых заполнено поле "инцидент", но в то же время только те, для которых он является автором?
Если да, тогда как это сочитается с первым пунктом (все сотрудники имеют полные права на все активности, у которых заполнено поле инцидент)?

Показать все комментарии
перенос рабочие места
Технические вопросы
5.x

Добрый день. Как можно перенести настройки рабочих мест с сервера разработки, на продакшн?

Нравится

5 комментариев

Скажите, базы рядом лежат или на разных серверах?

на разных серверах. Доступ есть к обоим.

Можно создать linked server и попереносить профили:

EXEC sp_addlinkedserver
@server=N'myLinkedServer',
@srvproduct=N'',
@provider=N'SQLNCLI',
@datasrc=N'tsworkdb\mssql2012'; -- указать "путь" к присоединяемому серверу

insert into BPMonlineNew.dbo.SysProfileData (Id, ObjectId, [Key], ObjectData, ContactId) --BPMonlineNew - название базы данных в которую переносятся профили
select Id, ObjectId, [Key], ObjectData, ContactId from myLinkedServer.[BPMonlineOld].dbo.SysProfileData --BPMonlineOld - название базы данных из которой переносятся профили

А как же все остальные таблицы? SysModule и т.д..
При переносе профиля затрутся все настройки пользователей которые были сделаны до этого.

Прошу прощения, подумал, что надо перенести профиль. Принцип такой же, только переносить надо SysModuleInSysModuleFolder. Убедитесь, что в базе на которую переносите, данная таблица почищена. Колонки id, syssolutionid, sysmoduleid, sysmodulefolderid, position.

Показать все комментарии
ActiveXObject
7.3
Технические вопросы
7.x

Здравствуйте!

Есть необходимость создать ActiveXObject.
Пробую создать следующим кодом

            try {
                xmlhttp = new ActiveXObject("MSXML2.ServerXMLHTTP.6.0");
                xmlhttp.setOption(2, 13056); //SXH_OPTION_IGNORE_SERVER_SSL_CERT_ERROR_FLAGS
            } catch (e) {
                try {
                    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP.5.0");
                    xmlhttp.setOption(2, 13056); //SXH_OPTION_IGNORE_SERVER_SSL_CERT_ERROR_FLAGS
                } catch (E) {
                    xmlhttp = false;
                }

Объект не создается. В Чем может быть проблема?

Нравится

8 комментариев

Какая ошибка то? Невозможно создание объекта сервером программирования объектов? Значит COM не зарегистрирован в системе.
Переменная не определена? Напишите var xmlhttp = new ActiveXObject("MSXML2.ServerXMLHTTP.6.0");

А, и если вы это делаете из браузера - то по умолчанию насколько я помню браузер запрещает создавать ActiveX объекты. Необходимо отдельно включать такую опцию.

код ошибки

Uncaught ReferenceError: ActiveXObject is not defined SOAPClient.js:183
user: Supervisor/7f3b869f-34f3-4f20-ab4d-7480a5fdf647
 file: http://softex-iis:8896/0/configuration/c1a08ef0172dd11fc04cad296e761a3e/SOAPClient.js
 line: 183
 message: Uncaught ReferenceError: ActiveXObject is not defined 
 date: Fri Sep 19 2014 15:25:30 GMT+0400 (Московское время (зима)) 

new ActiveXObject работает только в IE и только под Windows.

Тогда есть ли возможность отключить проверку SSL сертификата у XMLHttpRequest?

Я не в курсе вашей задачи, но объект нужно создавать так:

xmlhttp=new XMLHttpRequest();

а не так

xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

http://www.w3schools.com/xml/xml_http.asp

Объект сейчас так и создан.

try {
 
                if (window.XMLHttpRequest) {
                    var req = new XMLHttpRequest();
                    // some versions of Moz do not support the readyState property and the onreadystate event so we patch it!
                    if (req.readyState == null) {
                        req.readyState = 1;
                        req.addEventListener("load",
                            function () {
                                req.readyState = 4;
                                if (typeof req.onreadystatechange == "function")
                                    req.onreadystatechange();
                            },
                            false);
                    }
                    return req;
                }
                if (window.ActiveXObject)
                    return new ActiveXObject(SOAPClient._getXmlHttpProgID());
            }
            catch (ex) {
            }
            throw new Error("Your browser does not support XmlHttp objects");

У ActiveX есть метод .setOption(2, 13056) который отключает проверку SSL сертификатов.
Есть ли аналог для объекта созданного следующим образом
var req = new XMLHttpRequest();

Поискал в интернете - вроде как нет.

Показать все комментарии
Системные настройки
Технические вопросы
7.x

Есть ли какой-нибудь стандартный способ получения значения СН из серверного кода с последующим её увеличением?
Суть такова - в цикле, при помощи INSERT, создаются новые записи объекта и им нужно присваивать порядковыее номера.

Нравится

3 комментария

Для получения/заполнения системных переменных из серверного кода можно использовать:

Terrasoft.Core.Configuration.SysSettings.GetValue(UserConnection, "SysSettingsName");
 
Terrasoft.Core.Configuration.SysSettings.SetValue(UserConnection, "SysSettingsName","SysSettingsValue");

Да, с GetValue все ок, спасибо!

А вот с SetValue какая-то проблема:

System.Security.SecurityException: Настройка "Текущий номер операции" не является персональной
   в Terrasoft.Core.Configuration.SysSettings.SetValue(UserConnection userConnection, String code, Object value)
   в Terrasoft.Core.Process.ChargeAndDebitInterestProcess.ScriptTask1Execute(ProcessExecutingContext context)
Ошибкой завершилась сборка со следующим параметром Zone:
MyComputer

Здравствуйте, Акмаль!
В таком случае пользуйтесь другим вариантом метода:

Terrasoft.Core.Configuration.SysSettings.SetValue(UserConnection, UserConnection.RootAdminUnitGroupId,
					"SysSettingsName", "SysSettingsValue");
Показать все комментарии
7.3
web-запрос
Технические вопросы
7.x

Здравствуйте!
При попытке отправить запрос на получение данных (обращение идет по https)
возникает следующая ошибка.

XMLHttpRequest cannot load https://www.crediweb.lv/axis2/services/Info?wsdl. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://softex-iis:8896' is therefore not allowed access.

Как разрешить доступ к другим сайтам?

Нравится

1 комментарий
7.3
web-запрос
Технические вопросы
7.x

Здравствуйте!
При попытке отправить запрос на получение данных (обращение идет по https)
возникает следующая ошибка.

XMLHttpRequest cannot load https://www.crediweb.lv/axis2/services/Info?wsdl. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://softex-iis:8896' is therefore not allowed access.

Как разрешить доступ к другим сайтам?

Нравится

11 комментариев

А где именно в IIS нужно добавить свойство
Access-Control-Allow-Origin?

Добавил со звездочкой.
Появилась ещё одна ошибка.
ошибка 1

Uncaught InvalidStateError: Failed to execute 'send' on 'XMLHttpRequest': The object's state must be OPENED. SOAPClient.js:194

ошибка 2

XMLHttpRequest cannot load https://www.crediweb.lv/axis2/services/Info?wsdl. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://softex-iis:8896' is therefore not allowed access. 

Обязательно указывать имя сайта, к которому обращаюсь? Если да, то в каком формате.
https://www.crediweb.lv/axis2/services/Info так
или www.crediweb.lv/axis2/services/Info

Сейчас веб конфиг выглядит так

<system.webServer>
      <handlers>
      ----------параметры----------
      </handlers>
	<httpProtocol>
        <customHeaders>
          <add name="Access-Control-Allow-Origin" value="*" />
        </customHeaders>
      </httpProtocol>
    </system.webServer>

Скорее всего вы добавили не на том сервере.
Добавьте на том, на который вы обращаетесь:

т.е. должно быть так:

<add name="Access-Control-Allow-Origin" value="softex-iis" />

т.е. это надо делать не на softex-iis, а на crediweb.lv.

Что происходит: вы отправляете HTTP запрос в домен crediweb.lv от домена softex-iis. Веб-сервер на crediweb.lv не настроен на прием кросс-доменных запросов (считается не безопасным), поэтому такие запросы отбрасываются, а вам приходит ERROR с текстом из первого поста.

Кстати, из текста ошибки ясно, что сервер таки разрешает кросс-доменные запросы, но вашего локального доменного имени в списке нет. И это правильно, с точки зрения безопасности. Скорее всего, если домен будет не локальным, а чтото вроде tscrm.com - то все будет ОК.

Добрый день.
Скажите, если я прописал данный параметр в конфиге на сервере, должна ли отображаться строка вида "Acces-Control-Allow-Origin: *" в Response Headers запроса?
Как можно добавить данный параметр в заголовок запроса?

Да, в заголовке ответа она должна обязательно присутствовать. Если её не будет, браузер не примет такой ответ.

Если так, то почему в Responce Headers данный параметр не приходит? Возможна ли ситуация, что заголовки переопределяются после составления запроса. Если да, то как это можно исправить?

Request URL:https://www.crediweb.lv/axis2/services/Info?wsdl
Request Headers
Provisional headers are shown
Origin:http://softex-iis:8896
Referer:http://softex-iis:8896/0/Nui/ViewModule.aspx
User-Agent:Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.120 Safari/537.36
X-DevTools-Emulate-Network-Conditions-Client-Id:662B2ABF-4722-49B7-90FA-3857A590FF58
Query String Parametersview sourceview URL encoded
wsdl:

Строку вида

<add name="Access-Control-Allow-Origin" value="*" />

в JS коде также пытался установить заголовки следующим кодом:

xmlHttp.setRequestHeader("Access-Control-Allow-Origin", "*");.

[quote="Пащенко Александр Сергеевич"]Origin:http://softex-iis:8896[/quote]
Вот это и есть та строка, которую Вы ожидаете в запросе.

Показать все комментарии
Технические вопросы
5.x

Есть раздел "Контрагент" и привязанный к нему деталь "Инциденты". На разделе "Контрагент" создала новую динамическую группу. И добавила агрегирующий фильтр. Хотела фильтровать контрагенты по состоянию инцидента. Но почему то фильтр не правильно фильтрует. (детально на прик. файле) Чем это связанна?

Заранее большое спасибо.

Нравится

3 комментария

Видимо, у тех контрагентов на детали присутсвует хотябы один инцидент в состоянии "разрешен". Попробуйте поставить фильтр вроде

инцидент.состояние != новый
и
инцидент.состояние != в работе
и
инцидент.состояние != закрыт

пс: если у вас в главном реестре уже есть колонка с состоянием инцидента, почему не фильтровать срау по ней?

Проверила все равно не работает. В главном реестре неть колонки с состоянием инцидент.

С уважением,
Гюнель Рустамова

Гюнель, смотрите, на скриншоте вы просите систему "покажи мне всех контрагентов, по которым есть инциденты, и состояние хотябы одного из них "разрешен"".
Система корректно показала Вам результаты.

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

Показать все комментарии