МЕНЮ


Фестивали и конкурсы
Семинары
Издания
О МОДНТ
Приглашения
Поздравляем

НАУЧНЫЕ РАБОТЫ


  • Инновационный менеджмент
  • Инвестиции
  • ИГП
  • Земельное право
  • Журналистика
  • Жилищное право
  • Радиоэлектроника
  • Психология
  • Программирование и комп-ры
  • Предпринимательство
  • Право
  • Политология
  • Полиграфия
  • Педагогика
  • Оккультизм и уфология
  • Начертательная геометрия
  • Бухучет управленчучет
  • Биология
  • Бизнес-план
  • Безопасность жизнедеятельности
  • Банковское дело
  • АХД экпред финансы предприятий
  • Аудит
  • Ветеринария
  • Валютные отношения
  • Бухгалтерский учет и аудит
  • Ботаника и сельское хозяйство
  • Биржевое дело
  • Банковское дело
  • Астрономия
  • Архитектура
  • Арбитражный процесс
  • Безопасность жизнедеятельности
  • Административное право
  • Авиация и космонавтика
  • Кулинария
  • Наука и техника
  • Криминология
  • Криминалистика
  • Косметология
  • Коммуникации и связь
  • Кибернетика
  • Исторические личности
  • Информатика
  • Инвестиции
  • по Зоология
  • Журналистика
  • Карта сайта
  • Программное обеспечение пункта обмена валюты банка

    declare MMS[ 6],MOP[ 6],MCO[ 6],MNT[12],MHP[10]

    // Массив этикеток строки подсказки

    MHP[ 1]="Помощь"

    MHP[ 2]="Добав."

    MHP[ 3]="Список"

    MHP[ 4]="Поиск "

    MHP[ 5]="Фильтр"

    MHP[ 6]="Сумма "

    MHP[ 7]="Печать"

    MHP[ 8]="Удал. "

    MHP[ 9]="Запись"

    MHP[10]="Выход "

    // Массив опций главного меню системы

    MOP[ 1]=" ~О~перации "

    MOP[ 2]=" ~С~правочники "

    MOP[ 3]=" о~Т~четы "

    MOP[ 4]=" ~А~рхив "

    MOP[ 5]=" ~Р~азное "

    MOP[ 6]=" ~В~ыход "

    // Массив координат главного меню системы

    MCO[ 1]=2

    MCO[ 2]=12

    MCO[ 3]=25

    MCO[ 4]=33

    MCO[ 5]=40

    MCO[ 6]=48

    // Массив строк помощи

    MMS[ 1]="Оформление покупки/продажи валюты"

    MMS[ 2]=" Ввод справочных данных "

    MMS[ 3]=" Вывод отчетов "

    MMS[ 4]=" Работа с архивом "

    MMS[ 5]=" Настройки системы "

    MMS[ 6]=" Выход в MS DOS "

    // Массив названий месяцев

    MNT[ 1]="Января"

    MNT[ 2]="Февраля"

    MNT[ 3]="Марта"

    MNT[ 4]="Апреля"

    MNT[ 5]="Мая"

    MNT[ 6]="Июня"

    MNT[ 7]="Июля"

    MNT[ 8]="Августа"

    MNT[ 9]="Сентября"

    MNT[10]="Октября"

    MNT[11]="Ноября"

    MNT[12]="Декабря"

    setcolor(At_M0_F)

    @ 00,00,24,79 BOX " - --"

    setcolor(At_M0_N)

    @ 00,01 SAY "Обменный пункт банка"

    // Проверка пароля пользователя (3 попытки)

    for II=1 to 3

    setcursor(CUR_STYLE)

    setcolor(AT_E_F)

    _open_n(07,22,11,57)

    setcolor(AT_E_N)

    _saystr(09,24,"Введите Ваш пароль :")

    KL=0

    TST=""

    do while .T.

    KL=inkey(0)

    do case

    case KL=8

    TST=substr(TST,1,len(TST)-1)

    case KL=13

    exit

    otherwise

    TST=TST+chr(KL)

    endcase

    @ 09,45 SAY repl(" ",len(TST)+1)

    @ 09,45 SAY repl("[pic]»,len(TST))

    if len(TST)=10

    exit

    endif

    enddo

    if TST=PAROL

    @ 09,24 SAY «OK «

    exit

    else

    @ 09,24 SAY «Пароль неправильный «

    tone(1500,2)

    tone(1700,2)

    endif

    next

    if TST<>PAROL

    setcolor("W/N")

    clear screen

    return

    endif

    restore screen

    // Настройка принтера

    if M__EN=2

    set printer to BUFFER.PRN

    else

    M__EN=1

    set printer to

    endif

    setcursor(0)

    FM=.F.

    setcolor(At_M0_F)

    @ 00,01 SAY space(80)

    do while .T. // Главное меню системы

    if FM

    setcolor(At_M0_F)

    @ 00,00,24,79 BOX " - --"

    @ 00,01 SAY space(80)

    FM=.F.

    endif

    setcolor("+W/B,+GR/R,,,+BG/B")

    MEN=selopt(MEN,MOP,MCO,MMS,0,.F.,.T.,At_M0_S,At_M0_U)

    if lastkey()=27.or.MEN=0

    if doors()

    exit

    else

    loop

    endif

    endif

    MSCR=savescreen(0,0,24,79)

    do case

    case MEN=1

    operation()

    case MEN=2

    dictonary()

    case MEN=3

    report()

    case MEN=4

    arch()

    case MEN=5

    system()

    case MEN=6

    if doors()

    exit

    endif

    endcase

    restscreen(0,0,24,79,MSCR)

    enddo

    setcolor()

    release all

    return 0

    Функция вызова меню «Операции»

    Function OPERATION

    local M1[5],M2[5],M3[5],MENU

    M1[1]=" ~П~окупка валюты "

    M1[2]=" п~Р~одажа валюты "

    M1[3]=" ~К~онверсия валюты "

    M2[1]=2

    M2[2]=3

    M2[3]=4

    MENU=1

    _open_n(1,0,7,23,B_SINGLE+" ",AT_M1_F)

    do while .T.

    MENU=selopt(MENU,M1,M2,M3,2,.T.,.F.,AT_M1_S,AT_M1_U)

    if MENU=0.or.lastkey()=27

    clear type

    exit

    endif

    operCurrency(MENU)

    enddo

    return 0

    Функция вызова меню ведения справочников

    Function DICTONARY

    local M1[4],M2[4],M3[4],MENU,CL

    M1[1]=" ~С~писок валют "

    M1[2]=" ~К~урсоы валют "

    M1[3]=" коды ~Ц~енностей "

    M1[4]=" Коды ~Д~окументов "

    M2[1]=2

    M2[2]=3

    M2[3]=4

    M2[4]=5

    MENU=1

    _open_n(1,10,6,32,B_SINGLE+" ",AT_M1_F)

    do while .T.

    MENU=selopt(MENU,M1,M2,M3,12,.T.,.F.,AT_M1_S,AT_M1_U)

    if MENU=0.or.lastkey()=27

    clear type

    exit

    endif

    dictonEdit(MENU)

    enddo

    clear type

    return 0

    Функция вызова меню «Отчеты»

    Function REPORT

    local M1[4],M2[4],M3[4],MENU,CL

    M1[1]=" Реестр по по~К~упке валюты "

    M1[2]=" Реестр по ~П~родаже валюты "

    M1[3]=" Реестр по ~К~онверсии валюты "

    M1[4]=" справка об ~О~статках наличной валюты "

    M2[1]=2

    M2[2]=3

    M2[3]=4

    M2[4]=5

    MENU=1

    _open_n(1,23,7,64,B_SINGLE+" ",AT_M1_F)

    do while .T.

    MENU=selopt(MENU,M1,M2,M3,25,.T.,.F.,AT_M1_S,AT_M1_U)

    if MENU=0.or.lastkey()=27

    clear type

    exit

    endif

    reportOut(MENU)

    enddo

    clear type

    return 0

    Функция вызова меню «Разное»

    Function SYSTEM

    private M1,M2,M3,MENU

    declare M1[4],M2[4],M3[4]

    M1[1]=" ~У~становки "

    M1[2]=" ~К~опия данных "

    M1[3]=" ~И~ндексные файлы "

    M1[4]=" ~С~чета банка "

    M2[1]=2

    M2[2]=3

    M2[3]=4

    M2[4]=5

    MENU=1

    SCRS=savescreen(0,0,24,79)

    _open_n(1,38,6,58,B_SINGLE+" ",AT_M1_F)

    do while .T.

    MENU=selopt(MENU,M1,M2,M3,40,.T.,.F.,AT_M1_S,AT_M1_U)

    if MENU=0.or.lastkey()=27

    clear type

    exit

    endif

    do case

    case MENU=1

    setupm(M1[MENU])

    case MENU=2

    dublicat(M1[MENU])

    case MENU=3

    case MENU=4

    GetAccount()

    endcase

    enddo

    restscreen(0,0,24,79,SCRS)

    clear type

    return 0

    Функция вызова меню «Установки»

    Function SETUPM

    parameters OPT

    private

    SCR,M1[4],M2[4],M3[4],MENU,OPT,A__RCROAD,P__AROL,D__ATROAD,D__UBLDSK,U__SERD

    SK,P__AGELEN,P__AGESIZ,E__TLF,U__KZGL,U__KTXT,S__ETNUM,FMOD

    ROW=row()

    M1[1]=" ~П~ароль "

    M1[2]=" пути к ~Д~анным "

    M1[3]=" ~У~становки принтера "

    M1[4]=" ~Ц~вета "

    M2[1]=ROW+2

    M2[2]=ROW+3

    M2[3]=ROW+4

    M2[4]=ROW+5

    MENU=1

    FMOD=0

    SCR=savescreen(0,0,24,79)

    do while .T.

    _open_n(ROW+1,38,ROW+6,61,B_SINGLE+" ",AT_M2_F)

    MENU=selopt(MENU,M1,M2,M3,40,.T.,.F.,AT_M2_S,AT_M2_U)

    if MENU=0.or.lastkey()=27

    clear type

    exit

    endif

    if MENU=4

    FM=.T.

    endif

    save screen to SESCR

    FMOD=setup(MENU)

    restore screen from SESCR

    enddo

    restscreen(0,0,24,79,SCR)

    if FMOD=1

    P__AROL = crpt(KEYCR,trim(P__AROL))

    D__ATROAD = trim(D__ATROAD)

    A__RCROAD = trim(A__RCROAD)

    U__KZGL = trim(U__KZGL)

    U__KTXT = trim(U__KTXT)

    if M__EN=2

    set Printer to BUFFER.PRN

    else

    M__EN=1

    set Printer to

    endif

    if Z__PR=2

    ZEROPRINT=.F.

    else

    Z__PR=1

    ZEROPRINT=.T.

    endif

    save all like ?__* to v

    PAROL =uncrpt(KEYCR,P__AROL)

    DATROAD =D__ATROAD

    ARCROAD =A__RCROAD

    DUBLDSK =D__UBLDSK

    USERDSK =U__SERDSK

    PAGELEN =P__AGELEN

    PAGESIZ =P__AGESIZ

    ETLF =E__TLF

    UKZGL =U__KZGL

    SETNUM =S__ETNUM

    UKTXT =U__KTXT

    endif

    clear type

    return 0

    Функция вызова меню «Копия данных»

    Function DUBLICAT

    parameters OPT

    private M1,M2,M3,MENU,OPT,DSCR,ROW

    ROW=row()

    declare M1[2],M2[2],M3[2]

    M1[1]=" ~С~охранение данных "

    M1[2]=" ~В~осстановление данных "

    M2[1]=ROW+2

    M2[2]=ROW+3

    MENU=1

    popmenu(ROW,38,ROW+5,64,OPT,2,AT_M2_F)

    do while .T.

    MENU=selopt(MENU,M1,M2,M3,40,.T.,.F.,AT_M2_S,AT_M2_U)

    if MENU=0.or.lastkey()=27

    clear type

    exit

    endif

    save screen to DSCR

    do case

    case MENU=1

    OPT=M1[MENU]

    savedata(OPT)

    case MENU=2

    OPT=M1[MENU]

    restdata(OPT)

    endcase

    restore screen from DSCR

    enddo

    clear type

    return 0

    Функция - селектор операций

    Function OPERCURRENCY

    #Include "Inkey.ch"

    #Include "Box.ch"

    parameters N_OPER

    do case

    case N_OPER=1

    ByeCurrency()

    case N_OPER=2

    SaleCurrency()

    case N_OPER=3

    ConvertCurrency()

    endcase

    return 0

    Функция регистрации покупки валюты

    Function ByeCurrency

    local SCR

    use (DATROAD+"Document") index (DATROAD+"Document") alias DOC new

    SCR=savescreen(1,0,23,61)

    CLR=setcolor(AT_G_F)

    _open_n(1,0,20,59,B_SINGLE+" ",AT_G_F)

    @ 08,0 say "+----------------------------------------------------------+"

    @ 14,0 say "+----------------------------------------------------------+"

    setcolor(AT_G_N+","+AT_G_S+",,,"+AT_G_U)

    set key K_F3 to getcode()

    _nort("1010000001")

    FINIT=.T.

    do while .T.

    if FINIT

    SER =space(2)

    NUM =0

    FIO =space(35)

    DOC =space(10)

    CDOC =0

    DSER =space(10)

    DNUM =0

    REZ =space(1)

    NREZ =space(1)

    BCODC =10

    BCODCUR=2

    BSUM =0

    SCODC =0

    SCODCUR=0

    SSUM =0

    SSUMS=""

    BSUMS=""

    @ 12,2 say space(57)

    @ 13,2 say space(57)

    @ 18,2 say space(57)

    @ 19,2 say space(57)

    setcolor(AT_G_U)

    @ 11,8 say 0 picture "999999999999"

    endif

    setcolor(AT_G_N+","+AT_G_S+",,,"+AT_G_U)

    @ 02,17 say "СПРАВКА" get SER picture "XX" valid !empty(SER)

    @ 02,28 say "№" get NUM picture "9999999" valid !empty(NUM)

    @ 03,15 say str(day(date()),2)+" "+MNT[month(date())]+;

    " "+str(year(date()),4)

    @ 04,02 say "Выдана" get FIO picture "@S30" valid !empty(FIO)

    @ 05,02 say "Предъявлен" get CDOC picture "9999"

    @ 05,29 say "серия" get DSER picture "XXXXXXXXXX"

    @ 05,46 say "№" get DNUM picture "9999999999"

    @ 06,02 say "Резидент [ ]"

    @ 06,12 get REZ Picture "L"

    @ 08,02 say "ПОЛУЧЕНО КЛИЕНТОМ:"

    @ 09,02 say "Код ценности" get BCODC picture "9999"

    @ 10,02 say "Код валюты " get BCODCUR picture "9999"

    @ 11,02 say "Сумма"

    @ 14,02 say "ПРИНЯТО ОТ КЛИЕНТА:"

    @ 15,02 say "Код ценности" get SCODC picture "9999"

    @ 16,02 say "Код валюты " get SCODCUR picture "9999"

    @ 17,02 say "Сумма" get SSUM picture "999999999999" ;

    valid saysale(SSUM,18,2,52,AT_G_U,@SSUMS,SCODCUR)

    setcursor(CUR_STYLE)

    read

    setcursor(0)

    if lastkey()=K_ESC

    exit

    endif

    if _err(06,40,"Данные введены правильно?","",""," ~Д~а "," ~Н~ет

    ","")=1

    append blank

    replace field->SER_ with SER ,;

    field->NUM_ with NUM ,;

    field->FIO_ with FIO ,;

    field->DOC_ with DOC ,;

    field->DSER_ with DSER ,;

    field->DNUM_ with DNUM ,;

    field->REZ_ with !empty(REZ),;

    field->BCODC_ with BCODC ,;

    field->BCODCUR_ with BCODCUR,;

    field->BSUM_ with BSUM ,;

    field->SCODC_ with SCODC ,;

    field->SCODCUR_ with SCODCUR,;

    field->SSUM_ with SSUM,;

    field->DATE_ with date(),;

    field->OPERATION_ with 1

    commit

    if _err(06,40,"Печатать справку?","",""," ~Д~а "," ~Н~ет ","")=1

    // printspr()

    endif

    FINIT=.T.

    loop

    else

    FINIT=.F.

    endif

    enddo

    _nort()

    set key K_F3 to

    restscreen(1,0,23,61,SCR)

    dbcloseall()

    return 0

    Функция регистрации продажи валюты

    Function SaleCurrency

    local SCR

    use (DATROAD+"Document") index (DATROAD+"Document") alias DOC new

    SCR=savescreen(1,0,23,61)

    CLR=setcolor(AT_G_F)

    _open_n(1,0,20,59,B_SINGLE+" ",AT_G_F)

    @ 08,0 say "+----------------------------------------------------------+"

    @ 14,0 say "+----------------------------------------------------------+"

    setcolor(AT_G_N+","+AT_G_S+",,,"+AT_G_U)

    set key K_F3 to getcode()

    _nort("1010000001")

    FINIT=.T.

    do while .T.

    if FINIT

    SER =space(2)

    NUM =0

    FIO =space(35)

    DOC =space(10)

    DSER =space(10)

    DNUM =0

    REZ =space(1)

    NREZ =space(1)

    CDOC =0

    BCODC =0

    BCODCUR=0

    BSUM =0

    SCODC =0

    SCODCUR=0

    SSUM =0

    SSUMS=""

    BSUMS=""

    @ 12,2 say space(57)

    @ 13,2 say space(57)

    @ 18,2 say space(57)

    @ 19,2 say space(57)

    setcolor(AT_G_U)

    @ 11,8 say 0 picture "999999999999"

    endif

    setcolor(AT_G_N+","+AT_G_S+",,,"+AT_G_U)

    @ 02,17 say "СПРАВКА" get SER picture "XX" valid !empty(SER)

    @ 02,28 say "№" get NUM picture "9999999" valid !empty(NUM)

    @ 03,15 say str(day(date()),2)+" "+MNT[month(date())]+"

    "+str(year(date()),4)

    @ 04,02 say "Выдана" get FIO picture "@S30" valid !empty(FIO)

    @ 05,02 say "Предъявлен" get CDOC picture "9999"

    @ 05,29 say "серия" get DSER picture "XXXXXXXXXX"

    @ 05,46 say "№" get DNUM picture "9999999999"

    @ 06,02 say "Резидент [ ]"

    @ 06,12 get REZ Picture "L"

    @ 08,02 say "ПРИНЯТО ОТ КЛИЕНТА:"

    @ 09,02 say "Код ценности" get SCODC picture "9999"

    @ 10,02 say "Код валюты " get SCODCUR picture "9999"

    @ 11,02 say "Сумма"

    @ 14,02 say "ПОЛУЧЕНО КЛИЕНТОМ:"

    @ 15,02 say "Код ценности" get BCODC picture "9999"

    @ 16,02 say "Код валюты " get BCODCUR picture "9999"

    @ 17,02 say "Сумма" get BSUM picture "999999999999" valid

    saybye(BSUM,17,2,52,AT_G_U,@BSUMS,BCODCUR)

    setcursor(CUR_STYLE)

    read

    setcursor(0)

    if lastkey()=K_ESC

    exit

    endif

    if _err(06,40,"Данные введены правильно?","",""," ~Д~а "," ~Н~ет

    ","")=1

    append blank

    replace field->SER_ with SER ,;

    field->NUM_ with NUM ,;

    field->FIO_ with FIO ,;

    field->DOC_ with DOC ,;

    field->DSER_ with DSER ,;

    field->DNUM_ with DNUM ,;

    field->REZ_ with !empty(REZ),;

    field->BCODC_ with BCODC ,;

    field->BCODCUR_ with BCODCUR,;

    field->BSUM_ with BSUM ,;

    field->SCODC_ with SCODC ,;

    field->SCODCUR_ with SCODCUR,;

    field->SSUM_ with SSUM,;

    field->DATE_ with date(),;

    field->OPERATION_ with 1

    commit

    if _err(06,40,"Печатать справку?","",""," ~Д~а "," ~Н~ет ","")=1

    // printspr()

    endif

    FINIT=.T.

    loop

    else

    FINIT=.F.

    endif

    enddo

    _nort()

    set key K_F3 to

    restscreen(1,0,23,56,SCR)

    dbcloseall()

    return 0

    Функция регистрации конверсии валюты

    Function ConvertCurrency

    local SCR

    use (DATROAD+"Document") index (DATROAD+"Document") alias DOC new

    SCR=savescreen(1,0,23,61)

    CLR=setcolor(AT_G_F)

    _open_n(1,0,20,59,B_SINGLE+" ",AT_G_F)

    @ 08,0 say "+----------------------------------------------------------+"

    @ 14,0 say "+----------------------------------------------------------+"

    setcolor(AT_G_N+","+AT_G_S+",,,"+AT_G_U)

    set key K_F3 to getcode()

    _nort("1010000001")

    FINIT=.T.

    do while .T.

    if FINIT

    SER =space(2)

    NUM =0

    FIO =space(35)

    DOC =space(10)

    DSER =space(10)

    DNUM =0

    REZ =space(1)

    NREZ =space(1)

    CDOC =0

    BCODC =0

    BCODCUR=0

    BSUM =0

    SCODC =0

    SCODCUR=0

    SSUM =0

    SSUMS=""

    BSUMS=""

    @ 12,2 say space(57)

    @ 13,2 say space(57)

    @ 18,2 say space(57)

    @ 19,2 say space(57)

    setcolor(AT_G_U)

    @ 11,8 say 0 picture "999999999999"

    endif

    setcolor(AT_G_N+","+AT_G_S+",,,"+AT_G_U)

    @ 02,17 say "СПРАВКА" get SER picture "XX" valid !empty(SER)

    @ 02,28 say "№" get NUM picture "9999999" valid !empty(NUM)

    @ 03,15 say str(day(date()),2)+" "+MNT[month(date())]+"

    "+str(year(date()),4)

    @ 04,02 say "Выдана" get FIO picture "@S30" valid !empty(FIO)

    @ 05,02 say "Предъявлен" get CDOC picture "9999"

    @ 05,29 say "серия" get DSER picture "XXXXXXXXXX"

    @ 05,46 say "№" get DNUM picture "9999999999"

    @ 06,02 say "Резидент [ ]"

    @ 06,12 get REZ Picture "L"

    @ 08,02 say "ПРИНЯТО ОТ КЛИЕНТА:"

    @ 09,02 say "Код ценности" get SCODC picture "9999"

    @ 10,02 say "Код валюты " get SCODCUR picture "9999"

    @ 11,02 say "Сумма"

    @ 14,02 say "ПОЛУЧЕНО КЛИЕНТОМ:"

    @ 15,02 say "Код ценности" get BCODC picture "9999"

    @ 16,02 say "Код валюты " get BCODCUR picture "9999"

    @ 17,02 say "Сумма" get BSUM picture "999999999999" valid

    saybye(BSUM,17,2,52,AT_G_U,@BSUMS,BCODCUR)

    setcursor(CUR_STYLE)

    read

    setcursor(0)

    if lastkey()=K_ESC

    exit

    endif

    if _err(06,40,"Данные введены правильно?","",""," ~Д~а "," ~Н~ет

    ","")=1

    append blank

    replace field->SER_ with SER ,;

    field->NUM_ with NUM ,;

    field->FIO_ with FIO ,;

    field->DOC_ with DOC ,;

    field->DSER_ with DSER ,;

    field->DNUM_ with DNUM ,;

    field->REZ_ with !empty(REZ),;

    field->BCODC_ with BCODC ,;

    field->BCODCUR_ with BCODCUR,;

    field->BSUM_ with BSUM ,;

    field->SCODC_ with SCODC ,;

    field->SCODCUR_ with SCODCUR,;

    field->SSUM_ with SSUM,;

    field->DATE_ with date(),;

    field->OPERATION_ with 1

    commit

    if _err(06,40,"Печатать справку?","",""," ~Д~а "," ~Н~ет ","")=1

    // printspr()

    endif

    FINIT=.T.

    loop

    else

    FINIT=.F.

    endif

    enddo

    _nort()

    set key K_F3 to

    restscreen(1,0,23,56,SCR)

    dbcloseall()

    return 0

    Функция - определитель текущего поля для получения кода и наименования

    объекта из справочника

    Function GETCODE

    local CL

    AKTIV=getactive()

    RS=row()

    CS=col()+5

    do case

    case AKTIV:name="BCODCUR"

    S=incod(1,@BCODCUR)

    case AKTIV:name="BCODC"

    S=incod(3,@BCODC)

    case AKTIV:name="SCODCUR"

    S=incod(1,@SCODCUR)

    case AKTIV:name="SCODC"

    S=incod(3,@SCODC)

    case AKTIV:name="CDOC"

    S=incod(4,@CDOC)

    otherwise

    S=""

    endcase

    CL=setcolor(AT_G_N)

    @ RS,CS say substr(S,1,30)

    if !empty(S)

    keyboard chr(13)

    endif

    setcolor(CL)

    return .T.

    Функция вывода суммы покупки прописью

    Function SAYB

    parameters NUM,Y,X,L,C,S,CC

    local CL

    S=numstring(NUM,CC)

    CL=setcolor(C)

    @ Y,X say padr(substr(S,1,L),L)

    @ Y+1,2 say padr(substr(S,L+1,57),57)

    setcolor(AT_G_U)

    @ Y-1,8 say NUM picture "999999999999"

    setcolor(CL)

    return .T.

    Функция вывода суммы продажи прописью

    Function SAYS

    parameters NUM,Y,X,L,C,S,CC

    local CL

    S=numstring(NUM,CC)

    CL=setcolor(C)

    @ Y,X say padr(substr(S,1,L),L)

    @ Y+1,2 say padr(substr(S,L+1,57),57)

    setcolor(AT_G_U)

    @ Y-1,8 say NUM picture "999999999999"

    setcolor(CL)

    return .T.

    Функция вычисления суммы операции покупки

    Function SAYBYE

    parameters NUM,Y,X,L,C,S,CC

    local CL,OBL,RESULT

    RESULT=.F.

    OBl=select()

    use (DATROAD+"currency") index (DATROAD+"currency") new

    seek CC

    if found()

    BSUM=KURS*NUM

    use

    S=numstring(NUM,CC)

    CL=setcolor(C)

    @ Y,X say padr(substr(S,1,L),L)

    @ Y+1,2 say padr(substr(S,L+1,57),57)

    says(SSUM,12,2,57,AT_G_U,@SSUMS,SCODCUR)

    RESULT=.T.

    else

    use

    endif

    setcolor(CL)

    select(OBL)

    return RESULT

    Функция вычисления суммы операции продажи

    Function SAYSALE

    parameters NUM,Y,X,L,C,S,CC

    local CL,OBL,RESULT

    RESULT=.F.

    OBl=select()

    use (DATROAD+"currency") index (DATROAD+"currency") new

    seek CC

    if found()

    BSUM=KURS*NUM

    use

    S=numstring(NUM,CC)

    CL=setcolor(C)

    @ Y,X say padr(substr(S,1,L),L)

    @ Y+1,2 say padr(substr(S,L+1,57),57)

    sayb(BSUM,12,2,57,AT_G_U,@BSUMS,BCODCUR)

    RESULT=.T.

    else

    use

    endif

    setcolor(CL)

    select(OBL)

    return RESULT

    ФУНКЦИЯ ВЫВОДА списка документов дня

    Function Docrep

    local SCR

    use (DATROAD+"Currency") index (DATROAD+"Currency") alias CUR new

    use (DATROAD+"Document") index (DATROAD+"Document") alias DOC new

    set relation to BCODCUR_ into CUR

    SCR=savescreen(1,0,23,79)

    _open_n(1,0,22,77,B_SINGLE+" ",AT_S_F)

    _nort("1000001001")

    declare MF[5],MZ[5]

    MF[1]=

    MF[2]=

    MF[3]=

    MF[4]= CUR->SHORT_NAME+" "+str(BSUM_)

    MF[5]=

    MZ[1]="Справка"

    MZ[2]="Фамилия Имя Отчество"

    MZ[3]="Р/Н"

    MZ[4]="Выдано"

    MZ[5]="Принято"

    TERM=" Проведенные документы дня "

    setcolor(AT_M1_S)

    @ 01,(70-len(TERM))/2 SAY TERM

    setcolor(AT_S_N+","+AT_S_S+",,,"+AT_S_U)

    clear type

    oBrow := TBrowseDB(2,1,21,76)

    oBrow:headSep := "=T="

    oBrow:colSep := " ¦ "

    for i := 1 TO len(MF)

    oBrow:addColumn(TBColumnNew(MZ[i], MF[i]))

    next

    while (!oBrow:stabilize()) ; end

    lKeyWaiting := .F.

    lBrowse := .T.

    do while (lBrowse)

    if (!lKeyWaiting)

    do while (!oBrow:stabilize())

    // Прервать стабилизацию, если нажата клавиша

    if ((nKey := Inkey()) != 0)

    lKeyWaiting := .T.

    exit

    endif

    enddo

    endif

    // Если нет нажатия, то ждать его

    if (!lKeyWaiting)

    nKey := Inkey(0)

    endif

    do case

    case (nKey == K_DOWN)

    oBrow:down()

    case (nKey == K_UP)

    oBrow:up()

    case (nKey == K_PGDN)

    oBrow:pageDown()

    case (nKey == K_PGUP)

    oBrow:pageUp()

    case (nKey == K_CTRL_PGUP)

    oBrow:goTop()

    case (nKey == K_CTRL_PGDN)

    oBrow:goBottom()

    case (nKey == K_RIGHT)

    oBrow:right()

    case (nKey == K_LEFT)

    oBrow:left()

    case (nKey == K_HOME)

    oBrow:home()

    case (nKey == K_END)

    oBrow:end()

    case (nKey == K_CTRL_LEFT)

    oBrow:panLeft()

    case (nKey == K_CTRL_RIGHT)

    oBrow:panRight()

    case (nKey == K_CTRL_HOME)

    oBrow:panHome()

    case (nKey == K_CTRL_END)

    oBrow:panEnd()

    case (nKey == K_F7)

    // printspr()

    case (nKey == K_ESC).or.(nKey == K_F10)

    lBrowse := .F.

    endcase

    lKeyWaiting := .F.

    enddo

    restscreen(1,0,23,79,SCR)

    dbcloseall()

    _nort()

    return 0

    ФУНКЦИЯ ЗАКРЫТИЯ ОПЕРАЦИОННОГО ДНЯ

    Function CloseDay()

    if _err(07,05,"Вы действительно желаете закрыть","операционный день

    ?",""," Да "," Нет ","")<>1

    return 0

    endif

    ArBase=strtran(str(day(MDATE),2)+str(month(MDATE),2)+substr(str(year(MDATE

    ),4),3,2)," ","0")

    use (DATROAD+"Operatio")

    copy to (ARCROAD+"Op"+ArBase)

    delete all

    pack

    use (DATROAD+"Document")

    copy to (ARCROAD+"Do"+ArBase)

    delete all

    pack

    use (DATROAD+"Currency")

    copy to (ARCROAD+"Cu"+ArBase)

    use (DATROAD+"Kurses")

    copy to (ARCROAD+"Ku"+ArBase)

    use (DATROAD+"Codes")

    copy to (ARCROAD+"Co"+ArBase)

    ODATE=MDATE

    SCR=savescreen(07,05,12,47)

    _open_n(07,05,10,45,B_SINGLE+" ",AT_G_F)

    CL=setcolor(AT_G_U)

    @ 08,22 say ODATE

    do while(.T.)

    setcolor(AT_G_N+","+AT_G_S+",,,"+AT_G_U)

    @ 08,07 say "Текущая дата :"

    @ 09,07 say " Новая дата :" get MDATE

    setcursor(CUR_STYLE)

    read

    setcursor(0)

    if _err(10,15,"Дата введена правильно?","",""," Да "," Нет ","")=1

    save all like MDATE to d

    exit

    endif

    enddo

    dbcloseall()

    restscreen(07,05,12,47,SCR)

    setcolor(CL)

    return 0

    Литература

    1. CA-Clipper 5.02 «Users Guide» - Руководство по программированию на

    языке Clipper

    2. А.А.Попов «Программирование в среде FoxPro. Построение систем

    обработки данных. («Радио и Связь» М. 1993г.)

    3. «RS-Club» №№1-7 1996г. (Miktor Ky. Union Publisher Inc. 1996г.)

    4. П.Нортон, П.Иао «Программирование на С++ в среде Windows»

    («Диалектика» Киев 1993г.)

    5. Инструкция ЦБ РФ «О порядке организации работы обменных пунктов на

    территории Российской федерации, совершения и учета валютно - обменных

    операций уполномоченными банками» №27 от 27.02.1995г.

    -----------------------

    Активная опция

    Неактивная опция

    «Горячая» клавиша

    Страницы: 1, 2, 3, 4, 5, 6


    Приглашения

    09.12.2013 - 16.12.2013

    Международный конкурс хореографического искусства в рамках Международного фестиваля искусств «РОЖДЕСТВЕНСКАЯ АНДОРРА»

    09.12.2013 - 16.12.2013

    Международный конкурс хорового искусства в АНДОРРЕ «РОЖДЕСТВЕНСКАЯ АНДОРРА»




    Copyright © 2012 г.
    При использовании материалов - ссылка на сайт обязательна.