Добрый день!

Помогите разобраться. При выгрузке отчета выскакивает ошибка "Ошибка выполнения метода 'wnd_ReportFiltersOnPrepare'. Объект не поддерживает это свойство или метод "Call Stack", информация по ошибке прикреплен. Такая ошибка выскакивает только на нескольких машинах. TS_XRM 3.3.2

Нравится

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

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

Из-за маленького разрешения изображение не удалось проанализировать ошибки.
Вы пробовали очистить кэш и перерегистрировать библиотеки?
На всякий случай прикрепляю инструкцию.
instrukciya.docx

Дмитрий, спасибо, но очистка кэша и перерегистрация библиотек не помогла. Сегодня информация об ошибке немного изменилась. Файл прикрепил


скрин 1


скрин 2

Дмитрий, установите компонент «ScriptControl» (прикрепил архив к комментарию) и почистите, пожалуйста, Cache.

scriptcontrol.rar

Приятного дня!

Дмитрий, Очистка Cache не помогла

При выполнении скрипта ругается на 24 строку

1 function LoadFilters(Window) {
2	var QueryBuilderData = ReportFilters.QueryBuilderData;
3	if (QueryBuilderData) {
4		var QueryFilterData = QueryBuilderData.QueryFilterData;
5		if (QueryFilterData) {
6			fbcMain.DataFieldsList.Deserialize(QueryFilterData.RootNode);
7			fbcMain.Refresh();
8	        return;
9	    }    
10    }
11	if (!Assigned(ReportFilters.FastReport)) {
12		return;
13	}
14	var FiltersXML = ReportFilters.FastReport.FiltersXML;
15	if (FiltersXML) {
16		var XMLStorage = GetNewXMLStorage();
18		var XMLStorage = GetNewXMLStorage();
19		var ForceEncoding = UTF8Encoding;
20		var MatchResult = FiltersXML.match(/encoding="(.*?)"/);
21		if (MatchResult) {
22			ForceEncoding = MatchResult[1];
23		}
24		XMLStorage.LoadFromText(FiltersXML, ForceEncoding);
25		fbcMain.DataFieldsList.Deserialize(XMLStorage.RootNode);
26	}
27 }

Дмитрий, ошибка возникает на стандартном отчете или пользовательском?

Необходимо понять, в каком элементе возникает ошибка.
Можно заменить код, чтобы понять, стоит значение XMLStorage илии нет:

  XMLStorage.LoadFromText(FiltersXML, ForceEncoding);
  fbcMain.DataFieldsList.Deserialize(XMLStorage.RootNode);

на:

 
  if (XMLStorage) {
                 XMLStorage.LoadFromText(FiltersXML, ForceEncoding);
                 fbcMain.DataFieldsList.Deserialize(XMLStorage.RootNode);
        } else {
                        Log.Write(lmtError, 'XMLStorage is null');
                               }

Есть вероятность, что в данном элементе значение стоит Null.

Спасибо Дмитрий! Подставил ваш код, но остановился на той же строке как и раньше
Причем ошибка не на конкретном отчете, а во всех отчетах, где всплывает окно фильтрации. Раньше подобной ошибки не было, и происходит это не на всех машинах

Отчет сам выводится, если игнорировать ошибку и нажать на "ОК" в окне фильтрации. Ввиду всего этого, предполагаю, что ошибка не в отчете, а в каком то методе фильтрации. На всякий случай прикрепил J-script.

Дмитрий, возможно ошибка возникает на уровне прав.

Вы формируете отчеты под пользователем, который имеет максимальные права? Например, под Supervisor.
Попробуйте сформировать стандартный отчет "Задачи по типу" под Supervisor. В данном отчете присутствуют фильтрация.

Также, уточните, если убрать фильтрацию, отчет формируется корректно?

Спасибо Дмитрий!

Попробовал под Supervisor-ом как на пользовательском отчете, так и на стандартном отчете, ошибка не исчезла. Если убрать фильтрацию, отчет формируется корректно.

Может быть проблема в компонентах Винды, хотя я пробовал обновлять, не помогло? Пытался откатиться тоже не помогло.

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

Напишите, пожалуйста, письмо с запросом на предоставления приложения, указав точную версию и название продукта (например, 3.3.2.127 XRM или 3.3.2.165 XRM + Service Desk)
А также уточните, какую СУБД Вы используете.

Далее, когда получите приложение, то разверните рядышком чистую базу и приложение. И затем проверьте следующие комбинации (необходимо сформировать стандартный отчет с фильтрацией):
- Новые бинарные файлы и чистая база данных;
- Старые бинарные файлы и предоставленная чистая база;
- Новые бинарные файлы и Ваша база данных.

Электронный адрес тех. поддержки: support@terrasoft.ru

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

Скажите, подойдет ли обычный Terrasoft XRM 3.xxx для автоматизации работы интернет портала?
Если да, то можно где нибудь посмотреть у кого и как это реализовано на демонстрационных примерах?

Нравится

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

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

Спасибо. Буду ждать

Здравствуйте, Евгений.

Ваш вопрос передан специалистам профильного департамента.

В ближайшее время специалисты нашей компании с Вами свяжутся.

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

Добрый день, столкнулись с проблемой:

Ранее на терминальном сервере была установлена Windows Server 2008 при записи задачи, каждый раз выскакивало окно безопасности Outlook с запросом на разрешение отправки писем. Решили проблему политиками, ADM шаблоны с сайта Microsoft которые подавляли окно и разрешали доступ для всех пользователей.

Теперь на терминальном сервере Windows Server 2012R2, эти же политики работать перестали и теперь каждый раз при сохранении задачи выдаётся запрос пользователю.

Возврат на 2008 не вариант, на сайте Microsoft файлы ADM не менялись у нас последняя версия,
Пробовали использовать ПО Advanced Outlook Security на 2012R2 без роли терминального сервера работает, подавляя запрос и разрешая отправку, на терминальном сервере не работает.

Заранее спасибо...

Нравится

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

Надеюсь на скорую помощь.

Какой Outlook у вас?

На терминальном сервере Microsoft Office 2010, локально Microsoft Office 2013

Здравствуйте.
Для начала обратите внимание на прикреплённый файл, возможно будет полезен (там изложены некие рекомендации касательно Вашего вопроса). Работа с Windows Server 2012 для Terrasoft 3.x не декларировалась и, соответственно, не тестировалась. Тем более со сторонними продуктами, в частности, с "Advanced Outlook Security". Если разобраться не получиться, рекомендую перенести вопрос для обсуждения в Техническую поддержку или обсудить варианты с менеджером, который ответственный по Вашей компании.

У нас домен и эта галочка не активна, Менеджер посоветовала обратится в Техподдержку, Техническая поддержка посоветовала обратится в комьюнити,

Попробуйте

HKLM\SOFTWARE\Microsoft\Office\14.0\Outlook\Security\ObjectModelGuard=2

чтобы галочки стали активными.

Если не поможет:


In case custom code is calling Outlook to send email and receive warning like " A program is trying to access e-mail addresses you have stored in outlook ", To suppress the security prompt user can add below registry keys:
[HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\14.0\outlook\Security] "PromptOOMAddressBookAccess"=dword:00000002 "PromptOOMAddressInformationAccess"=dword:00000002 "AdminSecurityMode"=dword:00000003

"Олейник Дмитрий" написал:

Попробуйте

HKLM\SOFTWARE\Microsoft\Office\14.0\Outlook\Security\ObjectModelGuard=2

чтобы галочки стали активными.

Если не поможет:

Цитата:

In case custom code is calling Outlook to send email and receive warning like " A program is trying to access e-mail addresses you have stored in outlook ", To suppress the security prompt user can add below registry keys:

[HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\14.0\outlook\Security] "PromptOOMAddressBookAccess"=dword:00000002 "PromptOOMAddressInformationAccess"=dword:00000002 "AdminSecurityMode"=dword:00000003

С уважением,

Олейник Дмитрий

Как говорится, иди обниму!

Большое спасибо, всё заработало и на терминальном сервере и локально без доп ПО, политиками всем прописывается!

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

Добрый день!
Изучаю Террасофт, нужна ваша помощь!
Под некоторыми пользователями не могу создать задачу в продажах. Нажимаю кнопку "создать" и программа уходит в нирвану.
Под другими - думает секунд 30 и открывает окно для создания задачи.

Не могу понять в чем дело. Буду рад вашим наводящим вопросам или подсказкам.

Нравится

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

Дополнение. В обычном режиме Террасофт занимает 90 мб памяти. При создании задачи пик доходит до 1,7 гб. Потом окно программы перерисовывается (видимо должно появиться окно с задачей) и память откатывается до 900! мб.

После этого программа делает вид, что думает дальше и больше ничего не происходит.

Здравствуйте, Вася Путин.
Разница по времени выполнения одних и тех же операций под разными пользователями на идентичной среде (ОС, аппаратное обеспечение...) может зависеть лишь от настроек прав доступа. Дело в том, что, например, администратор читает данные напрямую из таблиц базы данных (это происходит быстрее), а пользователь с набором определённых прав - из представлений (view), которые формируются исходя из розданных, для него прав доступа. Также на ситуацию может влиять изменение конфигурации (логики работы приложения). Попробуйте, пожалуйста, проанализировать, выше упомянутые, аспекты сего случая и, если, не получится урегулировать ситуацию - сообщайте.

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

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

Для того чтобы попробовать локализовать проблему, попробуйте с помощью профайлера перехватить запрос, который идет в БД при создании задачи. Далее полученный запрос выполните напрямую в БД и сравните время и расход памяти при выполнении запроса на клиенте и прямо в БД. Возможно сам экземпляр SQl начинает расходовать ресурс памяти.

Добрый день, Сергей!
Запрос, на котором память на клиенте подпрыгнула до 1,7 гб, вернул 45652 строк. Вроде ничего криминального. Отработал на сервере быстро.

Здравствуйте.
В таком случае нужно анализировать были ли изменения конфигурации (изменение логики работы "коробочного" функционала)? Касались ли они механизма создании задачи в продажах?

Всем добрый день!
К сожалению времени на решение проблемы было мало, поэтому просто удалил пользователей и создал снова. Проблема ушла.
Так, что данная загадка с всплеском памяти осталась нерешенной.

Здравствуйте. По предоставленной информации однозначно установить источник проблемы не представляется возможным. Повторюсь, что нужно выяснить вносились ли изменения в конфигурацию и если "да", тогда анализировать их? Смотреть на оптимальность структуры запроса. Вы сообщаете, что проблема ушла и в то же время задача - не решена. Если вопрос актуален, сообщите, пожалуйста, в службу технической поддержки Ваш CustomerID c описанием проблемы. Спасибо.

Изменения в конфигурацию не вносились, у нас "коробочная" версия.

Здравствуйте.
Опишите, пожалуйста, конфигурацию "железа" (сервер, клиент). Как организовано взаимодействие клиента и базы (локальная сеть, удалённое подключение, RDP и т. д.). Если пользователи обладают одинаковыми правами, выполняют одинаковые действия, а проблема у кого-то есть, а у кого-то - нет, тогда нужно обращать внимание на окружение (аппаратное, программное). Попробуйте пользователей поменять местами. Останется ли проблема за пользователем или будет стабильно зависеть от рабочего места?

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

после замены сервер с базой данных перестала запускаться программа: "Ошибка открытия конфигурации. 'Login failed for user '-------'.' ". Тест конфигурации проходит успешно.
что может быть?

Нравится

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

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

Здравствуйте, Александр.
Дело в том, что пользователи в базе данных при создании автоматически дублируются логинами на SQL-сервере и "привязываются" к ним. Логины хранятся в системной базе "master". По сему при переносе пользовательской базы на альтернативный сервер, пользователи "переедут" вместе с базой (они хранятся в таблице tbl_AdminUnit), а вот логины - нет. Их (логины) нужно будет создать в ручном режиме и связать с пользователями посредством выполнения хранимой процедуры. Это описано в руководстве администратора на примере создания логина Supervisor. Ниже привожу пример:

sp_change_users_login 'auto_fix', 'user_name'

Эту же процедуру нужно выполнить для логина «fkeys» (служебный логин):

sp_change_users_login 'auto_fix', 'fkeys'

Если пользователь - системный администратор, тогда ему достаточно дать роль sysadmin и не выполнять для него "хранимку". Для остальных нужно выполнить процедуру и не давать дополнительных ролей.

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

Как открыть уже закрытый период? и есть ли такая возможность?

Нравится

1 комментарий

Добрый день, Наталия!

Логика системы построена таким образом, что закрытый период открыть невозможно.

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

Как с бизнес-процесса отправить предварительно созданный e-mail шаблон. При попытке через действие отправить e-mail ничего не происходило.
Нашла пост в котором было описание изменение скрипта действия https://community.terrasoft.ua/blogs/9899, но это не решило проблему.
Файлы БП прилагаются.

Нравится

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

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

Используйте элемент скрипт, а в нем функцию:

var AccountSendResult = SendEmailByTemplate(Template, {
						RecordID: AccountDataset.Values('ID'), 
						Address: AccountEmailAddress, AutoSend: true, Silent: true});

где

var Template = GetTemplateData(TemplateID, true);

Ниже по ссылке еще один пример:

http://www.community.terrasoft.ua/forum/topic/8702#comment-47804

Давайте сначала.
У меня есть шаблон сообщения, который мне нужно отправить, например Прайс-лист.
Я добавляю действие отравить e-mail и заполняю карточку действия: тему, выбираю шаблон.
У меня есть макрос обращения в письме (с карточки контактов),e-mail адрес берется со средств связи контрагента. Какой набор данных для макросов нужно выбрать : контрагент или контакт. Это первый вопрос.
На второй вкладке я добавила параметр AccountID, так как по нему и происходит фильтрация.
Вопрос номер два, заполнив карточку отправки по e-mail и не внося каких либо изменений в скрипт не бп не будет работать?
На счёт скрипта от Дмитрия.
Объясните,пожалуйста, какие данные я должна вставить\заменить в этом скрипте.

Здравствуйте, Наталья!

Имеется ввиду, что вместо элемента "Отправка Email" Вы можете использовать элемент скрипт и отправлять письма через код.

Вам необходимо:

1) Указать TemplateID - это идентификатор шаблона сообщения.
Его Вы можете узнать, сделав запрос к таблице tbl_MailTemplate или выполнив запрос sq_MailTemplate из конфигурации Terrasoft.
2) AccountEmailAddress - почтовый адрес.
3) RecordID - идентификатор контрагента.
Его Вы можете узнать, сделав запрос к таблице tbl_Account или выполнив запрос sq_Account из конфигурации Terrasoft. Либо же получив любым другим образом из кода.

По поводу элемента "Отправка Email" сообщу Вам ответ в ближайшее время.

Мне нужно чтобы ID контрагента и его e-mail передавался с параметров диаграммы.

Здравствуйте, Наталья.

Дело в том, что в элементе БП "Отправить Email" в качестве получателя можно указать лишь Контакта, но не контрагента (на вкладке элемента "Контакты" можно выбрать Контакта из справочника либо передать параметр с идентификатором Контакта).
Реализация обусловлена бизнес-логикой (контактными лицами являются сотрудники контрагента, но не сам контрагент).

Потому, действительно, Вам необходимо использовать, как говорит Дмитрий, элемент Скрипт для отправки Email непосредственно контрагенту.

Пример обработки события OnExecute элемента Скрипт:

function Item3OnExecute(ScriptItem, IsComplete) {
	TemplateID = '{47DF8DC2-71E8-4EF6-A7CA-AFF599F8B172}';
	//задаем идентификатор шаблона (можно посмотреть в sq_MailTemplate)
	var Template = GetTemplateData(TemplateID, true);
	var AccountSendResult = SendEmailByTemplate(Template, {
    RecordID: '{E308B781-3C5B-4ECB-89EF-5C1ED4DA488E}', 
    Address: 'support@terrasoft.ru', AutoSend: true, Silent: true}); 
} 

Только в качестве RecordID и Address подставляйте свои параметры.

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

В карточке продукта есть закладка "Движение по складу" и у меня она не работает.
Я закрыла периоды, выбираю наиболее активный из всех и продукт, который точно был отгружён\куплен в тот же период.
Вопрос как наконец увидеть этот график?(

Нравится

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

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

Здравствуйте, Наталия!

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

Информация описана в разделе 3.5.2 на с.191-192:
http://tsrdp.tscrm.com/support/downloads/manuals/TS_XRMDistribution_UG_…

Все условия выполнены, но ничего нет.
Есть только линия минимальных запасов.

Здравствуйте, Наталия.

Есть предположение, что в Вашей версии допущена ошибка.

Попробуйте сделать резервную копию сервиса Offerings\Details\Analytic\sq_OfferingAnalytic из конфигурации, а затем поверх него загрузить обновленный сервис из архива во вложении.

Сообщите, пожалуйста, результат.

sq_offeringanalytic.zip

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


Разработчиками компании террасофт реализована автоматическая генерация номера заявки но по каким то причинам не всегда генерируется

Нравится

1 комментарий

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

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

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

Как часто номер не генерируется?

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

не подскажите- есть новый пользователь ему нужно ограничить счета которые он видит.нужно чтобы он видел только те счета которые сам выписывает.. а не все счета компании
как это сделать?

Нравится

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

Здравствуйте, Савелий.

Автору записи априори выдаются полные права. Здесь необходимо понять, входит ли данный пользователь в какую-нибудь группу? Создана ли у Вас орг. структура в разделе "Администрирование"?

создано. в нем присутствуют 2 раздела : администратор и отдел продаж. данный пользователь находиться в группе отдел продаж

В таком случае Вас интересует настройка прав по умолчанию. Необходимые настройки нужно сделать в разделе "Администрирование". В левой части экрана необходимо переключиться на представление "пользователи", выделить нужного пользователя. В реестре выделить таблицу "счет", на детали "доступ" убрать любые значения. Все это необходимо делать, предварительно переключившись на вкладку "Права доступа по умолчанию". При таких настройках все счета, что создает пользователь будут видны только автору и пользователям с ролью "системный администратор". Также хочу заметить, что после изменения настроек доступа по умолчанию, они будут применены только для записей, созданных после изменения настроек. Для раздачи прав на существующие записи воспользуйтесь скриптом, предварительно сделав бэкап БД.

rights.rar

разобрался спасибо!
есть еще один вопрос можно ли добавить в счет еще информацию? куда добавить выделил на скриншоте. нужно добавить информацию о том что счет действует 3 банковских дня.и как это сделать?

Что касается непосредственного добавления полей в отчет, то, прежде всего, данные поля необходимо добавить в сервис выборки и дата сета (Рис. 1.jpg). После этого, созданные поля появятся в отчете в перечне доступных для использования полей (Рис. 2.jpg). Для добавления полей используйте инструмент Fast Report (3.jpg).


а после этих действий новое поле будет добавляться автоматически во все счета? или нужно будет постоянно добавлять это поле?
и можно по подробнее как это сделать?

Савелий, здравствуйте!

Поля, добавленные в отчет, не нужно будет добавлять постоянно. В пункте 3 моего предыдущего ответа описано, что для добавления полей необходимо использовать инструмент Fast Report.

спасибо за помощь!

Здравствуйте, при формировании счета в FastReports, некоторые записи при печати дублируются, некоторые отсутствуют, тогда как в фильтре настройка в поле отчеты сформировано коректно. с Чем может быть связан данный сбой?
Terrasoft XRM 3.3.2.252

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

Данный вопрос рассматривается в теме.

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

Похожее поведение было, когда у продукта в разделе «Продукты» не была выставлена кратность, там нужно больше 0.

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