Нижеприведенный код:
- в 197 и 198 релизах не работает РасширениеФормы.ПоложениеКолонкиТаблицы
- в 196 релизе - работает.
Тестовая обработка приложена.
//*******************************************
Процедура ПослеОткрытия()
Сообщить(ТекущееВремя()+" ПослеОткрытия()");
РФорма = СоздатьОбъект("РасширениеФормы");
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",1,1);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",2,1);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",3,1);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",4,1);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",5,2);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",6,1);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",7,1);
КонецПроцедуры // ПослеОткрытия
//*******************************************
Процедура ПриОткрытии()
Для ы=1 По 7 Цикл ТЗФорма.НоваяКолонка("к"+ы); КонецЦикла;
Для ы=1 По 5 Цикл
ТЗФорма.НоваяСтрока();
Для ыы=1 По 7 Цикл ТЗФорма.УстановитьЗначение(ы,ыы,"стр"+ы+"кол"+ыы); КонецЦикла;
КонецЦикла;
КонецПроцедуры // ПриОткрытии
Смотри тестовую сборку. Если все нормально, выложу эту сборку в качестве релиза.
Не взлетело.
Ожидаемое поведение
https://disk.yandex.ru/i/2NTCvsQ53Aangg
Поломанное поведение
https://disk.yandex.ru/i/tKQ8Qsf6TVx5pw
Ожидаемое поведение неверно. В коде тестовой обработки для всех колонок, кроме пятой, устанавливается положение 1. Это значит "в новой колонке". Для пятой ставится 2 - "на следующей строке".
Для ожидаемого поведения надо для колонок ставить 3 - "в той же колонке".
Раньше было ошибочное поведение, сейчас работает в соответствии с документацией.
Этому ошибочному поведению было несколько лет.
К нему привыкли и в туевой хуче мест прописали (документы, обработки и т.д.)
Теперь всё переделывать и по филиалам раскидывать будет проблематично
Теперь получается нужно задать положение таким образом:
РФорма = СоздатьОбъект("РасширениеФормы");
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",1,3);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",2,3);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",3,3);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",4,3);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",5,2);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",6,3);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",7,3);
Цитата: jurii от 30 сентября 2024, 12:17Этому ошибочному поведению было несколько лет.
К нему привыкли и в туевой хуче мест прописали (документы, обработки и т.д.)
Теперь всё переделывать и по филиалам раскидывать будет проблематично
Разумно... Значит вечером исправлю документацию. Получается:
0 - новая колонка
1 - в той же колонке
2 - на следующей строке
Обновил тестовую сборку. И поправил документацию.
Получается:
0 - новая колонка
1 - в той же колонке
2 - на следующей строке
.
клинит меня что-то
"в той же колонке" - в какой "той же"...?
"на следующей строке" - под какой колонкой будет на той же строке?
.
РФорма = СоздатьОбъект("РасширениеФормы");
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",1,0);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",2,0);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",3,0);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",4,1);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",5,2);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",6,1);
РФорма.ПоложениеКолонкиТаблицы("ТЗФорма",7,1);
.
картинка вот такая получается
https://wdho.ru/k8nC
слабо как-то соотношу код и картинку.
Картинка соответствует коду.
Проверять очень просто - в любой форме списка открываешь свойства колонки и на закладке "Положение" смотришь чего как будет.
Что-то у меня стало стабильно падать на двух последних тестовых. 07.04.24 не падает.
Падает на чем?
Не могу понять с чем связано. ПриНачалеРаботыСистемы вызывается обработка, которая крашит, судя по трассировке в одном и том же месте. Ставлю ПриОткрытии СтатусВозврата(0); Возврат; — крашит в ПриЗакрытии в другой обработке. Комменчу вызов обработки — запускается, но крашится на другой обработке в ПриЗавершенииРаботыСистемы. Может, конечно, с системой что-то, но 07.04.24 и 197 релиз работают стабильно.
Вечером посмотрю. Там часть нового функционала, который я до отпуска делал. Может быть из-за него проблемы.
Проверь, пожалуйста, текущую тестовую сборку на вылет.
интересненько...
Теперь всё работает как нужно
https://disk.yandex.ru/i/ggRbN3VbhQ9JPw
Цитата: Злоп от 01 октября 2024, 13:28клинит меня что-то
"в той же колонке" - в какой "той же"...?
"на следующей строке" - под какой колонкой будет на той же строке?
Это как на закладке "Положение" для колонки ТЧ документа:
https://disk.yandex.ru/i/MZZ9h0MDjlLBmQ
с таким вот результатом:
https://disk.yandex.ru/i/VSk00PjIJUE73g
Цитата: АЛьФ от 01 октября 2024, 19:38Проверь, пожалуйста, текущую тестовую сборку на вылет.
Спонтанные падения прекратились!
Но теперь:
Если глОкноСообщений.ПолучитьСтроку(_КоличествоСтрок - 1, _ТекстСообщения) = 1 Тогда
{Глобальный модуль(18680)}: Недостаточное число параметров передано при вызове функции/процедуры объект
Даже если добавляю третий параметр, и даже четвёртый, всё равно "недостаточное число"
И осталось падение 1с на ОкноСообщений.ПолучитьСтроку() при пустом окне (https://forum.dorex.pro/index.php?topic=67.msg1899#msg1899)
Цитата: Arbuz от 02 октября 2024, 14:20Даже если добавляю третий параметр, и даже четвёртый, всё равно "недостаточное число"
А, не. Извиняюсь. 4 параметра достаточно.
Буду вечером разбираться с падением. Вроде чинил это. Или только хотел починить...
Цитата: Arbuz от 02 октября 2024, 14:43Цитата: Arbuz от 02 октября 2024, 14:20Даже если добавляю третий параметр, и даже четвёртый, всё равно "недостаточное число"
А, не. Извиняюсь. 4 параметра достаточно.
3 - переменная для маркера сообщения
4 - переменная для расшифровки строки
Поправлю, чтобы были необязательными.
Поправил методы КоличествоСтрок() и ПолучитьСтроку() объекта ОкноСообщений. Проверяй текущую тестовую.
Цитата: АЛьФ от 02 октября 2024, 20:06Поправил методы КоличествоСтрок() и ПолучитьСтроку() объекта ОкноСообщений. Проверяй текущую тестовую.
Всё работает. Спасибо!