СБиС news №45 от 16.05.01
Просто цитата :)
«…Сделать же нужно вот что:
назначить на всякого податного, кем он ни будь, единый налог, невеликий, заранее
известный и взимаемый сразу, со всех выплат, выдач, сделок и доходов. И дань
эта должна не превышать одной десятой, потому что святая церковь еще со стародавних
времен на богатом своем опыте проверила и убедилась: десятину человек платить
согласится, а больше — ни в какую, даже под страхом кары Отца Небесного. А
это значит, что и искушать нечего…»
Борис Акунин, «Пелагия и белый бульдог», Глава шестая.
|
|
Новое в функции «ДокКопия»
В версии 1.9 была добавлена возможность указать при вызове
функции «ДокКопия» дату создаваемого документа. Таким образом, в общем виде
вызов функции выглядит теперь так:
ДокКопия("Тип",Номер[,Дата[,ДатаНового]]
[,Сумма[,$Сумма]]
[,Лицо1[,Лицо2[,"Примечание"]]]);
Параметры |
|
Тип
|
название типа копируемого документа
|
|
Номер
|
номер копируемого документа
|
|
Дата
|
дата копируемого документа
|
|
ДатаНового
|
дата нового документа, если этот параметр не указан, то берётся
текущая дата
|
|
Сумма
|
сумма нового документа
|
|
$Сумма
|
сумма нового документа в валюте
|
|
Лицо1
|
Лицо1 для
нового документа
(объект или строка с кодом лица)
|
|
Лицо2
|
Лицо2 для
нового документа
(объект или строка с кодом лица)
|
|
Примечание
|
примечание для нового документа
|
|
Функция формирует копию указанного
документа. Копируемый документ определяется по типу, номеру и возможно дате.
Новому документу присваивается номер следующий по порядку, а дата, либо указанная
при вызове функции, либо, если данный параметр был опущен, текущая.
Кстати, многие из вышеперечисленных параметров функции не являются обязательными и их можно опустить
(такие параметры заключены в квадратных скобках). В самом минимальном
варианте вызов функции может содержать лишь два параметра – тип и номер копируемого
документа.
Если какой-то из
параметров «Сумма», «$Сумма», «Лицо1», «Лицо2», «Примечание» был опущен, то
берётся соответствующее поле копируемого документа.
В качестве
параметров «Лицо1» и «Лицо2» могут использоваться различные
объекты («Лицо1», «Лицо2», «Наим» и
т.д.), значения которых определены в документах. Кроме того, можно использовать
строковые константы с кодом соответствующего аналитического объекта. Напомним,
что эти коды определены следующим образом: для «Организаций» и «Частных
лиц» - «ИНН», для «Аналитик»
- «Имя». При этом при поиске соответствующего объекта сначала просматривается
справочник аналитик, затем справочник организаций.
Дмитрий Жеглов (jeglov@tensor.ru)
Местонахождения ОС
в версии 1.9
В версии 1.9 теперь хранится вся история движения ОС по
местонахождениям. Теперь всегда можно построить инвентарную ведомость по местонахождениям
на какую-либо дату и она покажет реальное расположение ОС на указанную дату (в
отличие от версии 1.8 и младше, где при перемещении <Ctrl+M> ОС из одного
местонахождения в другое информация о старом месте терялась).
В связи с этим изменилась и накладная перемещения ОС.
Во-первых, она стала списочным документом, т.е. одной накладной можно передать
сразу несколько ОС указанному МОЛу. Во-вторых, для каждого передаваемого ОС
можно указать новое местонахождение (а можно и оставить старое). Таким образом,
для того, чтобы переместить ОС из одного места в другое, нужно будет оформить
накладную перемещения – перемещение ОС с помощью <Ctrl+M> запрещено.
Для того,
чтобы в отчете или правиле операции получить местонахождение ОС на определенную
дату везде, где встречается объект «СРЕДСТВО», можно использовать функцию «Место(дата)»,
где параметр «Дата» и есть желаемая дата, на которую это место хочется узнать.
Дмитрий Зафиевский (dmitry@tensor.ru)
Функция «НазваниеРаздела»
В версии 1.9 в качестве замены внешней функции
«ПолныйРаздел» из файла «sbis.prg» была
сделана похожая по назначению внутренняя функция «НазваниеРаздела».
Синтаксис её следующий:
НазваниеРаздела("ИмяПоля"[,"ИмяИерархии"]);
Параметры
|
|
ИмяПоля
|
имя текстового поля, которое используется
для именования разделов
|
|
ИмяИерархии
|
имя иерархии
|
|
Функция берёт поле, указанное в
первом параметре, и строит для записи, содержащей это поле, полное название
раздела, в котором данная запись находится. В результате получается фактически
то же самое, что Вы видите в верхней строке любого иерархического справочника.
Например, чтобы получить полное название подразделения сотрудника, пишем:
НазваниеРаздела("ФИО");
Тут, правда, есть одно «но». Не
всегда сотрудник напрямую доступен для программы. В этому случае нужно явно
указать, от какого объекта брать запись:
КакойтоСотрудник.НазваниеРаздела("ФИО");
Некоторые таблицы в СБиС’е содержат
одновременно несколько иерархий. Например, складская картотека – иерархия
«Склады» и «Прайс-лист». В этом случае, чтобы получить название раздела
прайс-листа, нужно явно указать имя иерархии:
НазваниеРаздела("Наименование","Прайс-лист");
Дмитрий Новиков (demon@tensor.ru)
Функция «НазваниеТаблицы»
Ещё появилась функция «НазваниеТаблицы». Она возвращает имя
той таблицы, в контексте которой выполняется. То есть, если в правиле операции
написать:
Сообщить(НазваниеТаблицы);
…то при закрытии расходной накладной будет выдано – «Документ».
Если же написать:
ДляВсех(Наименований)
Сообщить(НазваниеТаблицы);
…то будет уже выведено – «Расход».
Чтобы получить имя таблицы для конкретного объекта, пишем
так:
Сообщить(Лицо1.НазваниеТаблицы);
Ну, и в заключение, как при помощи этой функции определить
тип лица:
Сообщить(Лицо1.Лицо_.НазваниеТаблицы);
Тем не
менее, переменная «ТипЛица» в версии 1.9 ещё доступна.
Дмитрий Новиков (demon@tensor.ru)
Изменение флагов
Как уже говорилось в 40-ом выпуске СБиС news, в новой версии
появилась возможность изменять поля типа «флаги». Делать это можно двумя путями…
Каждому флагу – своя буква
Полю присваивается строка, в которой каждому флагу
соответствует свой символ в строке. Буквально по порядку: символ-флаг. Если в
присваиваемой строке в соответствующей флагу позиции находится подсвеченный
символ (или, если такового нет – звёздочка – «*»), то такой флаг устанавливается.
Если же там будет пробел, флаг сбрасывается.
Например, чтобы в плане счетов установить, что счёт будет
пассивный, пишем:
Признаки = " П";
Обратите внимание, в присваиваемой строке сначала идёт
пробел – он сбрасывает флаг «Активный». А потом идёт буква «П» - ей
устанавливается флаг «Пассивный».
Поимённая установка флагов
Полю присваивается строка, в которой поимённо перечислены
изменяемые флаги. Если перед именем флага указан «+» (или ничего, если в
начале строки), соответствующий флаг будет установлен. Если же перед названием
флага указан знак «-», то флаг будет сброшен.
Например, чтобы в плане счетов установить, что счёт будет
пассивный, пишем просто:
Признаки = "Пассивный";
Обратите внимание, что здесь в отличие от предыдущего
примера ничего не говорится о флаге «Активный». Чтобы ещё и его сбросить,
пишем:
Признаки = "-Активный+Пассивный";
Ну, а
вообще, менять флаги нужно очень осторожно и со знанием дела, поскольку дело
это тонкое и лучше его лишний раз не трогать.
Дмитрий Новиков (demon@tensor.ru)
О регистрации в 1.9
В окне «Помощь/О задаче» теперь отображается, на сколько
пользователей зарегистрирована текущая база данных и сам код регистрации.
И теперь для
регистрации при смене версии программы или типа базы данных всегда даётся десять
дней «на раскачку».
Дмитрий Новиков (demon@tensor.ru)
<<< Предыдущий выпуск | Архив выпусков | Следующий выпуск >>>
|