Архив метки: рутина

Версии релизов 1С

На заметку. Быстро узнать номер и дату последней версии любого официального релиза продуктов линейки 1С:Предприятие можно на ее родном сайте. Я сам полез туда сегодня чтобы выяснить номер релиза восьмерки (8.1) потому что все сильнее терзает меня мысль о переходе на эту платформу. Наверное скоро и Простой учет потихоньку начну переписывать.

Простой учет – подготовка

Для предварительного ознакомления с новыми функциями выложена ознакомительная версия конфигурации (46.0 подготовительная). Самое кардинальное изменение – система печати документов. Рекомендую пока не обновлять рабочие базы, а сначала потренироваться на копии.

Что изменилось:

  • добавлена обработка Печать, которая содержит единый набор модулей для формирования печатных форм документов, исходные таблицы вынесены в Общие таблицы конфигурации
  • добавлен справочник с настройками печати – меню Сервис – Параметры печати, для каждого документа можно определить неограниченное количество внешних форм со своими настройками, вплоть до определения внешней обработки, которая будет вызываться вместо встроенной обработки печати
  • внутреннюю обработку Печать также можно обойти если в папку ExtForms\PrnForms положить ПечатьДокументов.ert, она будет вызвана при нажатии на кнопку Печать, в качестве параметра ей передается контекст документа

Читать далее

Еще про штрих-коды

В Простом учете до сих пор штрих-код и артикул хранились как взаимоисключающие параметры, т.е. было отведено одно поле – Артикул, куда писался штрих-код если включен сканер штрих-кода. Наконец-то меня натолкнули на мысль, что это в корне неправильно, теперь добавлено отдельное поле для записи штрих-кода. Также добавлена кнопка для формирования штрих-кода, а в список констант добавлен Префикс, который будет использоваться для “самодельных” кодов.

2008-03-04_093256.png

Общепит

Сегодня удалось скрестить Рарус-Общепит (для Украины, версия 1.5) с последней версией Бухучета. Таким образом получилось обновить зарплату и налоговые накладные с их реестром, а заодно и экспорт отчетности в xml. Как оказалось все не так сложно и защита не пострадала. Так что если кому интересно – могу повторить на Вашей конфигурации.

Ускорение работы модуля

pro_think_100.jpg Ковырялся в коде справочника товаров и попробовал проанализировать работу формы списка в отладчике, по замеру производительности. Результат немного шокировал – самым тугим местом оказались вызовы методов Выбран() для текущего элемента справочника, немного менее тормознуто происходит обращение к реквизиту через точку, примерно также медлено – к константе через точку.

Вот как я провел эксперимент: выбрал одну функцию, вначале которой производится проверка текущего элемента методом Выбран(), включаю замер, открываю список товаров, выключаю замер, результат

0,005021 мсек

Теперь переписываю код с использованием метода ПустоеЗначение(), то-же действие, замер, результат

0,000132 мсек

Есть разница? Если сравнивать проценты времени выполнения от общего времени работы модуля, то получим в первом случае 12% а во втором только 0,41%.

Обращения к реквизитам  через точку исправляются еще проще, нужно просто внимательно проверить те, которые уже есть на форме и обращаться к ним непосредственно, а не как к атрибутам. С константами помогают, например, глобальные переменные, т.е. если значение константы используется в глобальных функциях или в функциях по каждой строке списка и вызывается часто, то имеет смысл присвоить значение константы глобальной переменной и везде использовать ее вместо этой константы.

Еще одно слабое место – периодические реквизиты. В моем случае были переписаны обращения к значениям через Получить() на простое обращение к атрибуту после применения к справочнику метода ИспользоватьДату(). Это значит, что если раньше было указано

Цена=Тов.Цена1.Получить(Дата1);

то теперь при открытии формы, а потом и при каждом изменении переменной Дата1 вызывается метод ИспользоватьДату(Дата1), а код переписан в виде:

Цена=Тов.Цена1; 

Такие пироги. Вот уж, что называется – век живи, век учись.

PS В Простом учете все указанные оптимизации проведены в версии 45.5

1C + Vista

Недавно обновил свой ноутбук, как сейчас водится они все продаются уже с установленной Windows Vista, на моей модели ее вариация Home Basic. В целом впечатления от системы хорошие, правда с требовательностью к ресурсам, конечно, смириться тяжело. Для меня самым важным был вопрос стабильной работы 1С с этой системой. Подводных камней пока нашлось два и, к счастью, они успешно пройдены.

  1. Работа внешних компонент требует запуск 1С с правами администратора. Это можно делать временным способом – вызывая пункт Запуск от имени… в контекстном меню, а можно открыть свойства ярлыка и на закладке Совместимость выставить опцию Выполнять от имени администратора. Но и это еще не все, потому что при каждом запуске будет срабатывать система контроля уровня доступа пользователя и спрашивать, а на самом деле вы хотите запустить эту программу или нет, по-буржуйски эта система называется UAC. Ее можно отключить, команда Выполнить, вводим msconfig, на последней закладке ищем пункт Отключить контроль учетных записей (UAC), жмем кнопку Запуск. Ну и еще – для дополнительной свободы действий 1С можно установить не в стандартный каталог Program files, а в любой другой, т.к. стандартный особенно опекается системой от вредных воздействий.
  2. Порядок сортировки. И тут не все гладко. Если запускать базу только на компьютере с Vistа, то вариант простой – в Конфигураторе, в меню Кодовая страница таблиц ИБ выбрать Текущие настройки системы. Хуже обстоит в сетевой версии, которая работает с компьютерами под другими Windows, там скорее всего прийдется отключить проверку кодовой страницы, хотя для верности стоит попробовать сначала выставить ее в соответствии с системными региональными настройками и попытаться запустить базу. Тут тоже есть грабли – ни в коем случае не ставить украинскую страницу, появляются ошибки совсем необъяснимые. Отключается проверка кодовой страницы просто: в папке с базой нужно создать файл (пустой, содержание не важно) с именем OrdNoChk.prm, версия 1С должна быть не ниже 26 (!).

На сегодняшний день других ошибок не замечено.

Список контрагентов

spisok_kontr.jpg Эксперименты со списком контрагентов в Простом учете выливаются в интересные формы. Появилась отдельная обработка с этим-же названием, доступна в бете, в меню Сервис – Список контрагентов. В чем ее смысл? Она имитирует список справочника, но при этом имеет ряд существенных отличий. Внешний вид можно увидеть на картинке, кликайте, описание основных функций ниже.

Читать далее

Альфа, бета, гамма

pro_think_100.jpg По моим наблюдениям среди читателей (среди вас) много тех, кто готов на эксперименты, я тоже их люблю. Вот поэтому на странице с программами выкладываю отдельно ссылку на текущую “черновую” версию конфигурации Простой учет. Коротко могу рассказать, над чем сейчас идет работа, кому интересно, выдвигайте свои пожелания или замечания.

Уже готово:

  • расширения справочника контрагентов: больше полей, категории, напоминания для контрагентов
  • настройка видимости полей в форме списка справочника – обработка переписана, теперь в товарах и контрагентах используется одинаковый механизм, может быть его надо еще к сотрудникам прикрутить (?)
  • контрагентов можно отмечать произвольным цветом, есть справочник Цвета, в котором хранятся характеристики цвета
  • обработка Загрузка справочника поддерживает загрузку категорий контрагентов, необходимо указать столбец с названием категорий, одному контрагенту можно присвоить несколько категорий если записать их в ячейку разделив точкой с запятой (;)

Ближайшие планы

  • напоминалки с указанием точного времени срабатывания (сейчас только дата)
  • расширенный поиск по контрагентам, по любым полям, категориям
  • в Перемещении – списание одновременно с нескольких складов
  • отчет Анализ продаж – формирование в любой валюте

Клиентов на учет!

simple_boy.jpg Сегодня от Простого учета отпочковалась небольшая конфигурация для учета клиентов. Вполне может быть что скоро она обрастет интересными фишками, как в свое время произошло и с самим Простым учетом. Поэтому если вам интересна тема учета взаимоотношений с клиентами, пожалуйста, высказывайте замечания и предложения. Конфигурация с небольшим количеством данных выложена на специальной странице, качайте, испытывайте, предлагайте.

Серверопад

surprise_boy.jpg За один день упали два сервера. В одном здании. Можно было подумать, что причина одинакова, но на самом деле логической связи не прослеживается – сутра приехал, занялся первым, через пару часов звонок – еще один упал. Симптомы разные, причины тоже, вышедшие из строя железки тоже разные. Ну и как такое называть? Карма? А моя карма или места, где сервера стоят? В-общем убил день на ковыряние в железе и переустановку систем и теперь думаю: ну почему я называюсь программистом, а руки у меня черные от грязи, рукава в пыли, голова в паутине? Одно утешение – приду домой, открою бук, напишу пару обработок в конфигураторе, глядишь, полегчает на сердце. Чего и вам желаю, занимайтесь любимым делом.