View previous topic :: View next topic |
Author |
Message |
himik
Joined: 18 Jul 2003 Posts: 8 Location: Иваницкий Сергей Occupation: ЗАО Химреактив Interests: Нижний Новгород
|
Posted: 08 Aug 2007 16:59 Post subject: Где можно найти полный справочник по функциям БЭСТ? |
|
|
Где можно найти полный справочник по функциям БЭСТ?
доступна(существует) ли такая функция которая бы возвращала значение ДТ(КТ) на дату по аналитическому счету в АРМе Товары?
для HFileEval
в АРМе гл.бух, в групповых операциях, есть функция ДТС(), КТС() . |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 09 Aug 2007 11:22 Post subject: |
|
|
Справочник формируется тут на форуме по функциям отсутствующим в HELP.
Он формируется на основании Ваших запросов.
Описание интересующих Вас функций будет выложено сегодня в течении дня. |
|
Back to top |
|
|
itman
Joined: 05 Apr 2002 Posts: 1247 Location: Ильин Е.Ю. Occupation: Cio Interests: Кинель
|
Posted: 09 Aug 2007 11:28 Post subject: |
|
|
Обсуждалось ранее в материалах форума 2006 год |
|
Back to top |
|
|
himik
Joined: 18 Jul 2003 Posts: 8 Location: Иваницкий Сергей Occupation: ЗАО Химреактив Interests: Нижний Новгород
|
Posted: 09 Aug 2007 14:43 Post subject: |
|
|
Я по форуму полазил но что-то не нашел.
А задача следующая: есть два счета 621 и 622 причем на 621 должна существовать(и существует благодаря титаническим усилиям бухов) только дебетовая часть а на 622 только кредитовая, ПОЧЕМУ ТАК СДЕЛАЛИ НЕ СПРАШИВАЙТЕ - НЕ ЗНАЮ.
Проблема возникает при формировании проводок т.е. необходимо,
1, если на 622 есть сумма превышающая сумму накладной то надо делать дополнительную проводку ДТ622 - КТ 621
2, если на 622 есть сумма меньшая чем сумма накладной то надо делать дополнительную проводку ДТ622 - КТ 621 на сумму КТ622.
вот такая загогулина.
Сейчас все делается из АРМа Глав. бух. групповые операции.
Code: | *Закрытие 622->621
А1 = "622"
ВВОД(("Введите дату расчета", Д1, "Д"))
ПОКА (ШАУ(А1) = 1)
А2 = "621" + ПОД_СТР(А1,4,14)
ШАУ_ИМЯ(И2,А2)
Б1=КТС(А1,Д1)
Б2=ДТС(А2,Д1)
ЕСЛИ (Б1>0 _И_ Б2>0)
ЕСЛИ (Б1>=Б2)
П(Д1, "", А1, А2, "", Б2)
ИНАЧЕ
П(Д1, "", А1, А2, "", Б1)
ВСЕ_ЕСЛИ
ВЫВОД "622КТ- ",Б1," 621ДТ- ",Б2, И2
ВСЕ_ЕСЛИ
ВСЕ_ПОКА |
но это очень долго около 2х
Я хочу написать обработчик на сохранение...
может есть у кого мысли какие, я плохой фоксист(клипперист) я больше на дельфи... |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 12 Aug 2007 23:49 Post subject: |
|
|
Сам язык программирования внешний отчетов работает так (для расчета сальдо)
Code: | // ДТС0 КТС0 ДТС КТС
CASE nFunc == 1 .OR. ;
nFunc == 2 .OR. ;
nFunc == 4 .OR. ;
nFunc == 5
nLen := MyLen( aPar, 1 )
aType := MyType( aPar, { 'C', 'CD' } )
IF nLen > 1
IF ValType(aPar[2])=='C' .AND. SUBSTR(aPar[2],5,1) == '.'
// период опеделен ГГГГ.ММ
aPar[2] := EOM(STOD( LEFT(aPar[2],4)+RIGHT(aPar[2],2)+'01'))//ALEX
ELSE
dDate := MyDate( aPar[2], aType[2], .F. )
if nLen>2
dDate1 := MyDate( aPar[3], aType[2], .F. )
endif
IF EMPTY(dDate)
aPar[2] := dSet_Date
ELSE
aPar[2] := dDate
if nLen>2
aPar[3] := dDate1
endif
ENDIF
ENDIF
ENDIF
IF nLen == 1
RBalans()
nRez := Saldo({'00','10','','01','11'}[nFunc], aPar )
ELSE
nRez := DaySaldo({'00','10','','01','11'}[nFunc], aPar, at('*',aPar[1])<>0 )
ENDIF |
|
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 12 Aug 2007 23:51 Post subject: |
|
|
Так же на этом языке Вы можете вызвать плагин на харборе через функцию
|
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 12 Aug 2007 23:55 Post subject: |
|
|
А вот дальше Вам решать где делать проводку...
Если в документе то в формуле поводки применять плагин.
Если в групповых операциях, то напишите здесь.
В любом случае своим плагином Вы сальдо рассчитаете за секунду максимум (уже проверено ) если по конкретному клиенту расчет делать |
|
Back to top |
|
|
himik
Joined: 18 Jul 2003 Posts: 8 Location: Иваницкий Сергей Occupation: ЗАО Химреактив Interests: Нижний Новгород
|
Posted: 13 Aug 2007 11:22 Post subject: |
|
|
Спасибо, но есть вопросы(возможно глупые).
В коде присутствуют несколько функций и переменных(MyLen, MyType, MyDateб aPar[])откуда они взялись и что означают.
Как я понал основная функция
Saldo({'00','10','','01','11'}[nFunc], aPar )
можно узнать про ее параметры поподробне |
|
Back to top |
|
|
itman
Joined: 05 Apr 2002 Posts: 1247 Location: Ильин Е.Ю. Occupation: Cio Interests: Кинель
|
Posted: 13 Aug 2007 12:24 Post subject: |
|
|
Схема получения сальдо по счетам простая.
Берется начальный остаток по интересующему счету и аналитике.
складываются суммы операций по дебету счета и аналитики, вычитаются суммы операций по кредиту счета и аналитики. При этом принимается во внимание дата операции.
Константин прав, чтобы не разбираться с исходниками - может потратить время на написание своей функции? |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 13 Aug 2007 15:53 Post subject: |
|
|
himik wrote: | Спасибо, но есть вопросы(возможно глупые).
В коде присутствуют несколько функций и переменных(MyLen, MyType, MyDateб aPar[])откуда они взялись и что означают.
Как я понал основная функция
Saldo({'00','10','','01','11'}[nFunc], aPar )
можно узнать про ее параметры поподробнее? |
Описание функции выложил в общий перече |
|
Back to top |
|
|
himik
Joined: 18 Jul 2003 Posts: 8 Location: Иваницкий Сергей Occupation: ЗАО Химреактив Interests: Нижний Новгород
|
Posted: 20 Aug 2007 15:27 Post subject: |
|
|
Спасибо. |
|
Back to top |
|
|
|