3
spiteful41
27.07.11
✎
14:34
|
Процедура ПереименоватьКолонкуТаблицыЗначений(ТабЗначений, ТабИмен, Знач ТекИмяКолонки, Знач НовоеИмяКолонки = "") Экспорт
Если ТабИмен = Неопределено Тогда
ТабИмен = Новый ТаблицаЗначений;
ТабИмен.Колонки.Добавить("НовИмя", Новый ОписаниеТипов("Строка"));
ТабИмен.Колонки.Добавить("ТекИмя", Новый ОписаниеТипов("Строка"));
КонецЕсли;
ТекКолонка = ТабЗначений.Колонки.Найти(ТекИмяКолонки);
Если ПустаяСтрока(НовоеИмяКолонки) Тогда
// Генерируем новое имя для старой колонки, гарантируя что оно будет уникальным
Индекс = 1;
Пока Истина Цикл
НовоеИмяКолонки = "_" + Строка(Индекс) + "_" + ТекИмяКолонки;
Если ТабЗначений.Колонки.Найти(НовоеИмяКолонки) = Неопределено Тогда
Прервать;
КонецЕсли;
Индекс = Индекс + 1;
КонецЦикла;
// После выхода из цикла в переменной НовоеИмяКолонки должны получить новое имя колонки,
КонецЕсли;
// Переименуем колонку
ТабЗначений.Колонки[ТекИмяКолонки].Имя = НовоеИмяКолонки;
// Сохраним имя колонки в таб. имен
НоваяСтрока = ТабИмен.Добавить();
НоваяСтрока.НовИмя = НовоеИмяКолонки;
НоваяСтрока.ТекИмя = ТекИмяКолонки;
КонецПроцедуры // ПереименоватьКолонкуТаблицыЗначений()
|
|
4
Patrio_
O_Muerte
27.07.11
✎
14:45
|
(1)Ты меня уничтожил :)
(2)Выгрузил результат запроса по остаткам на регистре, и загружаю его в документ "Корректировка записей регистров накопления", имя колонки из результата запроса называется "*Остаток", а имя на регистре "*".
Треба правильное имя.
(3)Благодарю
ТабЗначений.Колонки[ТекИмяКолонки].Имя = НовоеИмяКолонки;
Этого бы хватило.
|
|