BEST logo логотип компании БЭСТ - программы для бизнеса ПРОДАЖИ
+7 (991) 312-04-37
trade@bestnet.ru
ПОДДЕРЖКА
+7 (495) 775-66-76
consult@bestnet.ru
СКАЧАТЬ
Обновления
Дистрибутивы
Авторизация

Логин:
Пароль:
Забыли свой пароль?
Регистрация
ВАШ ВОПРОС

Доступ к Личному кабинету закрыт!
Как получить доступ?


Главная  / Поддержка  / Форум  / Публичные форумы  / Программирование приложений  / Спец функции реестр счетов-фактур

Форум

Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
Спец функции реестр счетов-фактур
 
БЭСТ-4+ SP42
Арм -> Управления продажами. Реестр счетов-фактур.

Использую спец функцию на проверку документа, текст:
{pro\plugins\print\real\acc.txt}

Private lRes, aSetKey
Private Rgt_Date, Cur_Date, Doc_Date
private cIDENT

lRes := .T.
aSetKey :=SaveSetKey()
DbPush()

cIDENT := "03УПРАВЛЕНИЕ ОП.ПЕРИОДОМ"

NetUse("md", LoadPath() + "sclad\memdat.dbf",,.F.)
md->(OrdSetFocus("TAG_IDENT"))
md->(SetScope())
md->(SetScope("UPPER(VALUE)", cIDENT))
md->(DbGoTop())
Rgt_Date := CToD(AllTrim(md->value))

md->(dbClosearea())

Doc_Date := sh_fact->tek_data

If Rgt_Date > Doc_Date
sayandwait("Дата документа меньше установленного для оперативного периода")
lRes := .F.
// __keyboard(chr(27))
Else
lRes := .T.
EndIf

DbPop()
RestSetKey(aSetkey)

Return lRes

{}

Изменяю дату, выдаётся предупреждение, изменяется дата на новую, штатно выхожу из документа.

Необходимо при дате док меньшей оперативного периода док возвращался в режим редактирования.
 
Нет БЭСТа перед глазами чтобы проверить сразу.
Но мысли такие.
1. Оперативный период можно подглять в public или private переменных через отладчик.
2. Сравнивать надо с переменной, в которой лежит дата счета-фактуры а не со значением поля, поскольку на момент события "проверка документа" запись в таблицу еще не производилась.
 
Перефразирую постановку задачи.

При выходе из редактирования документа необходимо:
невыполнение "моего" условия, возврат в редактирование документа
или
хотя бы не сохранение введённых данных.

+ Малю...сенький пример please.
 
FUNCTION testdoc()
Local nOut
nOut:=NoOrYes({"Разрешить выход ?"},1,{"ДА","НЕТ"})
If nOut=2
Return .F.
EndIf
RETURN .T.

Подвешиваем на проверку документа
Страницы: 1
Читают тему (гостей: 1)