создал новую деталь Темы в разделе Задачи, (Темы - это новый справочник)
в детали кнопки Добавить и Изменить работают нормально, но кнопка Удалить - не работает: ArrayIDs - возвращает ноль
function DeleteData() {
var ArrayIDs = GetArrayByCollection(grdData.SelectedIDs);
if (ArrayIDs.length == 1) {...}
...
}
function btnDeleteOnClick(Control) {
DeleteData();
}
подскажите, как решить проблему
Нравится
Уточните, пожалуйста, какое значение имеет при этом grdData.SelectedIDs?
Олег Лабьяк,
разработчик,
3-я линия Службы поддержки Terrasoft.
если я пишу
Log.Write(1, grdData.SelectedIDs);
тогда скрипт выдает ошибку о несоответствии типов.
Это нормально, поскольку grdData.SelectedIDs - это объект, а в лог можно вывести только строковое значение. Попробуйте
Log.Write(1, grdData.SelectedIDs.Items(0));
Вообще для анализа проблемы лучше использовать отладчик.
Олег Лабьяк,
разработчик,
3-я линия Службы поддержки Terrasoft.
"Александр Кудряшов" написал:Log.Write(1, grdData.SelectedIDs.CommaText);
Согласен, это лучше :).
Олег Лабьяк,
разработчик,
3-я линия Службы поддержки Terrasoft.
Дмитрий, а как Вы создавали деталь? Если окно детали наследуется от wnd_BaseGridArea, там не нужно дополнительно обрабатывать удаление, достаточно базового обработчика.
Олег Лабьяк,
разработчик,
3-я линия Службы поддержки Terrasoft.
В разделе задачи есть деталь контакты, я использовал контакты как пример.
Наследование от wnd_BaseGridArea есть.
Обработчик удаления скопировал из scr_ContactInTaskGridArea, без обработчика тоже не удаляет один элемент. ЕСли удалять все, тогда нормально.
Представление в реестре детали одно или больше? Возможно, Вы используете несколько окон? Были случаи, когда не совсем корректно было прописано изменение активного представления, соответственно, информация отображалась с одного датасета, а работа велась совсем с другим.
Для более детального анализа необходим удалённый доступ. Если это возможно, отправьте, пожалуйста, запрос или параметры доступа на адрес службы технической поддержки (support@tscrm.com).
Если деталь не предполагает каких-либо сложных функциональностей, возможно, лучше пересоздать её с помощью редактора разделов (запустив приложение с параметром /wnd=wnd_CreateNewWorkspace). Правда, он есть не во всех версиях.
Олег Лабьяк,
разработчик,
3-я линия Службы поддержки Terrasoft.
Проверьте, указаны ли у датасета (ds_) ключевое поле и первичное поле для отображения.
--------------------------------------------
Лабитек
Центр разработки приложений