ПОРЯДОК ВИКОРИСТАННЯ ОБ’ЄКТА ПЕРІОДИЧНИЙ

Обєкти типу Періодичний (далі ОП) надають додаткові можливості з управління періодичними реквізитами довідників і періодичними константами ОП подібно, наприклад, списками або таблицями значень, що не входять до складу метаданих, а створюються на час виконання програми функцій СоздатьОбект, Наприклад:

оп = СоздатьОбект (Періодичний)

Після створення ВП прикріплюється до певногоперіодичному обєктуреквізиту довідника або періодичної константі Ця дія виконується методом ІспользоватьОбект Метод не застосовується, якщо вибірка періодичних обсягів по ктов здійснюється по документу Далі вживаються методи або атрибути ОП, п озіціонірующіе періодичної обєкт і керівники його значеннями

З кожним періодичним обєктом повязано в загальному випадку кілька записів, що містять кожна значення періодичного обєкта, дату значення і, можливо, інші компоненти, наприклад посилання на документ, який створив запис

Приклад 1Виводиться список періодичних констант, що містить їх ідентифікатори, синоніми і значення на поточну дату

/ / Процедура виведення списку визначених у конфігурації періодичних констант

процедура Виконати () / / Повязана з кнопкою Пуск обробки Проба

перем всегоКонстант, дат / / Число констант в конфігурації перем ідеї, сін, значен, пКонст

ОчістітьОкноСообщеній ()

дат = ТекущаяДата ()

/ / Створюємо ОП

пКонст = СоздатьОбект (Періодичний) всегоКонстант = МетаданниеКонстанта () для ін = 1 по всегоКонстант цикл

якщо МетаданниеКонстанта (ін) Періодичний = 0 тоді

продовжити / / Значення неперіодичних констант виводяться КонецЕсли

сін = МетаданниеКонстанта (ін) Синонім

/ / Виводимо повідомлення про константи, для яких заданий синонім якщо ПустоеЗначеніе (син) = 0 тоді

ідеї = МетаданниеКонстанта (ін) Ідентифікатор

/ / Прикріплюємо ОП до періодичної константі, яка має код іден

пКонстІспользоватьОбект (іден)

/ / Отримуємо значення періодичної константи на дату дат

значен = пКонстЗначеніеНаДату (дат) Повідомити (іден + ” + сін + ” + значен)

КонецЕсли

конецЦікла / / Для

КонецПроцедури / / Виконати

Приклад 2Виводиться історія зміни константи МінімальнаяЗарплата

процедура Виконати () / / Повязана з кнопкою Пуск обробки Проба перем значен, дат, пКонст

ОчістітьОкноСообшеній ()

/ / Створюємо ОП

пКонст = СоздатьОбект (Періодичний) спроба

/ / Прикріплюємо ОП до періодичної константі,

/ / Яка має код МінімальнаяЗарплата пКонстИспользоватьОбъект(&quotМинимальнаяЗарплата&quot)

виняток

Попередження (ОпісаніеОшібкі ()) повернення

конецПопиткі

/ / Позиціонуємо перед першим записом історії константи пКонстВибратьЗначенія ()

Повідомити (Історія константи МінімальнаяЗарплата)

/ / Метод ПолучітьЗначеніе позиціонує ОП на наступному записі про константі поки пКонстПолучітьЗначеніе () = 1 цикл

значен = пКонстЗначеніе / / Значення і ДатаЗнач атрибути ОП дат = пКонстДатаЗнач

Повідомити (Мінімальна заробітна плата + значен + руб Введена з + дат) конецЦікла / / поки

КонецПроцедури / / Виконати

Результат:

Історія константи МінімальнаяЗарплата

Мінімальна заробітна плата 8349 руб введена з 010198

Мінімальна заробітна плата 132 руб введена з 010700

Мінімальна заробітна плата 200 руб введена з 010101

Мінімальна заробітна плата 300 руб введена з 010701

Приклад3 Виводиться історія змін окладу Горюнової У В із зазначенням до кументов, що викликали ці зміни

процедура Виконати () / / Повязана з кнопкою Пуск обробки Проба перем сСотр_2, оп, окл, дат, док, пові

ОчістітьОкноСообщеній ()

сСотр_2 = СоздатьОбект (СправочнікСотруднікі_2)

/ / Шукаємо співробітника у всьому довіднику Сотруднікі_2

якщо сСотр_2НайтиПоНаименованию (Горюнова, 0) = 1 тоді

/ / Створюємо ОП

оп = СоздатьОбект (Періодичний)

/ / Прикріплюємо ОП до періодичного реквізиту Оклад знайденого співробітника опІспользоватьОбект (Оклад, сСотр_2ТекущійЕлемент ())

/ / Або простіше: опІспользоватьОбект (Оклад, сСотр_2)

/ / Позиціонуємо перед першим записом історії окладів Горюнової У В

опВибратьЗначенія ()

Повідомити (Історія окладів Горюнової Уляни Валеріївни”)

/ / Метод ПолучітьЗначеніе позиціонує ОП на наступному записі

/ / Періодичного реквізиту Оклад поки опПолучітьЗначеніе () = 1 цикл

окл = опЗначеніе / / Значення і ДатаЗнач атрибути ОП дат = опДатаЗнач

/ / Документ, що викликав зміна окладу

док = опТекущійДокумент ()

/ / Текст для повідомлення про документ пові = (ДокВибран () = 1,

” згідно з документом + ОпТекущійДокумент (),

” без оформлення документа )

Повідомити (Оклад + окл + призначений з + дат + пові) конецЦікла / / Поки

інакше

Попередження (Знайти пані Горюнова У В не вдалося”) КонецЕсли

КонецПроцедури / / Виконати

Результат

Історія окладів Горюнової Уляни Валеріївни

Оклад 2500 призначений з 201101 згідно з документом Наказ про прийом на роботу 2

Оклад 2700 призначений з 221101 згідно з документом ІзмененіеОклада 2

Оклад 3200 призначений з 301101 без оформлення документа

Має два атрибути: Значення і ДатаЗнач, які після створення ВП мають порожні значення відповідно невизначеного типу і типу Дата Після прикріплення до періодичного реквізиту або періодичної константі зберігають порожні значення, але атрибут Значення набуває тип, що співпадає з типом обєкта, до якого ОП прикріплений Атрибут ДатаЗнач тип зберігає І нарешті, отримують значення після позиціонування на запису, що відповідає обєкту, до якого прикріплений ОП Нагадаємо, що дані про константи і періодичних реквізитах довідників зберігаються у файлі 1SCONSTDBF

Приклади читання значень атрибутів ВП наведені в попередньому розділі

Ці ж атрибути спільно з методом Записати використовуються і для зміни значень періодичних реквізитів і констант

ПрикладЗмінюється розмір мінімальної заробітної плати, введеной з 010701, з 300 на 350 руб

процедура Виконати () / / Повязана з кнопкою Пуск обробки Проба перем значен, дат, пКонст

ОчістітьОкноСообщеній ()

дат = 01 072001 ;

/ / Створюємо ОП

пКонст = СоздатьОбект (Періодичний) спроба

/ / Прикріплюємо ОП до періодичної константі,

/ / Яка має код МінімальнаяЗарплата пКонстИспользоватьОбъект(&quotМинимальнаяЗарплата&quot)

виняток Попередження (ОпісаніеОшібкі ()) повернення

конецПопиткі

якщо пКонстНайтіЗначеніе (дат, 0) = 1 тоді

пКонстЗначеніе = 350 / / Нове значення константи на дату дат

пКонстЗапісать ()

Повідомити (Тепер мінімальна зарплата дорівнює +

Константа МинимальнаяЗарплатаПолучить (дат) + руб )

/ / Відновлюємо значення потрібної для роботи константи

пКонстЗначеніе = 300 / / Нове значення константи на дату дат

пКонстЗапісать () інакше

Попередження (Константи МінімальнаяЗарплата на дату + дат + немає”) КонецЕсли

КонецПроцедури / / Виконати

Джерело: Бартеньев О В 1С: Підприємство: програмування для всіх Базові обєкти та розрахунки на одній дискеті М: Діалог-МІФІ, 2005 464 с

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*