Тогда представляйте себе, что на базу установлен скоп, а затем для каждой записи выполняется выражение фильтра. Если выражение возвращает .T., то запись показывается, если .F., то пропускается.
Вы точно имеете в виду расчётную ведомость? Не помню, чтобы там можно было как-либо воздействовать на размещение данных. Может быть Вы имеете в виду лицевой счёт Т-54?
В расчётной ведомости сумма "итого" не включает в себя суммы тех начислений, у которых параметр "Входит в итого лицевого счёта" выбран "нет".
Возможно, что двух параметров :data быть не может. Даже если Вы оба раза используете один и тот же параметр, необходимо в первом случае написать :data1, а во втором :data2.
"Ковырять внутри форм" не соответствует парадигме программы, которая не задумывалась и не позиционируется как средство разработки. При добавлении точки вызова события требуется, чтобы в этой точке состояние системы было каким-то образом зафиксировано. Иначе, в перспективе, устанавливаемые обновления могут запросто разрушить логику работы плагина.
При определённом количестве свободного рабочего времени и готовности заказчика его оплачивать, можно переписать весь БЭСТ почти с нуля. Как говорила мне когда-то знакомый бухгалтер, "Алексей, мы ведь работаем не для того, чтобы наработаться".
Саак Шахламджян пишет:
Можно было бы на это событие подвесить все что Вам требуется!
Можно. Но зачем ради такой ерунды переписывать работу с картотекой?
Я ведь не прошу чего-то такого хитро вывернутого и срочно. Событие "выход из документа" симметрично событию "вход в документ" и является обязательным для обеспечения логической совершенности системы.
Пример, когда не помогут массивы и переменные.
При открытии существующего заказа требуется включить в прайс-лист складские карточки, использованные в заказе. После корректировки заказа открытые карточки необходимо закрыть. Чтобы они не мешались при выписке другого заказа.
Испытываю потребность в ещё одной точке вызова плагинов. Ситуация такова. В событии "Вход в документ" производится некая подготовительная работа, плодами которой пользуется документ. При сохранении документа происходит откат подготовительной работы. А выход из документа по ESC не отслеживается. Получается что результаты подготовительной работы остаются в базе, мешая впоследствии.
Попытаюсь, конечно, придумать что-то через "работа в реестре". Но было бы удобней иметь событие "Выход из документа", запускаемое независимо от того, как был осуществлён выход из документа.
Я бы перенёс документы за требуемый период из баз каталога bank\arc\ в базы каталога bank\.
И в базе bank\memdat исправил значение поля value в строке, у которой поле ident равно "НАЧАЛО ПЕРИОДА".
Расскажите мне, пожалуйста, почему при выполнении следующего плагина в БЭСТ-4+ возникает ошибка.
Может я чего-то не допонимаю в ООП?
Код
private Obj:=Child():new()
Obj:SayGoodBye()
return
#include "hbclass.ch"
CLASS Parent
EXPORTED:
METHOD SayHello
ENDCLASS
METHOD SayHello CLASS Parent
sayandwait('Hello!')
return self
CLASS Child FROM Parent
EXPORTED:
METHOD SayGoodBye
ENDCLASS
METHOD SayGoodBye CLASS Child
::SayHello()
sayandwait('GoodBye!')
return self
Ошибка возникает в третьей снизу строчке (::SayHello()) при повторном вызове плагина.
Сообщения об ошибке не получаю, лога нет. БЭСТ (sclad.exe) молча слетает или наглухо виснет.
Добрый день.
Для того, чтобы телефон выводился правильно, надо перед редактированием привести его к виду "(99999)999-99-99",
то есть, добавить скобки и чёрточки. Вместо имени поля используйте private-переменную. В bPreGet инициализируйте переменную значением поля по заданному шаблону. В bPost сохраните изменённое значение в базу.