ПОЛІПШЕННЯ ЯКОСТІ ІНТЕРФЕЙСУ

У формах 1С або у створених натомість їх своїх формах ви можете розмістити полегшують обробку даних елементи управління Що ми, власне, і зробили, наприклад, у формі списку ЖЗ Зарплата_2 Елементи діалогу цієї форми дозволяють ввести всі записи, провести їх розрахунки і випустити необхідні супровідні розрахунки документи, не покидаючи форми списку ЖЗ

Крім розміщення додаткових елементів управління, можна зробити ревізію існуючих і видалити перенавантажуючі інтерфейс елементи Однак це не завжди просто зробити

Візьмемо, наприклад, іконку на панелі інструментів ЖЗ, що пропонує ство

дати новий документ У нашому випадку її бажано прибрати, оскільки список пред

бачуваних для вибору документів містить багато зайвих позицій (рис 81)

Рис 81 Список, що відкривається іконконйа панелі інструментів ЖЗ

Ми замінили цю іконку кнопкою Введення розрахунку, яка вказує для вибору список документів (див рис 725), що вводять розрахунки в ЖЗ Зарплата_2 Їх перелік, Нагадаемо ним, ми внесли в перерахування ВР 2 (розд 733)

Однак видалити іконку з панелі інструментів можна, тільки прибравши всю панель інструментів (Сервіс Панелі інструментів Додаткові Інструмен

тальні панелі вікон <Відключені>) Але навіть після цього аналогічний пункт залишиться в колонці Дії меню системи

Більшою мірою небажано присутність на панелі інструментів ЖЗ іконки

, Що пропонує видалити документ Для цього є щонайменше три причини

По-перше, користувач, спостерігаючи ЖЗ, не бачить документа, який йому предла

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

По-друге, користувач, перебуваючи в ЖЗ, спостерігає видалення не документ, а записів ЖЗ Така неузгодженість намірів і візуального результату дещо бентежить

По-третє, розрахунки, породжені видаляється документом, можуть мати неотмененного ручну правку І якщо помилкове видалення документа, розрахунки якого не мають ручної правки, можна поправити (для подолання помилки потрібно зняти позначку видалення документа у відповідному журналі документів і провести документ заново), то розрахунки з ручною правкою після відновлення помилково віддаленого документа доведеться провести заново

Ситуацію можна поправити, якщо в зумовлену процедуру ПріУдаленііДокумента, яку потрібно розташувати в глобальному модулі, додати виклик ніжепріводімой функції ЕстьЛіРучнаяПравка, яка як раз-то і фіксує наявність розрахунку з ручною правкою і забороняє при наявності такого видалення породив його документа Функцію доведеться розмістити в глобальному модулі, оскільки звідти здійснюється її виклик

/ / Поверне 0, якщо хоча б один розрахунок видаляється документа має ручну правку функція ЕстьЛіРучнаяПравка (док)

перем ЖЗ

ЖЗ = СоздатьОбект (ЖурналРасчетовЗарплата_2) жзВыбратьЗаписиПоДокументу (док)

/ / Переглядаємо всі розрахунки, породжені документом док

поки жзПолучітьЗапісь () = 1 цикл якщо жзІсправлена ​​= 1 тоді

повернення 0 / / Є ручна правка КонецЕсли

конецЦікла / / Поки

повернення 1 / / Ні розрахунків з ручною правкою КонецФункции / / ЕстьЛіРучнаяПравка

Саму ж зумовлену процедуру ПріУдаленііДокумента можна записати наступним чином:

/ / Зумовлена ​​процедура глобального модуля

/ / Інтерфейс процедури заданий у системі і містить два вхідних параметра: док і режим

/ / Док видаляється документ

/ / Параметр режим дорівнює одиниці, якщо проставляється DBF-позначка видалення,

/ / І дорівнює нулю, якщо документ отримує 1С-позначку видалення

/ / У нашій проблемі цей параметр нецікавий процедура ПріУдаленііДокумента (док, режим) якщо докПометкаУдаленія () = 1 тоді

повернення / / Якщо знімається позначка видалення, КонецЕсли / / То ніяких перевірок не виконуємо

/ / Досліджуємо документи, які породжують розрахунки

/ / Інші документи в цьому дослідженні не беруть участь

якщо (докВід () = Табель) або (докВід () = Премія) або (докВід () = НачПеріода_2) тоді

/ / Статус повернення буде дорівнює нулю, якщо розрахунки документа док мають ручну

/ / Правку При такому статусі повернення документ видалити не буде якщо ЕстьЛіРучнаяПравка (док) = 0 тоді

СтатусВозврата (0)

Попередження (Не можна видалити документ з ручною правкою”) КонецЕсли

КонецЕсли

КонецПроцедури / / ПріУдаленііДокумента

Подібного роду модифікації зацікавлений користувач може здійснити, дуже багато

Джерело: Бартеньев О В 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>

*

*