Имя: Пароль:
1C
1С v8
выбор периода (периодичность месяц) на форме из списка 1с 8
0 Dimochka
 
13.09.13
09:35
Нужен выбор периода на форме наподобие как в настройках периода(стандартного) на вкладке период когда ставишь переключатель на месяц и выбираешь месяц, а задача два - чтобы это все сохранялось на форме списка справочника, нужного варианта не нашел сделал сам вот таким образом:

На форме добавил поле выбора, при начале редактирования списка прописал следующий код:


    ТЗ = Новый ТаблицаЗначений;
    Тз.Колонки.Добавить("Представление");
    ТЗ.Колонки.Добавить("Дата");
    
    СЗ = Новый СписокЗначений;
    Для Сч=1 По 3 Цикл
        Для Нм=1 По 12 Цикл
            СЗ.Добавить(Формат(Дата(СокрЛП("201")+СокрЛП(Сч)+?(Нм<10,"0"+Нм,Нм)+"20"),"ДФ=ММММ-гггг"));
            НС = Тз.Добавить();
            НС.Представление = Формат(Дата(СокрЛП("201")+СокрЛП(Сч)+?(Нм<10,"0"+Нм,Нм)+"20"),"ДФ=ММММ-гггг");
            НС.Дата = Дата(СокрЛП("201")+СокрЛП(Сч)+?(Нм<10,"0"+Нм,Нм)+"20");
        КонецЦикла;
    КонецЦикла;
    Элемент.СписокВыбора = СЗ;

Ну а в коде когда нужна дата начала, конца пишу

    Для Каждого Стр Из Тз Цикл
        Если Стр.Представление = ЭлементыФормы.ДатаОтчета.Значение  Тогда
            НачПериода = НачалоМесяца(Стр.Дата);
            КонПериода = КонецМесяца(Стр.Дата);
        КонецЕсли;
    КонецЦикла;

Два вопроса есть ли более удобное решение?
Если нет, то как сделать чтобы это решение сохраняло последний выбранный вариант на форме списка ?
1 Dimochka
 
13.09.13
14:26
-
up
2 AugustBlack
 
13.09.13
14:47
так заполняю список для выбора месяца

Для Мес = 0 по 12 Цикл
            ТекМес = ДобавитьМесяц(ТекДата, Мес);
Элементы.МесяцСдачи.СписокВыбора.Добавить(ТекМес, Формат(ТекМес, "ДФ='ММММ гггг'"));
КонецЦикла;
3 Dimochka
 
13.09.13
14:57
(2) гениально и просто) а не то моё извращение))
4 AugustBlack
 
13.09.13
15:19
чтобы на форме списка в таком формите юзер видел
1)переопредели форму
2)в свойствах поля "период" с типом дата, установи формат ДФ='ММММ гггг'
3)profit.
5 AugustBlack
 
13.09.13
15:20
*чтобы на форме списка в таком формате юзер видел:
1)переопредели форму списка(создай ее заново если она не создана)
2)в свойствах поля "период" с типом дата, установи формат ДФ='ММММ гггг'
3)profit.*
6 Dimochka
 
13.09.13
15:35
(5)  спасибо, все заработало!