Программное обеспечение пункта обмена валюты банка
Рефераты >> Программирование и компьютеры >> Программное обеспечение пункта обмена валюты банка

UNITS[ 3] = iif(Man_Woman,"два","две")

UNITS[ 4] = "три"

UNITS[ 5] = "четыре"

UNITS[ 6] = "пять"

UNITS[ 7] = "шесть"

UNITS[ 8] = "семь"

UNITS[ 9] = "восемь"

UNITS[10] = "девять"

UNITS[11] = "десять"

UNITS[12] = "одиннадцать"

UNITS[13] = "двенадцать"

UNITS[14] = "тринадцать"

UNITS[15] = "четырнадцать"

UNITS[16] = "пятнадцать"

UNITS[17] = "шестнадцать"

UNITS[18] = "семнадцать"

UNITS[19] = "восемнадцать"

UNITS[20] = "девятнадцать"

UNITS[21] = "двадцать"

UNITS[22] = "тридцать"

UNITS[23] = "сорок"

UNITS[24] = "пятьдесят"

UNITS[25] = "шестьдесят"

UNITS[26] = "семьдесят"

UNITS[27] = "восемьдесят"

UNITS[28] = "девяносто"

UNITS[29] = "сто"

UNITS[30] = "двести"

UNITS[31] = "триста"

UNITS[32] = "четыреста"

UNITS[33] = "пятьсот"

UNITS[34] = "шестьсот"

UNITS[35] = "семьсот"

UNITS[36] = "восемьсот"

UNITS[37] = "девятьсот"

STRING = ""

IN_NUM = int(IN_NUM)

SOT=int(In_NUM/100)

DES=int((In_NUM-SOT*100)/10)

EDN=In_NUM-SOT*100-DES*10

IN_STRING = ltrim(str(IN_NUM))

SCAN_ED=.T.

if SOT>0

STRING=STRING+UNITS[SOT+28]+" "

endif

if DES>1

STRING=STRING+UNITS[DES+19]+" "

elseif DES=1

STRING=STRING+UNITS[DES*10+EDN+1]+" "

SCAN_ED=.F.

endif

if SCAN_ED

STRING=STRING+UNITS[EDN+1]

endif

return STRING

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

Function GetShort_Name(CODE)

local OBL,MR,ST:=" "

OBL=select()

select CUR

MR=recno()

seek CODE

if found()

ST=SHORT_NAME

endif

goto MR

select(OBL)

return ST

Основные функции и процедуры

Головной модуль программы

Function MAIN

#Include "Box.ch"

setcursor(0)

if .not.file("V.mem").or not.file("C.mem")

set curs on

return 0 // Аварийный выход при отсутствии файлов глобальных переменных

else

// Объявление глобальных переменных и считывание их из файла

public AT_M0_F,AT_M0_N,AT_M0_S,AT_M0_U,AT_M1_F,AT_M1_N,AT_M1_S

public AT_M1_U,AT_M2_F,AT_M2_N,AT_M2_S,AT_M2_U,AT_E_F,AT_E_N,AT_E_S

public AT_E_U,AT_G_F,AT_G_N,AT_G_S,AT_G_U,AT_S_F,AT_S_N,AT_S_S,AT_S_U

public AT_N_I,AT_N_S

CLFON="N"

clear

restore from c.mem addi

endif

// Глобальные установки

setcursor(0)

set date german

set century on

set wrap on

set dele off

set bell off

set confirm on

set scoreboard off

set message to 24 center

restore from v.mem addi

public PAROL,DATROAD,USERDSK,PAGELEN,ETLF,UKZGL,UKTXT,ARCROAD

public ZEROPRINT,FPREOBR,PAGESIZ,DUBLDSK,KEYCR,C_H

public FM,FINSERT,CUR_STYLE,M EN,MDATE,SETNUM

restore from D addi

store 0 to CROW,CCOL

KEYCR="#4_Ж;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

UKTXT = U KTXT

SETNUM = S ETNUM

FPREOBR = .F.

release P AROL,D ATROAD,U SERDSK,S ETNUM,;

P AGELEN,P AGESIZ,E TLF,U KZGL,U KTXT,D UBLDSK,A RCROAD

MEN=1

MEN1=1

FINSERT=.F.

CUR_STYLE=1

set key 22 to fins()

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("»,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


Страница: