Здравствйте
Не типовая конфигурация
Ввели регистры бухгалтерию в базу
Откорретировал документ КорректировкаЗаписейРегистров все правильно отображается
Вопрос №1
Измерение и Ресурс ВАЛЮТА и ВАЛЮТНАЯСУММА имеют признак НЕ БАЛАНСОВЫЙ соответственно есть Дт и Кт
как сделать что бы при выводе в документе соответственные колонки(название) имели название ВалютаДт, ВалютаКт, ВалютанаяСуммаДт, ВалютаняСуммаКт, а сейчас повтоярются Валюта и ВалютнаяСумма?
Код 1C v 8.х Процедура НастроитьЗакладкиПанелиРегистровБухгалтерии()
Если ТаблицаРегистровБухгалтерии.Количество() = 0 Тогда
ЭлементыФормы.ПанельРегистровБухгалтерии.Страницы.Подсказка.Видимость = Истина;
Сч = 0;
Пока Сч < ЭлементыФормы.ПанельРегистровБухгалтерии.Страницы.Количество() Цикл
Если ЭлементыФормы.ПанельРегистровБухгалтерии.Страницы[Сч].Имя<>"Подсказка" Тогда
ЭлементыФормы.ПанельРегистровБухгалтерии.Страницы.Удалить(Сч);
Иначе
Сч = Сч + 1;
КонецЕсли;
КонецЦикла;
ЭлементыФормы.ПанельРегистровБухгалтерии.ОтображениеЗакладок = ОтображениеЗакладок.НеИспользовать;
Иначе
// Добавим новые страницы
ЭлементыФормы.ПанельРегистровБухгалтерии.ОтображениеЗакладок = ОтображениеЗакладок.Сверху;
Для каждого СтрокаТаблицыРегистров Из ТаблицаРегистровБухгалтерии Цикл
Найдена = Ложь;
Для каждого СтраницаПанели Из ЭлементыФормы.ПанельРегистровБухгалтерии.Страницы Цикл
Если СтраницаПанели.Имя = СтрокаТаблицыРегистров.Имя Тогда
Найдена = Истина;
Прервать;
КонецЕсли;
КонецЦикла;
Если Найдена Тогда
Продолжить;
КонецЕсли;
СтраницаПанели = ЭлементыФормы.ПанельРегистровБухгалтерии.Страницы.Вставить(ТаблицаРегистровБухгалтерии.Индекс(СтрокаТаблицыРегистров), СтрокаТаблицыРегистров.Имя, СтрокаТаблицыРегистров.Представление);
ЭлементыФормы.ПанельРегистровБухгалтерии.ТекущаяСтраница = СтраницаПанели;
// Расположим на странице командную панель
КоманднаяПанельРегистра = ЭлементыФормы.Добавить(Тип("КоманднаяПанель"), ("КоманднаяПанель" + СтрокаТаблицыРегистров.Имя), Истина, ЭлементыФормы.ПанельРегистровБухгалтерии);
КоманднаяПанельРегистра.Верх = 6;
КоманднаяПанельРегистра.Лево = 6;
КоманднаяПанельРегистра.Ширина = ЭлементыФормы.ПанельРегистровБухгалтерии.Ширина - 12 - 2;
КоманднаяПанельРегистра.Высота = 24;
КоманднаяПанельРегистра.УстановитьПривязку(ГраницаЭлементаУправления.Верх,ЭлементыФормы.ПанельРегистровБухгалтерии,ГраницаЭлементаУправления.Верх);
КоманднаяПанельРегистра.УстановитьПривязку(ГраницаЭлементаУправления.Низ,КоманднаяПанельРегистра,ГраницаЭлементаУправления.Верх);
КоманднаяПанельРегистра.УстановитьПривязку(ГраницаЭлементаУправления.Право,ЭлементыФормы.ПанельРегистровБухгалтерии,ГраницаЭлементаУправления.Право);
КоманднаяПанельРегистра.УстановитьПривязку(ГраницаЭлементаУправления.Лево,ЭлементыФормы.ПанельРегистровБухгалтерии,ГраницаЭлементаУправления.Лево);
// Расположим на странице табличное поле
ПолеРегистра = ЭлементыФормы.Добавить(Тип("ТабличноеПоле"), СтрокаТаблицыРегистров.Имя, Истина, ЭлементыФормы.ПанельРегистровБухгалтерии);
ПолеРегистра.Данные = "ДокументОбъект.Движения." + СтрокаТаблицыРегистров.Имя;
Если НЕ ЭтоНовый() и НЕ Модифицированность() Тогда
ПолеРегистра.Значение.Прочитать();
КонецЕсли;
ПолеРегистра.Верх = 30;
ПолеРегистра.Лево = 6;
ПолеРегистра.Ширина = ЭлементыФормы.ПанельРегистровБухгалтерии.Ширина - 12 - 2;
ПолеРегистра.Высота = ЭлементыФормы.ПанельРегистровБухгалтерии.Высота - 24 - 12 - 20;
ПолеРегистра.ТолькоПросмотр = Ложь;
ПолеРегистра.ИзменятьПорядокСтрок = Истина;
ПолеРегистра.ИзменятьСоставСтрок = Истина;
ПолеРегистра.УстановитьПривязку(ГраницаЭлементаУправления.Верх,ЭлементыФормы.ПанельРегистровБухгалтерии,ГраницаЭлементаУправления.Верх);
ПолеРегистра.УстановитьПривязку(ГраницаЭлементаУправления.Низ,ЭлементыФормы.ПанельРегистровБухгалтерии,ГраницаЭлементаУправления.Низ);
ПолеРегистра.УстановитьПривязку(ГраницаЭлементаУправления.Право,ЭлементыФормы.ПанельРегистровБухгалтерии,ГраницаЭлементаУправления.Право);
ПолеРегистра.УстановитьПривязку(ГраницаЭлементаУправления.Лево,ЭлементыФормы.ПанельРегистровБухгалтерии,ГраницаЭлементаУправления.Лево);
ПолеРегистра.СоздатьКолонки();
////
ПолеРегистра.Колонки.Период.Видимость = Ложь;
ПолеРегистра.Колонки.Регистратор.Видимость = Ложь;
ПолеРегистра.Колонки.НомерСтроки.Видимость = Ложь;
КоманднаяПанельРегистра.ИсточникДействий = ПолеРегистра;
КоманднаяПанельРегистра.АвтоЗаполнение = Истина;
КоманднаяПанельРегистра.Кнопки.Добавить("Разделитель" + СтрокаТаблицыРегистров.Имя);
Кнопка = КоманднаяПанельРегистра.Кнопки.Добавить(СтрокаТаблицыРегистров.Имя, ТипКнопкиКоманднойПанели.Действие, , Новый Действие("ПереключитьАктивность"));
Кнопка.Отображение = ОтображениеКнопкиКоманднойПанели.Картинка;
Кнопка.Картинка = БиблиотекаКартинок.ПереключитьАктивность;
Кнопка.Подсказка = "Переключить активность";
КонецЦикла;
// Удалим лишние страницы
Индекс = 0;
Пока Истина Цикл
Если Индекс > ЭлементыФормы.ПанельРегистровБухгалтерии.Страницы.Количество() - 2 Тогда
Прервать;
КонецЕсли;
СтраницаПанели = ЭлементыФормы.ПанельРегистровБухгалтерии.Страницы[Индекс];
Если ТаблицаРегистровБухгалтерии.Найти(СтраницаПанели.Имя, "Имя") = Неопределено Тогда
ЭлементыФормы.ПанельРегистровБухгалтерии.Страницы.Удалить(Индекс);
Продолжить;
КонецЕсли;
Индекс = Индекс + 1;
КонецЦикла;
ЭлементыФормы.ПанельРегистровБухгалтерии.Страницы.Подсказка.Видимость = Ложь;
ЭлементыФормы.ПанельРегистровБухгалтерии.ТекущаяСтраница = ЭлементыФормы.ПанельРегистровБухгалтерии.Страницы[0];
КонецЕсли;
КонецПроцедуры