Новопашин Николай

6
Рейтинг

nicolaj2
Николай Новопашин



  •   Регистрация: 11.01.2011 (13 лет назад)

  •   Был(а) на сайте: вчера в 07:20

Друзья
  • Дмитрий Малышев
  • Андрей Волин
Подписчики 6

Рейтинг 6

Материальный отчет по форме М-19 для 1С:Бухгалтерии 3.0, 2.0

Отчеты и формы Бухгалтер Платформа 1С v8.3 Бухгалтерский учет Система компоновки данных 1С:Бухгалтерия 2.0 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Абонемент ($m) Внешний отчет (ert,erf) Логистика, склад и ТМЦ

Материальный отчет по форме М-19 на основе материального отчета из бухгалтерии строительной организации 3.0 для 1С:Бухгалтерии 3.0 и родственных конфигураций на ее основе. Может быть полезен бухгалтерам, кладовщикам, т.к. это достаточно частое пожелание пользователей, а в стандартной 1С Бухгалтерии 3.0 такой формы нет. Также добавил версию для Бухгалтерия 2.0.

1 стартмани

08.03.2020    16727    161    nicolaj2    26       

6

Комментарии

Dev1С 8 управляемая форма. Сохранение настроек ширины колонок#14 01.09.23 6:51
Видимо очень сложный вопрос
Dev1С 8 управляемая форма. Сохранение настроек ширины колонок#13 30.08.23 12:39
//Так сохраняю настройки при закрытии

&НаСервере
Процедура СохранитьНастройкиНАСервере()
НастройкиФормы = ХранилищеСистемныхНастроек.Загрузить("Документ.РабочийЛист.Форма.ФормаДокумента/Такси/НастройкиОкна","");
ХранилищеСистемныхНастроек.Сохранить("Документ.РабочийЛист.Форма.ФормаДокумента/Такси/НастройкиОкна",Объект.Шаблон.Наименование,НастройкиФормы);
КонецПроцедуры

&НаКлиенте
Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка)
СохранитьНастройкиНАСервере();
КонецПроцедуры


//Так пытаюсь прочитать

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
СписокНастроек = ХранилищеСистемныхНастроек.ПолучитьСписок("Документ.РабочийЛист.Форма.ФормаДокумента/Такси/НастройкиОкна");
//Попытка
НастройкиФормы = ХранилищеСистемныхНастроек.Загрузить("Документ.РабочийЛист.Форма.ФормаДокумента/Такси/НастройкиОкна",Объект.Шаблон.Наименование);
ХранилищеСистемныхНастроек.Сохранить("Документ.РабочийЛист.Форма.ФормаДокумента/Такси/НастройкиОкна","",НастройкиФормы );
//Исключение
//КонецПопытки;

КолонкиШаблона();
КонецПроцедуры

//В СписокНастроек появляются сохраненные настройки после закрытия, но восстановления настройки не происходит и ошибки нет.
Dev1С 8 управляемая форма. Сохранение настроек ширины колонок#12 30.08.23 8:40
Может быть тут поможет ХранилищеСистемныхНастроек или что-то подобное, но я не знаю как с этим работать.
Dev1С 8 управляемая форма. Сохранение настроек ширины колонок#11 30.08.23 7:21
Я понимаю что всегда так было, и про заголовок в группе я тоже читал. Вот я и спрашиваю можно ли сохранять несколько пользовательских настроек колонок для одного вида документа, также как 1С стандартно одну настройку сохраняет. Можно даже отвлечься от этих дополнительных реквизитов. Предположим есть документ поступление и в шапке можно выбрать склад, Пользователь расширил вручную (не через еще/изменить форму/нужное поле/ширина) колонку номенклатура (у этого склада длинные названия) в ТЧ документа (при этом свойство ширина не изменилась) и хочет чтобы для выбранного склада форма открывалась с такой шириной, а для другого склада (где названия покороче) с другой шириной.
Dev1С 8 управляемая форма. Сохранение настроек ширины колонок#9 30.08.23 5:46
Вижу что не заинтересует, но вдруг найдется кто-то кто знает ответ и кого заинтересует. Деньги пока не готов платить.
Dev1С 8 управляемая форма. Сохранение настроек ширины колонок#8 30.08.23 5:43
Немного поясню вопрос. Програмно создаются реквизиты табличной части документа, а потом соответствующие поля табличной части.
У поля есть свойство ширина, но управлять им можно только ограничено, Колонка автоматически ставится по ширине заголовка и реагирует на свойство ширина только в большую сторону, когда ширина становится больше заголовка.

Элт = Элементы.Добавить(СтрПок.Код, Тип("ПолеФормы"), ГруппаФормы);
Элт.Вид = ВидПоляФормы.ПолеВвода;
Элт.Ширина=5;

При этом если пользователь мышью изменил ширину этих полей не заходя в "Еще/изменить форму" эта ширина не меняется и никакое другое свойство поля не меняется. Таким образом сохранение этой ширины в какой либо регистр, хранилище настроек или т.п. бессмысленно. Но программа запоминает эту пользовательскую настройку колонок и при следующем открытии документа восстанавливает ее. Но если зайти в документ с другим шаблоном, изменить ширину колонок и выйти, то настройки первого документа слетят или исказятся.Но нужно сохранять много таких настроек в зависимости от шаблона в шапке документа. Вопрос в том, можно ли сохранить несколько таких настроек также как автоматически сохраняет и восстанавливает 1С.

Я понимаю что можно использовать краткие заголовки и расширенные подсказки, но это не всегда удобно пользователям.
Dev1С 8 управляемая форма. Сохранение настроек ширины колонок#6 29.08.23 12:50
Стартмани вас заинтересуют?
Dev1С 8 управляемая форма. Сохранение настроек ширины колонок#4 29.08.23 12:43
А можно рабочий пример как с этим хранилищем настроек работать чтобы у документа были свои настройка форм для каждого шаблона которые при выходе бы сохранялись, а при входе(выборе шаблона) они бы автоматически восстанавливались.
Dev1С 8 управляемая форма. Сохранение настроек ширины колонок#3 29.08.23 12:41
А что именно устанавливать программно? Когда в пользовательском режиме изменяют ширину колонки (поля) никакое из свойств поля формы не меняется (например ширина).
Dev1С 8 управляемая форма. Сохранение настроек ширины колонок#1 29.08.23 12:03
Есть управляемая форма документа в шапке документа есть реквизит "Шаблон" (в нем описываются дополнительные реквизиты табличной части) и табличная часть документа с несколькими реквизитами которые всегда есть. В зависимости от выбранного шаблона в табличную часть добавляются новые дополнительные реквизиты

МассивРеквизитов = Новый Массив;
СписокУдаляемыхРеквизитов.Очистить();
Для Каждого СтрПок из Объект.Шаблон.Показатели Цикл
Если СтрПок.ТекстовоеПоле Тогда
Описание=Новый ОписаниеТипов("Строка");
ИначеЕсли СтрПок.Булево Тогда
Описание=Новый ОписаниеТипов("Булево");
Иначе
КвалификаторыЧисла = Новый КвалификаторыЧисла(20,?(КодСимвола(СтрПок.ТочностьДляЧисла)>=48 и КодСимвола(СтрПок.ТочностьДляЧисла)<=57,СтрПок.ТочностьДляЧисла,8), ДопустимыйЗнак.Любой);
Описание=Новый ОписаниеТипов("Число", КвалификаторыЧисла);
КонецЕсли;
Если КраткоеПредставлениеПеременныхШаблона Тогда
Рекв=Новый РеквизитФормы(СтрПок.Код, Описание, "Объект.ТЧ",СтрПок.Имя, Ложь);
Иначе
Рекв=Новый РеквизитФормы(СтрПок.Код, Описание, "Объект.ТЧ", СтрПок.Представление+" ("+СтрПок.Имя+")", Ложь);
Конецесли;

МассивРеквизитов.Добавить(Рекв);
СписокУдаляемыхРеквизитов.Добавить(Рекв.Путь + "." + Рекв.Имя);
СписокУдаляемыхЭлементов.Добавить(Рекв.Имя);
КонецЦикла;

ИзменитьРеквизиты(МассивРеквизитов);

//Потом добавляются группы и поля с данными реквизитов.
Если ЗначениеЗаполнено(СтрПок.Группа) и ПовторГрупп<>СтрПок.Группа Тогда
//Добавляем новую группу
СчГрупп=СчГрупп+1;
ГруппаФормы = Элементы.Вставить("ГруппаКолонок"+Строка(СчГрупп), Тип("ГруппаФормы"),Элементы.ТЧ, Элементы.ТЧРезультатКонтроляПовторяемости);
ГруппаФормы.ОтображатьЗаголовок = Ложь;
ГруппаФормы.РастягиватьПоГоризонтали=Ложь;
ГруппаФормы.РастягиватьПоВертикали=Ложь;
СписокУдаляемыхЭлементов.Добавить("ГруппаКолонок"+Строка(СчГрупп));
КонецЕсли;

Если ЗначениеЗаполнено(СтрПок.Группа) Тогда
Элт = Элементы.Добавить(СтрПок.Код, Тип("ПолеФормы"), ГруппаФормы);
Иначе
Элт = Элементы.Вставить(СтрПок.Код, Тип("ПолеФормы"), Элементы.ТЧ, Элементы.ТЧРезультатКонтроляПовторяемости);
КонецЕсли;

Элт.Вид = ВидПоляФормы.ПолеВвода;
Элт.ПутьКДанным = "Объект.ТЧ."+СтрПок.Код;
Элт.ГоризонтальноеПоложениеВШапке=ГоризонтальноеПоложениеЭлемент­а.Центр;
Элт.Подсказка=СтрПок.Представление;
Элт.АвтоМаксимальнаяШирина=Ложь;
Элт.АвтоМаксимальнаяВысота=Ложь;
Элт.РастягиватьПоГоризонтали=Ложь;
Элт.ВысотаЗаголовка=2;
Элт.Ширина=5;
ПовторГрупп=СтрПок.Группа;

1С сама настраивает ширину колонок (это не всегда удобно, но смирились) , далее пользователи меняют настройку колонок (ширину) под себя,чтобы было удобнее работать с данными.
Программа сохраняет эту ширину при повторном открытии. Но если работать с разными шаблонами, то все сбивается. Как сделать чтобы настройки ширины колонок сохранялись и автоматически открывались в разрезе шаблона из шапки документа.