Доброго времени суток, коллеги.

Возможно ли из TerrasoftCRM 3.x дергать внешний Rest Api?

Нравится

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

В 3.Х можно отправлять запросы к сайту и получать ответы, я писал пример с курсами валют. С веб-сервисами должно быть аналогично, тонкости могут быть с авторизацией.

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

Террасофт    Версия: 3.4.1

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

Нравится

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

См. тут.

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

Привет.
TS 3.4.0.130
Есть иерархическая деталька "Продукты" в разделе "Счета", в некоторых счетах неправильно считаются итоги.
К примеру есть 2 записи продуктов которые отображаются в гриде, но при выводе количества записей в итогах бывает больше 2 т.е. один из продуктов дублируется что можно заметить если вывести к примеру сумму по колонке количество. При этом в датасете - 2 в таблице БД тоже 2.
В чем может быть проблема? Бинарники? 

Нравится

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

Вообще, да, обновить будет не лишним, хотя бы до 3.4.0.191. Ведь логика итогов в реестре сделана в ядре.

Посмотреть, какие SQL-запросы идут в базу и почему именно такой результат, можно при помощи профайлера.

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

Добрый день,

 

При попытке зайти в Террасофт установленный на сервере (Windows Server 2008 R2 Enterprise), возникает ошибка:

К сожалению, многочисленные попытки решить данную проблему не принесли результата.

Также было замечено, что при добавлении новой конфигурации при нажатии на кнопку выбора имени драйверов Oracle (Home) возникает другая ошибка:

Насколько я понял проблема возникает из-за того, что на сервере были установлены несколько версий Oracle и в данный момент версия 11.2.0 отсутствует на сервере. Вместо нее установлена версия 12.2.

Попытка очистить следы Oracle 11.2.0 и в дальнейшем даже переустановка Oracle привела лишь к тому что в данный момент выходит пустой список в котором невозможно выбрать версию Oracle:

 

Прошу помочь в решении данной проблемы.

 

Благодарю.

 

P. S. По возможности помогите пожалуйста найти инструкцию по бэкапу Terrasoft 3.3, для попытки переустановки Terrasoft, чтобы решить вышеуказанную проблему.

Нравится

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

Обратите внимание на рекомендацию по поводу «Ошибка открытия конфигурации: Cannot find OCI DLL»:

Для приложения Terrasoft под Oracle обязательно необходимо, чтобы на компьютерах всех пользователей, использующих конкурентные лицензии, был установлен клиент Oracle одной и той же версии. Имя сервера на компьютерах всех пользователей должно совпадать с именем, указанным в поле [Сервер] окна редактирования строки соединения компьютера, на котором заказывают и загружают лицензии, и данный сервер должен быть зарегистрирован. Имя сервера прописывается в файле tnsnames.ora, расположенном в инсталляционной директории клиента Oracle (например, d:/oracle/ora92/network/admin/ tnsnames.ora).

Также версия ядра 3.3.2.120 далеко не самая новая, есть смысл попробовать на последних файлах 3.3.2.313, поскольку в версии 175 и выше вносились изменения в механизм работы с сервером сессий для Oracle.

По вопросу разворачивания базы с нуля из бекапа, идущего с дистрибутивом есть раздел в руководстве администратора.

Для получения бекапа существующей базы нужно воспользоваться средствами СУБД, а также не забыть автоматически перенести или вручную завести пользователей с такими же именами, как в базе, на уровне сервера БД. Именно для Oracle инструкции не встречал. Например, для MS SQL это делается так. Если забыть перенести, то пустит только администратора SYS.

Зверев Александр пишет:
Для приложения Terrasoft под Oracle обязательно необходимо, чтобы на компьютерах всех пользователей, использующих конкурентные лицензии, был установлен клиент Oracle одной и той же версии. Имя сервера на компьютерах всех пользователей должно совпадать с именем, указанным в поле [Сервер] окна редактирования строки соединения компьютера, на котором заказывают и загружают лицензии, и данный сервер должен быть зарегистрирован. Имя сервера прописывается в файле tnsnames.ora, расположенном в инсталляционной директории клиента Oracle (например, d:/oracle/ora92/network/admin/ tnsnames.ora).

Добрый день. Данная проблема наблюдается на самом сервере (невозможно зайти в Terrasoft установленный на сервере).

По поводу бэкапа, посмотрю, большое спасибо за помощь.

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

Приветствую! Установил office 2016. При настройке клиента Terrasoft 3.x запустил сначала TSMSOfficeLibraryConfigurator, выбрал Excel, получил подтверждение "Регистрация настроек библиотек завершена".При запуске Excel в настройках раздела "Надстройки" Terrasoft office Add-In не содержит прописанного пути на не обходимый файл. Проблема наблюдаеться как на Windows 7 так и на Windows10

Нравится

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

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

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

Подсткажите какой порт использует Террасофт версии 3.3.2 для подключения?

Нравится

3 комментария
Лучший ответ

Вадим Рожик,

По умолчанию SQL сервер использует порт - 1433.

Ещё посмотрите эту статью.

1. Уточните, какая именно проблема у Вас возникла с подключением?

2. Какую СУБД Вы используете: MS SQL, Firebird или Oracle?

Алла Савельева,

1. Сервер на облаке находится соответственно при подключении на внешний айпи адрес нужно сделать проброс по порту чтобы подключаться
2. MSSQL

Вадим Рожик,

По умолчанию SQL сервер использует порт - 1433.

Ещё посмотрите эту статью.

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

Добрый день!

Подскажите, можно ли поменять режим отрисовок окон в terrasoft xrm 3.х? Чтобы не было долгой и плавной отрисовки, а как то быстро карточка с кучей правил прорисовалась (в каком-то фоновом режиме)?

Нравится

6 комментариев
Лучший ответ

Зверев Александр,

А лучше уже сразу обновиться на bpm'online crm 7.14.3 wink

Доброе утро.

Можно попробовать реализовать прориcовку окна таким образом:

System.BeginProcessing();
try {
	Window.Prepare();
} finally {
	System.EndProcessing();
}
EditWindow.Show();

 

Между версиями 3.3.2  и 3.4.0 поменяли движок отрисовки, стало быстрее.

Если у Вас 3.3.2 и меньше, стоит обновиться, лучше сразу на 3.4.1.

Зверев Александр,

А лучше уже сразу обновиться на bpm'online crm 7.14.3 wink

Алла Савельева,

Лучше то оно может и лучше, но не для того кто будет делать такой переход

Да, в отличие от перехода с 3.3.2 на 3.4.1, где нужны только новые лицензии и пару правок, переход на 7.Х является небольшим проектом, требующим исследований, что в 3.Х реально используется, адаптации скриптов перехода и иногда даже добавления в 7.Х новых полей для невмещающихся данных. То есть оно лучше, но дольше и дороже.

Спасибо!

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

Привет. 
TS 3.x
Есть документ Excel(.xls) открытый вот так:

var Excel = new ActiveXObject('Excel.Application');
Excel.Workbooks.Open(filePath);

У кого есть опыт работы, подскажите как:
1. Добавить пустой рядок в качестве 1-го(подвинув остальные вниз).
2. Заполнить ячейки этого рядка(припустим первых 10), интересует именно доступ.
3. Настроить ширину колонок.

*VS Debugger виснет при попытке взглянуть в объект.
**Нормальной документации не нашел, если у кого-то завалялась - буду благодарен

Нравится

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

Проще всего в Excel запустить запись макроса, проделать всё вышеупомянутое, а потом изучать сгенерированный код на VBA и переводить его на синтаксис JS.

Потыкал и нашел.
 

try {
        var excel = new ActiveXObject('Excel.Application');
        var workBooks = excel.Workbooks.Open(TempFileName.Value);
        var excelSheet = workBooks.Worksheets(1);
        excelSheet.Activate();
        excelSheet.Range('A1:K1').Insert(-4121);
        excelSheet.Range('A1').Formula = 'Ячейка А1';
        excelSheet.Range('B1').Formula = 'Ячейка А2 ';
    //  ......
        excelSheet.Range('K1').Formula = 'Ячейка К1';
        excelSheet.Columns('A:K').AutoFit();
        workBooks.Save();
 
    }
    finally {
        excelSheet = System.EmptyValue;
        workBooks = System.EmptyValue;
        excel.Quit();
        excel = System.EmptyValue;
        CollectGarbage();
    }
    

1.Добавление пустого рядка было сделано через Insert со смещением вниз.
2. Заполнение через метод Formula об. Range
3. Использовал AutoFit так как изменять значения Width или ColumnWidth не давало(read-only).
*Ещё обратите внимание на блок finally при таких действиях процесс excel.exe который был создан убивается.

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

Здравствуйте.
TS XRM 3.X 

Существует ли возможность поправить _DateTimeOperatorTypeEnum и логику работы соответственно? 

Нравится

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

Если это перечисление задано в ядре 3.Х, то нет, без исходников его не изменить. Менять можно только перечисления, созданные в виде enm-сервисов в конфигурации, например, годы.

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

Добрый день!

Данные:
клиент версии 3.3.2.275
база ms sql 2005

Задачи
1. Удалить все письма (всех пользователей) из БД.
2. Удалить логи.
3. Уменьшить размер БД другими способами – если есть какой-то способ (кроме шринка).

По первой задаче - В тестовой базе скл запросом удалили данные в таблицах dbo.tbl_MailMessage, dbo.tbl_MailMessageLog, dbo.tbl_MailMessageRight – но на сколько это правильно вопрос…
По второй задаче - если поступить также скл запросом - вопрос какие таблицы чистить?

Есть варианты правильного решения указанных задач (может штатные средства террасофт)?

Нравится

5 комментариев
Лучший ответ

Насколько я помню, то готовых утилит для очистки писем и логов в 3-ке не было. Решение только написание своих скриптов.

Чтобы понять в какой таблице хранятся логи, запустите sql-профайлер, перейдите на вкладку с логами в 3-ке и посмотрите в sql-профайлере, в какую таблицу пойдет запрос.

Ещё для уменьшения размера БД можно очистить таблицу процессов и их элементов (если процессы использовались).

Также можно посмотреть, что содержится в таблице История и удалить лишнее.

В любом случае нужно понимать, что, если с базой данных активно работают пользователи, то её размер будет расти.

Насколько я помню, то готовых утилит для очистки писем и логов в 3-ке не было. Решение только написание своих скриптов.

Чтобы понять в какой таблице хранятся логи, запустите sql-профайлер, перейдите на вкладку с логами в 3-ке и посмотрите в sql-профайлере, в какую таблицу пойдет запрос.

Ещё для уменьшения размера БД можно очистить таблицу процессов и их элементов (если процессы использовались).

Также можно посмотреть, что содержится в таблице История и удалить лишнее.

В любом случае нужно понимать, что, если с базой данных активно работают пользователи, то её размер будет расти.

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

Логи в других разделах устроены аналогично, плюс tbl_DatabaseLog для записей самого раздела логов.

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

Вообще, для быстрого поиска, куда делось место, можно воспользоваться стандартным отчётом «Disk Usage by Top Tables» в Management Studio:

 

Алла Савельева 

 Спасибо,   sql-профайлер посмотрю 

Зверев Александр пишет:
При удалении записей таблицу прав отдельно чистить не нужно, там каскадная связь и записи о правах удалятся вслед за записями основной таблицы сами.

Т.е.  если SQL запросом удаляю только dbo.tbl_MailMessage,  то dbo.tbl_MailMessageRight очистится сама?
Не понимаю как это работает... на уровне запуска клиента под супервизором запускается какой-то скрипт?

«Disk Usage by Top Tables»  так и нашел dbo.tbl_MailMessage

В TSAdmin у связи в таблице прав стоит галка «каскадная связь». На уровне базы удаление в связанных таблицах работает при помощи триггера tr_tbl_MailMessage_ID и аналогичных для каждого раздела.

Зверев Александр,

Ясно , спасибо

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