Специализированный программный продукт по работе со счетами-фактуры

Системы управления базами данных. Обоснование необходимости автоматизации оформления счетов-фактур. Модели данных, особенности языка Visual FoxPro 5.0. Руководство пользователя программы. Технико-экономическое обоснование автоматизации. Текст программы.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 22.02.2012
Размер файла 664,8 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Противорадиационная и провохимическая защита включает специальные мероприятия:

выявление и оценка радиационной и химической обстановки;

разработка и ввод в действие режимов радиационной и химической защиты;

организация и проведение дозиметрического контроля;

способы защиты населения;

обеспечение населения противогазами, средствами защиты кожи и т.п.;

ликвидация последствий заражения (санобработка, обеззараживание местности и др.).

Производственные аварии

Основные опасности техносферы взрывы, пожары, выбросы радиоактивных и сильнодействующих ядовитых веществ могут в значительной степени влиять на утрату носителей информации. Меры защиты в условиях производственных аварий и катастроф аналогичны мерам, рассмотренным в пунктах, касающихся стихийных бедствий и действия поражающих факторов военного времени.

Необходимо также помнить и обязательно проводить резервное копирование результатов работы разрабатываемого программного средства. Такое копирование целесообразно проводить раз в неделю или чаще, в зависимости от интенсивности производства.

Обязательной мерой является и хранение резервных копий самого программного продукта. Желательно даже в двух копиях.

Все носители информации, предназначенные для резервного ко-пирования, должны быть защищены от записи. Доступ к ним должен быть у ограниченного количества обслуживающего персонала.

Приложение

Текст программы

*: MAIN

p=sys(5)+sys(2003) && узнаем текущий путь

SET path to p && установки среды

SET exclusive off

SET classlib to wizstyle.vcx && подключение библиотек классов

SET classlib to appwiz.vcx additive

SET classlib to proj.vcx additive

Release goApp && уничтожение переменной приложения

PUBLIC goApp && объявление переменной приложения

goApp=CreateObject("cApplication") && создание объекта типа cApplication

goApp.cstartupform="basisform" && объявление главной формы

goApp.show && запуск приложения

Release goApp && уничтожение переменной приложения

****** * BASISFORM.SCX

PROCEDURE Destroy

CLOSE tables

CLOSE all

Release ALL

QUIT

ENDPROC

PROCEDURE Init

Application.Visible=.f.

SET escape off

_SCREEN.caption="Счета-фактуры"

_SCREEN.Icon=thisForm.Icon

CLOSE tables

SET century on

USE f_fact in 1

USE f_oplata in 2

r_opl(-1)

SELECT f_oplata

USE

USE f_otgr in 2

r_otg(-1)

SELECT f_otgr

USE

SELECT f_fact

USE

USE setup SHARED

**on error clear

SET date to german

_asd=dtos(date())

_asd=substr(_asd,5,2)

_asd="01."+_asd+"."+alltrim(str(year(date())))

REPLACE dateot1 with ctod(_asd) &&GOMONTH(date(),-1)

REPLACE dateot2 with date()

ENDPROC

PROCEDURE Activate

Activate Window (THISFORM.Name)

ENDPROC

PROCEDURE KeyPress

LPARAMETERS nKeyCode, nShiftAltCtrl

IF nKeyCode=27

thisform.Command7.SetFocus()

thisform.Command7.Click()

ENDIF

ENDPROC

PROCEDURE RightClick

MESSAGEBOX(" СЧЕТА-ФАКТУРЫ v1.0 "+chr(13)+chr(13)+" Flynx(c) 1998г.",64,"О программе")

ENDPROC

PROCEDURE Click

DO form sfgrid

ENDPROC

PROCEDURE Click

DO form spr with 1

ENDPROC

PROCEDURE Click

thisform.release

ENDPROC

PROCEDURE Click

DO form mymd.scx

ENDPROC

PROCEDURE Click

DO form otchet

ENDPROC

PROCEDURE Click

DO form otgr.scx with -10

ENDPROC

PROCEDURE Click

DO form oplata.scx with -10

ENDPROC

****** * DATA1.DBC

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

FUNCTION NewID(tcAlias)&& передается имя таблицы

LOCAL lcAlias, ;&& текущая таблица

lcID, ;&& текущее значение уникального поля

lcOldReprocess, ;&& старое значение Reprocess

lnOldArea && номер старой рабочей области

lnOldArea = SELECT() && узнаем номер старой рабочей области

IF PARAMETERS() < 1 && если в функцию не переданно ни одного параметра

lcAlias = ALIAS()&& берем таблицу открытую в текущей раб. области

ELSE

lcAlias = tcAlias&& берем переданный параметр

ENDIF

*lcID = ""

lcOldReprocess = SET('REPROCESS')&& сохраняем старое значение Reprocess

*-- Lock until user presses Esc

SET REPROCESS TO AUTOMATIC&& значение Reprocess ставится автоматическим

IF !USED("SETUP")&& если таблица SETUP не используется

USE data1!setup IN 0&& открываем ее

ENDIF&&

SELECT setup&& переходим на таблицу SETUP

IF SEEK(lcAlias, "setup", "key_name")&& находим в таблице SETUP запись для нужной нам таблицы

IF RLOCK()&& блокируем текущую запись

lcID = setup.value&& берем максимальное значение для уникального поля данной таблицы

REPLACE setup.value WITH lcID +1&& заменяем его большим на единицу

UNLOCK&& разблокируем запись

ENDIF

ENDIF

SELECT (lnOldArea)&& переходим в старую рабочую область

SET REPROCESS TO lcOldReprocess&& возвращаем старое значение Reprocess

RETURN lcID && возвращаем новое уникальное значение на единицу большее предыдущего

ENDFUNC

****** * FREE_NDS.PRG

FUNCTION FREE_NDS(n_sf, s_nds)&& подсчет суммы товаров не облагаемых НДС по конкретному счету-фактуре

&& n_sf номер счета-фактуры

&& s_nds НДС

LOCAL s_sum,nrec,nal&& сумма, номер записи, текущая таблица

nal=alias()&& сохраняем текущую таблицу

SELECT f_factt&& переходим в таблицу реестра счетов-фактур

IF recno()>reccount()or recno()<0&& если указатель записи имеет неправильное значение

nrec=reccount()&& встаем на последнюю запись

ELSE

nrec=recno()&& встаем на нужную запись

ENDIF

SET filter to (счетфакт_id=n_sf)and(ндс=s_nds)&& устанавливаем фильтр для конкретного счета-фактуры с конкретным НДС

SET talk off && убираем эхо

SUM f_factt.колво* f_factt.цена/iif(f_factt.признак_ндс,(1+f_factt.ндс/100),1) to s_sum

&& подсчитываем сумму

SET filter to && убираем фильтр

GO nrec && возвращаемся на сохраненную запись

SELECT &nal && переходим в сохраненную таблицу

RETURN s_sum && возвращаем сумму

ENDFUNC

*: MENU1

*: _s5314r40y

*: _s5314r41k

*: _s5314r425

*: _s5314r42s

*: _s5314r43f

DEFINE POPUP shortcut shortcut RELATIVE FROM MROW(),MCOL()

DEFINE BAR 1 OF shortcut PROMPT "\<Организации"

DEFINE BAR 2 OF shortcut PROMPT "\<Виды товаров"

DEFINE BAR 3 OF shortcut PROMPT "\<Группы товаров"

DEFINE BAR 4 OF shortcut PROMPT "\<Единицы измерения"

DEFINE BAR 5 OF shortcut PROMPT "Ставки \<НДС"

ON SELECTION BAR 1 OF shortcut ;

DO _s5314r40y ;

IN LOCFILE("СЧЕТА-ФАКТУРЫ\MENU1" ,"MPX;MPR|FXP;PRG" ,"WHERE is MENU1?")

ON SELECTION BAR 2 OF shortcut ;

DO _s5314r41k ;

IN LOCFILE("СЧЕТА-ФАКТУРЫ\MENU1" ,"MPX;MPR|FXP;PRG" ,"WHERE is MENU1?")

ON SELECTION BAR 3 OF shortcut ;

DO _s5314r425 ;

IN LOCFILE("СЧЕТА-ФАКТУРЫ\MENU1" ,"MPX;MPR|FXP;PRG" ,"WHERE is MENU1?")

ON SELECTION BAR 4 OF shortcut ;

DO _s5314r42s ;

IN LOCFILE("СЧЕТА-ФАКТУРЫ\MENU1" ,"MPX;MPR|FXP;PRG" ,"WHERE is MENU1?")

ON SELECTION BAR 5 OF shortcut ;

DO _s5314r43f ;

IN LOCFILE("СЧЕТА-ФАКТУРЫ\MENU1" ,"MPX;MPR|FXP;PRG" ,"WHERE is MENU1?")

Activate POPUP shortcut

PROCEDURE _s5314r40y

DO form spr with 1

PROCEDURE _s5314r41k

DO form spr with 2

PROCEDURE _s5314r425

DO form spr with 3

PROCEDURE _s5314r42s

DO form spr with 4

PROCEDURE _s5314r43f

DO form spr with 5

*: MENU2

*: _s5314r4ue

DEFINE POPUP shortcut shortcut RELATIVE FROM MROW(),MCOL()

DEFINE BAR 1 OF shortcut PROMPT "\<Документы оплаты"

ON SELECTION BAR 1 OF shortcut ;

DO _s5314r4ue ;

IN LOCFILE("СЧЕТА-ФАКТУРЫ\MENU2" ,"MPX;MPR|FXP;PRG" ,"WHERE is MENU2?")

Activate POPUP shortcut

PROCEDURE _s5314r4ue

DO form spr with 6

****** * MYMD.SCX

PROCEDURE Deactivate

CLOSE table all

ENDPROC

PROCEDURE KeyPress

LPARAMETERS nKeyCode, nShiftAltCtrl

IF nKeyCode=27

thisform.Command2.SetFocus()

thisform.Command2.Click()

ENDIF

ENDPROC

PROCEDURE Click

ON error yyy=error()

PUBLIC sss

sss=ThisForm.Text1.Value

MKDIR alltrim(sss)

IF yyy<>1961

OPEN database data1

USE f_fact in 0

USE f_factt in 0

USE f_nds in 0

USE f_oplata in 0

USE f_otgr in 0

USE f_sprdo in 0

USE f_sprei in 0

USE f_sprgt in 0

USE f_sprvt in 0

USE f_sprpp in 0

USE f_sprb in 0

USE setup in 0

CD alltrim(sss)

**use f_fact

SELECT * FROM f_fact WHERE (year(f_fact.дата) < year(date()))and((f_fact.итого-f_fact.sop)<0.01) into table f_fact

**close tables

**use data1.f_factt

SELECT f_factt.* FROM f_fact F_fact_a LEFT OUTER JOIN f_factt ON F_fact_a.счетфакт_id = f_factt.счетфакт_id WHERE (year(F_fact_a.дата) < year(date()))and((F_fact_a.итого-F_fact_a.sop)<0.01) into table f_factt

**close tables

**use data1.f_nds

SELECT * from f_nds into table f_nds

**close tables

**use data1.f_oplata

SELECT f_oplata.* FROM f_fact F_fact_a LEFT OUTER JOIN f_oplata ON F_fact_a.счетфакт_id = f_oplata.код WHERE (year(F_fact_a.дата) < year(date()))and((F_fact_a.итого-F_fact_a.sop)<0.01) into table f_oplata

**close tables

**use data1.f_otgr

SELECT f_otgr.* FROM f_fact F_fact_a LEFT OUTER JOIN f_otgr ON F_fact_a.счетфакт_id = f_otgr.код WHERE (year(F_fact_a.дата) < year(date()))and((F_fact_a.итого-F_fact_a.sop)<0.01) into table f_otgr

**close tables

**use data1.f_sprdo

SELECT * from f_sprdo into table f_sprdo

**close tables

**use data1.f_sprei

SELECT * from f_sprei into table sprei

**close tables

**use data1.f_sprgt

SELECT * from f_sprgt into table f_sprgt

**close tables

**use data1.f_sprvt

SELECT * from f_sprvt into table f_sprvt

**close tables

**use data1.f_sprpp

SELECT * from f_sprpp into table f_sprpp

**close tables

**use data1.f_sprb

SELECT * from f_sprb into table f_sprb

**close tables

**use data1.setup

SELECT * from setup into table setup

**use

**close tables

CD ..

MESSAGEBOX('Архив был успешно создан!',0,' ')

Release ThisForm

ELSE

MESSAGEBOX('Директория с таким именем уже существует!',0,'Ошибка')

ENDIF

Release sss

ON error

ENDPROC

PROCEDURE Click

Release Thisform

ENDPROC

PROCEDURE KeyPress

LPARAMETERS nKeyCode, nShiftAltCtrl

IF nKeyCode=13

thisform.Command1.setFocus()

thisform.Command1.Click()

NODEFAULT

ENDIF

ENDPROC

PROCEDURE Init

this.Value='Архив_'+alltrim(str(year(date())))

ENDPROC

*: NDS

FUNCTION NDS(n_sf,s_nds)&& подсчет суммы товаров не облагаемых НДС по конкретному счету-фактуре

&& n_sf номер счета-фактуры

&& s_nds НДС

LOCAL s_sum,nrec,nal&& сумма, номер записи, текущая таблица

nal=alias()&& сохраняем текущую таблицу

SELECT f_factt&& переходим в таблицу реестра счетов-фактур

IF recno()>reccount()or recno()<0 && если указатель записи имеет неправильное значение

nrec=reccount()&& встаем на последнюю запись

ELSE

nrec=recno()&& встаем на нужную запись

ENDIF

SET filter to (счетфакт_id= n_sf)and(ндс=s_nds)&& устанавливаем фильтр для конкретного счета-фактуры с конкретным НДС

SET talk off && убираем эхо

SUM f_factt.колво* f_factt.цена* f_factt.ндс/iif(f_factt.признак_ндс,100+f_factt.ндс,100) to s_sum

&& подсчитываем сумму

SET filter to && убираем фильтр

GO nrec && возвращаемся на сохраненную запись

SELECT &nal && переходим в сохраненную таблицу

RETURN s_sum && возвращаем сумму

ENDFUNC

*: OPLATA

PROCEDURE KeyPress

LPARAMETERS nKeyCode, nShiftAltCtrl

IF nKeyCode=27

thisform.Mypicbtns1.cmdExit.Setfocus()

thisform.Mypicbtns1.cmdExit.Click()

ELSE

IF nKeyCode=-2

www=.t.

thisform.Mypicbtns1.cmdAdd.SetFocus()

thisform.Mypicbtns1.cmdAdd.Click()

ENDIF

ENDIF

ENDPROC

PROCEDURE Destroy

SELECT f_oplata

TABLEUPDATE()

Release ww

ENDPROC

PROCEDURE Activate

thisform.grid2.Column1.Enabled=.f.

thisform.grid1.Column2.Enabled=.f.

thisform.grid1.Column3.Enabled=.f.

thisform.grid1.Column3.Combo1.Enabled=.t.

thisform.grid1.Column4.Enabled=.f.

thisform.grid1.Column5.Enabled=.f.

thisform.Label1.Init()

thisform.Refresh()

ENDPROC

PROCEDURE Init

LPARAM jj

SET century on

SET date to german

PUBLIC ww,www

www=.f.

ww=.t.

IF jj>-2

SELECT f_fact

**messagebox(alias()+str(recno()))

GO jj

ww=.f.

thisform.grid2.Column1.setFocus()

ELSE

thisform.grid2.Column1.setFocus()

ENDIF

ENDPROC

PROCEDURE RightClick

DO MENU2.mpr

ENDPROC

PROCEDURE Deleted

LPARAMETERS nRecNo

SELECT f_oplata

this.Column2.Enabled=.t.

GO nRecNo

this.Column2.Enabled=.f.

#DEFINE MSGBOX_YES6

#DEFINE C_MSGBOX136

#DEFINE C_DELETE_LOC"Вы хотите удалить эту запись?"

#DEFINE C_NOLOCK_LOC"Запись не может быть удалена, так как используется."

UNLOCK ALL

* Note: Cascading deletes should be handled via RI triggers in DBC!

IF DELETED()

RECALL

IF ThisForm.Mypicbtns1.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

thisform.Mypicbtns1.ButtonRefresh()

thisform.Mypicbtns1.NavRefresh()

thisform.LockScreen = .F.

ELSE

IF MESSAGEBOX(C_DELETE_LOC,C_MSGBOX1) = MSGBOX_YES

Delete

IF ThisForm.Mypicbtns1.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

thisform.Mypicbtns1.ButtonRefresh()

thisform.Mypicbtns1.NavRefresh()

thisform.LockScreen = .F.

ENDIF

ENDIF

IF THISFORM.ShowWindow = 2

Activate Window (THISFORM.Name)

ENDIF

r_opl(f_fact.счетфакт_id)

thisform.Label1.Init()

NODEFAULT

**

ENDPROC

PROCEDURE cmdFind.Click

SELECT f_oplata

DoDefault()

ENDPROC

PROCEDURE cmdExit.Click

SELECT f_oplata

DoDefault()

ENDPROC

PROCEDURE cmdAdd.Click

IF ThisForm.grid1.Column2.Enabled=.t.

this.Parent.EditMode=.f.

this.Parent.ButtonRefresh()

SELECT f_oplata

TABLEUPDATE()

thisform.grid1.Column2.Enabled=.f.

thisform.grid1.Column3.Enabled=.f.

thisform.grid1.Column3.Combo1.Enabled=.t.

thisform.grid1.Column4.Enabled=.f.

thisform.grid1.Column5.Enabled=.f.

IF Thisform.grid2.Enabled=.t.

r_opl(-1)

ELSE

r_opl(f_fact.счетфакт_id)

ENDIF

thisform.Label1.Init()

ELSE

SELECT f_oplata

this.Parent.EditMode=.t.

this.Parent.ButtonRefresh()

thisform.grid1.Column2.Enabled=.t.

thisform.grid1.Column3.Enabled=.t.

thisform.grid1.Column4.Enabled=.t.

thisform.grid1.Column5.Enabled=.t.

SELECT f_oplata

APPEND blank

REPLACE f_oplata.код with f_fact.счетфакт_id

thisform.grid1.Column2.Text1.setFocus()

ENDIF

**ThisForm.refresh()

ENDPROC

PROCEDURE cmdDelete.Click

SELECT f_oplata

#DEFINE MSGBOX_YES6

#DEFINE C_MSGBOX136

#DEFINE C_DELETE_LOC"Вы хотите удалить эту запись?"

#DEFINE C_NOLOCK_LOC"Запись не может быть удалена, так как используется."

* Note: Cascading deletes should be handled via RI triggers in DBC!

IF DELETED()

RECALL

IF THIS.Parent.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

this.Parent.ButtonRefresh()

this.Parent.NavRefresh()

thisform.LockScreen = .F.

ELSE

IF MESSAGEBOX(C_DELETE_LOC,C_MSGBOX1) = MSGBOX_YES

Delete

IF THIS.Parent.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

this.Parent.ButtonRefresh()

this.Parent.NavRefresh()

thisform.LockScreen = .F.

ENDIF

ENDIF

IF THISFORM.ShowWindow = 2

Activate Window (THISFORM.Name)

ENDIF

r_opl(f_fact.счетфакт_id)

thisform.Label1.Init()

ENDPROC

PROCEDURE cmdEdit.Click

IF ThisForm.grid1.Column2.Enabled=.t.

this.Parent.EditMode=.f.

this.Parent.ButtonRefresh()

SELECT f_oplata

**dodefault()

TABLEREVERT()

thisform.grid1.Column2.Enabled=.f.

thisform.grid1.Column3.Enabled=.f.

thisform.grid1.Column3.Combo1.Enabled=.t.

thisform.grid1.Column4.Enabled=.f.

thisform.grid1.Column5.Enabled=.f.

ELSE

this.Parent.EditMode=.t.

this.Parent.ButtonRefresh()

** select f_oplata

**dodefault()

thisform.grid1.Column2.Enabled=.t.

thisform.grid1.Column3.Enabled=.t.

thisform.grid1.Column4.Enabled=.t.

thisform.grid1.Column5.Enabled=.t.

SELECT f_oplata

thisform.grid1.Column2.Text1.setFocus()

ENDIF

**ThisForm.refresh()

ENDPROC

PROCEDURE BeforeRowColChange

LPARAMETERS nColIndex

IF www=.f.

IF ww=.f.

** This.enabled=.f.

** This.Parent.grid1.Column2.setfocus()

NODEFAULT

** ThisForm.refresh()

** ww=.t.

ENDIF

ELSE

this.enabled=.f.

thisform.refresh()

ENDIF

ENDPROC

PROCEDURE AfterRowColChange

LPARAMETERS nColIndex

thisform.Label1.Init()

ENDPROC

PROCEDURE Init

thisform.Label1.Caption='Счет-фактура № '+alltrim(f_fact.n_doc)+iif(f_fact.вид,' (расход)',' (приход)');

+' Оплачено: '+alltrim(str(f_fact.sop,20,2))+' Осталось: ';

+alltrim(str(f_fact.итого-f_fact.sop,20,2))

ENDPROC

PROCEDURE Click

IF This.Value=0

SET deleted off

this.Parent.grid1.DeleteMark=.T.

thisform.Refresh

ELSE

SET deleted on

this.Parent.grid1.DeleteMark=.F.

thisform.Refresh

ENDIF

ENDPROC

****** * OTCHET.SCX

PROCEDURE KeyPress

LPARAMETERS nKeyCode, nShiftAltCtrl

IF nKeyCode=27

thisform.Command3.SetFocus()

thisform.Command3.Click()

ENDIF

ENDPROC

PROCEDURE Init

#DEFINE C_LOC "Книга продаж\;Книга покупок\;Реестр продаж\;Реестр покупок\;Журнал регистрации продаж\;Журнал регистрации покупок"

this.ADDITEM(C_LOC)

this.VALUE = THIS.LIST[1]

ENDPROC

PROCEDURE Click

SET talk off

DO case

CASE ThisForm.List1.ListIndex=1

REPORT form kpr.frx to printer noconsole nowait

CASE ThisForm.List1.ListIndex=2

REPORT form kpk.frx to printer noconsole nowait

CASE ThisForm.List1.ListIndex=3

REPORT form rpr.frx to printer noconsole nowait

CASE ThisForm.List1.ListIndex=4

REPORT form rpk.frx to printer noconsole nowait

CASE ThisForm.List1.ListIndex=5

REPORT form jrp.frx to printer noconsole nowait

CASE ThisForm.List1.ListIndex=6

REPORT form jrk.frx to printer noconsole nowait

ENDCASE

thisform.Refresh()

ENDPROC

PROCEDURE Click

SET talk off

Application.Visible=.t.

DO case

CASE ThisForm.List1.ListIndex=1

REPORT form kpr.frx preview

CASE ThisForm.List1.ListIndex=2

REPORT form kpk.frx preview

CASE ThisForm.List1.ListIndex=3

REPORT form rpr.frx preview

CASE ThisForm.List1.ListIndex=4

REPORT form rpk.frx preview

CASE ThisForm.List1.ListIndex=5

REPORT form jrp.frx preview

CASE ThisForm.List1.ListIndex=6

REPORT form jrk.frx preview

ENDCASE

Application.Visible=.f.

thisform.Refresh()

ENDPROC

PROCEDURE Click

Release ThisForm

ENDPROC

****** * OTGR.SCX

PROCEDURE RightClick

DO MENU2.mpr

ENDPROC

PROCEDURE Destroy

SELECT f_otgr

TABLEUPDATE()

Release ww

ENDPROC

PROCEDURE Activate

thisform.grid2.Column1.Enabled=.f.

thisform.grid1.Column2.Enabled=.f.

thisform.grid1.Column3.Enabled=.f.

thisform.grid1.Column3.Combo1.Enabled=.t.

thisform.grid1.Column4.Enabled=.f.

thisform.grid1.Column5.Enabled=.f.

thisform.Label1.Init()

thisform.Refresh()

ENDPROC

PROCEDURE Init

LPARAM jj

SET century on

SET date to german

PUBLIC ww,www

www=.f.

ww=.t.

IF jj>-2

SELECT f_fact

GO jj

ww=.f.

thisform.grid2.Column1.setFocus()

ELSE

thisform.grid2.Column1.setFocus()

ENDIF

ENDPROC

PROCEDURE KeyPress

LPARAMETERS nKeyCode, nShiftAltCtrl

IF nKeyCode=27

thisform.Mypicbtns1.cmdExit.SetFocus()

thisform.Mypicbtns1.cmdExit.Click()

ELSE

IF nKeyCode=-2

www=.t.

thisform.Mypicbtns1.cmdAdd.SetFocus()

thisform.Mypicbtns1.cmdAdd.Click()

ENDIF

ENDIF

ENDPROC

PROCEDURE Deleted

LPARAMETERS nRecNo

SELECT f_otgr

this.Column2.Enabled=.t.

GO nRecNo

this.Column2.Enabled=.f.

#DEFINE MSGBOX_YES6

#DEFINE C_MSGBOX136

#DEFINE C_DELETE_LOC"Вы хотите удалить эту запись?"

#DEFINE C_NOLOCK_LOC"Запись не может быть удалена, так как используется."

UNLOCK ALL

* Note: Cascading deletes should be handled via RI triggers in DBC!

IF DELETED()

RECALL

IF ThisForm.Mypicbtns1.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

thisform.Mypicbtns1.ButtonRefresh()

thisform.Mypicbtns1.NavRefresh()

thisform.LockScreen = .F.

ELSE

IF MESSAGEBOX(C_DELETE_LOC,C_MSGBOX1) = MSGBOX_YES

Delete

IF ThisForm.Mypicbtns1.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

thisform.Mypicbtns1.ButtonRefresh()

thisform.Mypicbtns1NavRefresh()

thisform.LockScreen = .F.

ENDIF

ENDIF

IF THISFORM.ShowWindow = 2

Activate Window (THISFORM.Name)

ENDIF

r_otg(f_fact.счетфакт_id)

thisform.Label1.Init()

NODEFAULT

ENDPROC

PROCEDURE BeforeRowColChange

LPARAMETERS nColIndex

IF www=.f.

IF ww=.f.

NODEFAULT

** ww=.t.

ENDIF

ELSE

this.enabled=.f.

thisform.refresh()

ENDIF

ENDPROC

PROCEDURE AfterRowColChange

LPARAMETERS nColIndex

thisform.Label1.Init()

ENDPROC

PROCEDURE Init

thisform.Label1.Caption='Счет-фактура № '+alltrim(f_fact.n_doc)+iif(f_fact.вид,' (расход)',' (приход)')+' Отгружено: '+alltrim(str(f_fact.sot))+' Осталось: '+alltrim(str(f_fact.итого-f_fact.sot))

ENDPROC

PROCEDURE Click

IF This.Value=0

SET deleted off

this.Parent.grid1.DeleteMark=.T.

thisform.Refresh

ELSE

SET deleted on

this.Parent.grid1.DeleteMark=.F.

thisform.Refresh

ENDIF

ENDPROC

****** * pDATA.PRG

FUNCTION PDATA(n_sf) && функция возвращает последнюю дату оплаты

&& n_sf номер счета-фактуры

LOCAL pDt,nrec,nal&&последняя дата оплаты, номер записи, текущая таблица

nal=alias() && && сохраняем текущую таблицу

SELECT f_oplatа && переходим в таблицу оплат

IF recno()>reccount()or recno()<0 && если указатель записи имеет неправильное значение

nrec=reccount() && встаем на последнюю запись

ELSE

nrec=recno() && встаем на нужную запись

ENDIF

SET filter to код=n_sf && устанавливаем фильтр для конкретного счета-фактуры

pDt={01.01.1900} && минимальная дата для сравнения

SCAN && начало сканирования таблицы

pDt=max(дата,pDt) && поиск последней даты

ENDSCAN && окончание сканирования

SET filter to && убираем фильтр

GO nrec && возвращаемся на сохранненую запись

SELECT &nal && переходим в сохраненную таблицу

RETURN pDt && возвращаем последнюю дату

ENDFUNC

****** * PPREC.PRG

FUNCTION PPREC(n_sf,p_p)&&функция определения последний или первой записи в отфильтрованной таблице

&&n_sf - номер счета-фактуры

&&p_p - последняя или первая запись (0,1)

LOCAL nfil,nrec,nal&& сохранненые фильтр, запись, таблица

nal=alias()&& сохранение таблицы

SELECT f_factt&& переход в таблицу реестра счетов-фактур

nfil=set("filter")&& сохранение фильтра

SET filter to&& уничтожение фильтра

IF recno()>reccount()&&если номер записи неправильный

RETURN .f.&& вернуть false

ELSE

nrec=recno()&&иначе вернуть номер записи

ENDIF

PUBLIC fff&& объявление переменной для создания фильтра

fff=n_sf

SET filter to f_factt.счетфакт_id=fff&&создаем фильтр для конкретного счета фактуры

ON error fff=fff&& свой обработчик событий (уничтожаем сообщения об ошибках FoxPro)

IF p_p=0&&если переданный параметр =0 значит определяем не первая ли запись

GO top&& переходим вверх

ELSE

GO bottom&& иначе переходим вниз

ENDIF

ON error&&ставим стандартный обработчик событий

IF recno()=nrec && если физический номер записи совпадает с первой записью

SET filter to && уничтожаем фильтр

Release fff && уничтожаем временную переменную

GO nrec && переходим обратно на старую запись

SELECT &nal && переходим на сохранненую таблицу

RETURN .t. && возвращаем true

ELSE

SET filter to &nfil && уничтожаем фильтр

Release fff && уничтожаем временную переменную

GO nrec && переходим обратно на старую запись

SELECT &nal && переходим на сохранненую таблицу

RETURN .f. && возвращаем false

ENDIF

ENDFUNC

****** * R_OPL.PRG

FUNCTION r_opl(n_sf)&&функция подсчета суммы оплаты для конкретного счета-фактуры

LOCAL s_sum,nrec,nal,nfr&&сумма оплаты, номер записи, номер записи в таблице счетов-фактур

nal=alias()&&сохраняем таблицу

nrec=recno()&& сохраняем номер записи

SET talk off&& убираем эхо команд

IF n_sf<0&& если номер счета-фактуры несуществующий

SELECT f_fact &&переходим в таблицу счетов-фактур

nfr=recno()&& сохраняем запись в этой таблице

SCAN&& начинаем сканирование

n_sf2=f_fact.счетфакт_id&&узнаем номер счета-фактуры

SELECT f_oplata&&переходим в таблицу оплат

SUM f_oplata.сумма for !delete() and f_oplata.код=n_sf2 to s_sum &&подсчитываем сумму

SELECT f_fact &&переходим в таблицу счетов-фактур

REPLACE f_fact.sop with s_sum&&заменяем поле-значение оплаты на новый подсчитанный результат

ENDSCAN &&оканчание сканирования

SELECT f_fact

GO nfr &&переходим на сохр. запись

SELECT &nal && переходим в сохр таблицу

GO nrec && перемещаем указатель записи

RETURN 0 && возвращаем значение нормальной работы

ELSE

SELECT f_oplata&&переходим в таблицу оплат

SUM f_oplata.сумма for !delete() and f_oplata.код=n_sf to s_sum &&подсчитываем сумму

SELECT f_fact &&переходим в таблицу счетов-фактур

REPLACE f_fact.sop with s_sum&&заменяем поле-значение оплаты на новый подсчитанный результат

SELECT &nal&&возвращае сохр. значения таблицы

GO nrec&&номера записи

RETURN 0&& возвращаем значение нормальной работы

ENDIF

SELECT f_fact&&переходим в таблицу счетов-фактур

ON error clear &&ставим свой обработчик событий

TABLEUPDATE()&&обновляем таблицу

ON error &&стандартный обработчик событий

ENDFUNC

****** * R_OTG.PRG

FUNCTION r_otg(n_sf)&&функция подсчета суммы отгрузки для конкретного счета-фактуры

LOCAL s_sum,nrec,nal,nfr&&сумма отгрузки, номер записи, номер записи в таблице счетов-фактур

nal=alias()&&сохраняем таблицу

nrec=recno() && сохраняем номер записи

SET talk off&& убираем эхо команд

IF n_sf<0&& если номер счета-фактуры несуществующий

SELECT f_fact &&переходим в таблицу счетов-фактур

nfr=recno()&& сохраняем запись в этой таблице

SCAN&& начинаем сканирование

n_sf2=f_fact.счетфакт_id&&узнаем номер счета-фактуры

SELECT f_otgr&&переходим в таблицу отгрузок

SUM f_otgr.сумма for !delete() and f_otgr.код=n_sf2 to s_sum &&подсчитываем сумму

SELECT f_fact &&переходим в таблицу счетов-фактур

REPLACE f_fact.sot with s_sum&&заменяем поле-значение отгрузки на новый подсчитанный результат

ENDSCAN &&оканчание сканирования

SELECT f_fact

GO nfr &&переходим на сохр. запись

SELECT &nal && переходим в сохр таблицу

GO nrec && перемещаем указатель записи

RETURN 0 && возвращаем значение нормальной работы

ELSE

SELECT f_otgr &&переходим в таблицу отгрузок

SUM f_otgr.сумма for !delete() and f_otgr.код=n_sf to s_sum&&подсчитываем сумму

SELECT f_fact &&переходим в таблицу счетов-фактур

REPLACE f_fact.sot with s_sum&&заменяем поле-значение отгрузки на новый подсчитанный результат

SELECT &nal&&возвращае сохр. значения таблицы

GO nrec &&номера записи

RETURN 0&& возвращаем значение нормальной работы

ENDIF

SELECT f_fact &&переходим в таблицу счетов-фактур

ON error clear &&ставим свой обработчик событий

TABLEUPDATE()&&обновляем таблицу

ON error &&стандартный обработчик событий

ENDFUNC

****** * SFGRID.SCX

PROCEDURE Destroy

SELECT f_fact

SET filter to

ENDPROC

PROCEDURE Resize

thisform.Mypicbtns1.left=ThisForm.Width-184

thisform.Mypicbtns1.top=ThisForm.Height-52

thisform.Optiongroup1.top=ThisForm.Height-60

thisform.Command2.top=ThisForm.Height-54

thisform.Command3.top=ThisForm.Height-54

thisform.grid1.Width=ThisForm.Width-31

thisform.grid1.Height=ThisForm.Height-110

ENDPROC

PROCEDURE Init

**set filter to f_fact.вид=.t.

SET deleted off

SET talk off

GO top

ENDPROC

PROCEDURE Activate

SELECT f_fact

IF (type(set("filter"))<>"U") and (UPPER(set("filter"))<>UPPER("f_fact.вид=.f."));

and (upper(set("filter"))<>upper("f_fact.вид=.t."))

fiend=set("filter")

fiend="and("+fiend+")"

ELSE

fiend=""

ENDIF

IF ThisForm.Command2.ForeColor=0

fiend="f_fact.вид=.f."+fiend

SET filter to &fiend

ELSE

fiend="f_fact.вид=.t."+fiend

SET filter to &fiend

ENDIF

**go top

IF ThisForm.Command3.ForeColor=16711680

thisform.Command3.ForeColor=16711680

thisform.Command2.ForeColor=0

thisform.grid1.Column3.Header1.Caption="Поставщик"

thisform.grid1.Column3.ControlSource="f_sprpp.фирма"

thisform.grid1.Column3.Combo1.ControlSource="f_fact.id_фирмапост"

ELSE

thisform.Command2.ForeColor=16711680

thisform.Command3.ForeColor=0

thisform.grid1.Column3.Header1.Caption="Получатель"

thisform.grid1.Column3.ControlSource="f_sprpp1.фирма"

thisform.grid1.Column3.Combo1.ControlSource="f_fact.id_фирмапол"

ENDIF

thisform.grid1.SetFocus()

ENDPROC

PROCEDURE KeyPress

LPARAMETERS nKeyCode, nShiftAltCtrl

IF nKeyCode=27

thisform.Mypicbtns1.cmdExit.SetFocus()

thisform.Mypicbtns1.cmdExit.Click()

ELSE

IF nKeyCode=-2

thisform.Mypicbtns1.cmdAdd.setFocus()

thisform.Mypicbtns1.cmdAdd.Click()

NODEFAULT

ELSE

IF (nKeyCode=13) and (This.ActiveControl.Name="Grid1")

thisform.Mypicbtns1.cmdEdit.setFocus()

thisform.Mypicbtns1.cmdEdit.Click()

NODEFAULT

ENDIF

ENDIF

ENDIF

ENDPROC

PROCEDURE cmdFind.Click

SELECT f_fact

DoDefault()

ENDPROC

PROCEDURE cmdAdd.Click

SELECT f_fact

DO form shet_f with -1,iif(ThisForm.Command2.ForeColor<>0,0,1)

ENDPROC

PROCEDURE cmdDelete.Click

#DEFINE MSGBOX_YES6

#DEFINE C_MSGBOX136

#DEFINE C_DELETE_LOC"Вы хотите удалить эту запись?"+chr(13)+"Вместе с ней удалятся записи из таблицы реестра, оплат и отгрузки"

#DEFINE C_NOLOCK_LOC"Запись не может быть удалена, так как используется."

* Note: Cascading deletes should be handled via RI triggers in DBC!

IF DELETED()

RECALL

SELECT f_factt

GO top

RECALL for счетфакт_id=f_fact.счетфакт_id while !eof()

SELECT f_oplata

GO top

RECALL for код=f_fact.счетфакт_id while !eof()

SELECT f_otgr

GO top

RECALL for код=f_fact.счетфакт_id while !eof()

SELECT f_fact

IF THIS.Parent.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

this.Parent.ButtonRefresh()

this.Parent.NavRefresh()

thisform.LockScreen = .F.

ELSE

IF MESSAGEBOX(C_DELETE_LOC,C_MSGBOX1) = MSGBOX_YES

Delete

SELECT f_factt

GO top

Delete for счетфакт_id=f_fact.счетфакт_id while !eof()

SELECT f_oplata

GO top

Delete for код=f_fact.счетфакт_id while !eof()

SELECT f_otgr

GO top

Delete for код=f_fact.счетфакт_id while !eof()

SELECT f_fact

IF THIS.Parent.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

this.Parent.ButtonRefresh()

this.Parent.NavRefresh()

thisform.LockScreen = .F.

ENDIF

ENDIF

IF THISFORM.ShowWindow = 2

Activate Window (THISFORM.Name)

ENDIF

ENDPROC

PROCEDURE cmdEdit.Click

SELECT f_fact

DO form shet_f with recno(),iif(ThisForm.Command2.ForeColor<>0,0,1)

ENDPROC

PROCEDURE Click

SELECT f_sprpp

SET filter to

SELECT f_fact

SET filter to f_fact.вид=.t.

this.ForeColor=16711680

thisform.Command3.ForeColor=0

thisform.grid1.Column3.Header1.Caption="Получатель"

thisform.grid1.Column3.ControlSource="f_sprpp1.фирма"

thisform.grid1.Column3.Combo1.ControlSource="f_fact.id_фирмапол"

GO top

thisform.grid1.Refresh()

thisform.grid1.SetFocus()

ENDPROC

PROCEDURE Click

SELECT f_sprpp

SET filter to

SELECT f_fact

SET filter to f_fact.вид=.f.

this.ForeColor=16711680

thisform.Command2.ForeColor=0

thisform.grid1.Column3.Header1.Caption="Поставщик"

thisform.grid1.Column3.ControlSource="f_sprpp.фирма"

thisform.grid1.Column3.Combo1.ControlSource="f_fact.id_фирмапост"

GO top

thisform.grid1.Refresh()

thisform.grid1.SetFocus()

ENDPROC

PROCEDURE Deleted

LPARAMETERS nRecNo

GO nRecNo

thisform.Refresh

#DEFINE MSGBOX_YES6

#DEFINE C_MSGBOX136

#DEFINE C_DELETE_LOC"Вы хотите удалить эту запись?"+chr(13)+"Вместе с ней удалятся записи из таблицы реестра, оплат и отгрузки"

#DEFINE C_NOLOCK_LOC"Запись не может быть удалена, так как используется."

* Note: Cascading deletes should be handled via RI triggers in DBC!

IF DELETED()

RECALL

SELECT f_factt

GO top

RECALL for счетфакт_id=f_fact.счетфакт_id while !eof()

SELECT f_oplata

GO top

RECALL for код=f_fact.счетфакт_id while !eof()

SELECT f_otgr

GO top

RECALL for код=f_fact.счетфакт_id while !eof()

SELECT f_fact

IF THIS.Parent.Mypicbtns1.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

this.Parent.Mypicbtns1.ButtonRefresh()

this.Parent.Mypicbtns1.NavRefresh()

thisform.LockScreen = .F.

ELSE

IF MESSAGEBOX(C_DELETE_LOC,C_MSGBOX1) = MSGBOX_YES

Delete

SELECT f_factt

GO top

Delete for счетфакт_id=f_fact.счетфакт_id while !eof()

SELECT f_oplata

GO top

Delete for код=f_fact.счетфакт_id while !eof()

SELECT f_otgr

GO top

Delete for код=f_fact.счетфакт_id while !eof()

IF THIS.Parent.Mypicbtns1.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

this.Parent.Mypicbtns1.ButtonRefresh()

this.Parent.Mypicbtns1.NavRefresh()

thisform.LockScreen = .F.

ENDIF

ENDIF

IF THISFORM.ShowWindow = 2

Activate Window (THISFORM.Name)

ENDIF

GO nRecNo

NODEFAULT

ENDPROC

PROCEDURE Click

SELECT f_fact

SET order to tag n_doc in f_fact

this.Parent.Parent.Refresh()

ENDPROC

PROCEDURE Click

SELECT f_fact

SET order to tag дата in f_fact

this.Parent.Parent.Refresh()

ENDPROC

PROCEDURE Click

SELECT f_fact

IF This.caption="Получатель"

SET order to tag фирма_пол in f_fact

ELSE

SET order to tag фирма_пост in f_fact

ENDIF

this.Parent.Parent.Refresh()

ENDPROC

PROCEDURE Click

SELECT f_fact

SET order to tag итого in f_fact

this.Parent.Parent.Refresh()

ENDPROC

PROCEDURE Click

SELECT f_fact

SET order to tag sop in f_fact

this.Parent.Parent.Refresh()

ENDPROC

PROCEDURE Click

SELECT f_fact

SET order to tag ost in f_fact

this.Parent.Parent.Refresh()

ENDPROC

PROCEDURE Click

IF This.Value=0

SET deleted off

this.Parent.grid1.DeleteMark=.T.

thisform.Refresh

ELSE

SET deleted on

this.Parent.grid1.DeleteMark=.F.

thisform.Refresh

ENDIF

ENDPROC

****** * SHET_F.SCX

PROCEDURE KeyPress

LPARAMETERS nKeyCode, nShiftAltCtrl

IF nKeyCode=27

thisform.Mynew1.Command4.SetFocus()

thisform.Mynew1.Command4.Click()

ELSE

IF nKeyCode=-2

thisform.Mynew1.Command5.SetFocus()

thisform.Mynew1.Command5.Click()

ENDIF

ENDIF

ENDPROC

PROCEDURE Activate

SET deleted off

CursorSetProp("Buffering", 5, "f_fact")

CursorSetProp("Buffering", 5, "f_factt")

thisform.Label5.Caption=ALLTRIM(f_fact.n_doc)

thisform.Label6.Caption=ALLTRIM(f_fact.n_doc)

PUBLIC ar

ar=0

thisform.refresh()

ENDPROC

PROCEDURE Init

PARAM ddd,ddd2

SELECT setup

GO top

qq=setup.value

IF ddd=-1

SELECT f_factt

APPEND blank

REPLACE счетфакт_id with qq

SELECT f_fact

APPEND blank

REPLACE счетфакт_id with qq

REPLACE датасоздзаписи with date()

IF ddd2=1

REPLACE вид with .f.

ENDIF

IF f_fact.вид=.t.

REPLACE f_fact.дата with date()

ENDIF

ELSE

SELECT f_fact

GO ddd

ENDIF

**messagebox(alias()+str(recno()))

thisform.refresh()

SET talk off

ENDPROC

PROCEDURE RightClick

DO MENU1.mpr

ENDPROC

PROCEDURE Destroy

SELECT f_sprpp

SET filter to

SELECT f_sprpp1

SET filter to

ENDPROC

PROCEDURE KeyPress

LPARAMETERS nKeyCode, nShiftAltCtrl

IF (nKeyCode=47)and(This.SelStart=len(alltrim(This.value)))

qqq=This.SelStart

this.value=alltrim(This.value)+substr(dtoc(date()),9,2)

this.SelStart=qqq

ENDIF

ENDPROC

PROCEDURE InteractiveChange

thisform.Label5.Caption=This.Value

thisform.Label6.Caption=This.Value

ENDPROC

PROCEDURE Deleted

LPARAMETERS nRecNo

#DEFINE MSGBOX_YES6

#DEFINE C_MSGBOX136

#DEFINE C_DELETE_LOC"Вы хотите удалить эту запись?"

#DEFINE C_NOLOCK_LOC"Запись не может быть удалена, так как используется."

SELECT f_factt

GO nRecNo

* Note: Cascading deletes should be handled via RI triggers in DBC!

IF DELETED()

RECALL

ELSE

IF MESSAGEBOX(C_DELETE_LOC,C_MSGBOX1) = MSGBOX_YES

Delete

ENDIF

ENDIF

IF DELETED()

RECALL

ELSE

Delete

ENDIF

SUM f_factt.msbn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.SSUM1.Value

SUM f_factt.msn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.СУММАНДС1.Value

SUM f_factt.mssn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.Text2.Value

thisform.grid1.Refresh()

ENDPROC

PROCEDURE KeyPress

LPARAMETERS nKeyCode, nShiftAltCtrl

ENDPROC

PROCEDURE KeyPress

LPARAMETERS nKeyCode, nShiftAltCtrl

IF (nKeyCode=19) or (nKeyCode=15)

NODEFAULT

ENDIF

ENDPROC

PROCEDURE LostFocus

IF признак_ндс=.t.

REPLACE mssn with колво*цена

REPLACE msn with колво*цена*ндс/(100+ндс)

REPLACE msbn with mssn-msn

ELSE

REPLACE msbn with колво*цена

REPLACE msn with колво*цена*ндс/100

REPLACE mssn with msbn+msn

ENDIF

SUM f_factt.msbn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.SSUM1.Value

SUM f_factt.msn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.СУММАНДС1.Value

SUM f_factt.mssn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.Text2.Value

ENDPROC

PROCEDURE InteractiveChange

IF признак_ндс=.t.

REPLACE mssn with колво*цена

REPLACE msn with колво*цена*ндс/(100+ндс)

REPLACE msbn with mssn-msn

ELSE

REPLACE msbn with колво*цена

REPLACE msn with колво*цена*ндс/100

REPLACE mssn with msbn+msn

ENDIF

SUM f_factt.msbn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.SSUM1.Value

SUM f_factt.msn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.СУММАНДС1.Value

SUM f_factt.mssn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.Text2.Value

this.setFocus()

ENDPROC

PROCEDURE LostFocus

ENDPROC

PROCEDURE LostFocus

IF признак_ндс=.t.

REPLACE mssn with колво*цена

REPLACE msn with колво*цена*ндс/(100+ндс)

REPLACE msbn with mssn-msn

ELSE

REPLACE msbn with колво*цена

REPLACE msn with колво*цена*ндс/100

REPLACE mssn with msbn+msn

ENDIF

SUM f_factt.msbn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.SSUM1.Value

SUM f_factt.msn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.СУММАНДС1.Value

SUM f_factt.mssn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.Text2.Value

ENDPROC

PROCEDURE LostFocus

IF признак_ндс=.t.

REPLACE mssn with колво*цена

REPLACE msn with колво*цена*ндс/(100+ндс)

REPLACE msbn with mssn-msn

ELSE

REPLACE msbn with колво*цена

REPLACE msn with колво*цена*ндс/100

REPLACE mssn with msbn+msn

ENDIF

SUM f_factt.msbn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.SSUM1.Value

SUM f_factt.msn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.СУММАНДС1.Value

SUM f_factt.mssn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.Text2.Value

ENDPROC

PROCEDURE LostFocus

IF признак_ндс=.t.

REPLACE msn with msbn*ндс/100

REPLACE mssn with msbn+msn

REPLACE цена with mssn/iif(колво>0,колво,1)

ELSE

REPLACE цена with msbn/iif(колво>0,колво,1)

REPLACE msn with msbn*ндс/100

REPLACE mssn with msbn+msn

ENDIF

SUM f_factt.msbn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.SSUM1.Value

SUM f_factt.msn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.СУММАНДС1.Value

SUM f_factt.mssn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.Text2.Value

ENDPROC

PROCEDURE KeyPress

LPARAMETERS nKeyCode, nShiftAltCtrl

IF (nKeyCode=9) or (nKeyCode=4)

NODEFAULT

ENDIF

ENDPROC

PROCEDURE LostFocus

IF признак_ндс=.t.

REPLACE цена with mssn/iif(колво>0,колво,1)

REPLACE msn with mssn*ндс/(100+ндс)

REPLACE msbn with mssn-msn

ELSE

REPLACE msn with mssn*ндс/(100+ндс)

REPLACE msbn with mssn-msn

REPLACE цена with msbn/iif(колво>0,колво,1)

ENDIF

SUM f_factt.msbn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.SSUM1.Value

SUM f_factt.msn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.СУММАНДС1.Value

SUM f_factt.mssn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.Text2.Value

ENDPROC

PROCEDURE Command1.Click

this.Parent.Command2.Enabled=.f.

this.Parent.Command4.Enabled=.f.

SELECT f_fact

TABLEUPDATE(.t.)

SELECT f_factt

TABLEUPDATE(.t.)

Release ThisForm

ENDPROC

PROCEDURE Command2.Click

IF messagebox("Не сохранять изменения?",36,"")=6

SELECT f_fact

TABLEREVERT(.t.)

SELECT f_factt

TABLEREVERT(.t.)

Release ThisForm

ENDIF

ENDPROC

PROCEDURE Command3.Click

#DEFINE MSGBOX_YES6

#DEFINE C_MSGBOX136

#DEFINE C_DELETE_LOC"Вы хотите удалить эту запись?"

#DEFINE C_NOLOCK_LOC"Запись не может быть удалена, так как используется."

SELECT f_factt

* Note: Cascading deletes should be handled via RI triggers in DBC!

IF DELETED()

RECALL

ELSE

IF MESSAGEBOX(C_DELETE_LOC,C_MSGBOX1) = MSGBOX_YES

Delete

ENDIF

ENDIF

SUM f_factt.msbn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.SSUM1.Value

SUM f_factt.msn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.СУММАНДС1.Value

SUM f_factt.mssn for !(deleted())and(f_factt.счетфакт_id=f_fact.счетфакт_id) to ThisForm.Text2.Value

thisform.grid1.Refresh()

ENDPROC

PROCEDURE Command4.Click

rrr=messagebox("Cохранить изменения?",35,"")

DO case

CASE rrr=6

SELECT f_fact

IF CURSORGETPROP("Buffering") > 1

TABLEUPDATE(.t.)

ENDIF

SELECT f_factt

IF CURSORGETPROP("Buffering") > 1

TABLEUPDATE(.t.)

ENDIF

Release ThisForm

CASE rrr=7

SELECT f_fact

IF CURSORGETPROP("Buffering") > 1

TABLEREVERT()

ENDIF

SELECT f_factt

IF CURSORGETPROP("Buffering") > 1

TABLEREVERT()

ENDIF

Release ThisForm

CASE rrr=2

ENDCASE

ENDPROC

PROCEDURE Command5.Click

SELECT f_factt

APPEND blank

REPLACE счетфакт_id with f_fact.счетфакт_id

REPLACE id_товара with 1

thisform.grid1.Column3.Text1.SetFocus()

ENDPROC

PROCEDURE Refresh

this.Value=iif(f_fact.вид,1,2)

IF This.Value=1

SELECT f_sprpp

**LOCATE FOR F_sprpp.вид=.t.

SET filter to f_sprpp.вид=.t.

**if found()

thisform.Combo2.Value=f_sprpp.код_id

thisform.Combo2.Refresh()

** ThisForm.Combo2.Enabled=.f.

**endif

ELSE

SELECT f_sprpp1

**LOCATE FOR F_sprpp.вид=.t.

SET filter to f_sprpp1.вид=.t.

** if found()

thisform.Combo1.Value=f_sprpp1.код_id

thisform.Combo1.Refresh()

** ThisForm.Combo1.Enabled=.f.

** endif

ENDIF

SELECT f_fact

ENDPROC

PROCEDURE Click

SELECT f_fact

PUBLIC ksh

ksh=f_fact.счетфакт_id

REPORT form fact.frx to printer noconsole nowait

Release ksh

SELECT f_factt

SET filter to

SELECT f_fact

SET filter to

thisform.Refresh()

ENDPROC

PROCEDURE Click

SELECT f_fact

TABLEUPDATE()

SELECT f_factt

TABLEUPDATE()

SELECT f_fact

DO form oplata.scx with recno()

ENDPROC

PROCEDURE Click

SELECT f_fact

TABLEUPDATE()

SELECT f_factt

TABLEUPDATE()

SELECT f_fact

DO form otgr.scx with recno()

ENDPROC

PROCEDURE Click

SELECT f_fact

PUBLIC ksh

ksh=f_fact.счетфакт_id

Application.Visible=.t.

REPORT form fact.frx preview

Application.Visible=.f.

Release ksh

SELECT f_factt

SET filter to

SELECT f_fact

SET filter to

thisform.Refresh()

ENDPROC

PROCEDURE Click

IF This.Value=0

SET deleted off

this.Parent.grid1.DeleteMark=.T.

thisform.Refresh

ELSE

SET deleted on

this.Parent.grid1.DeleteMark=.F.

thisform.Refresh

ENDIF

ENDPROC

****** * SPR.SCX

PROCEDURE Error

LPARAMETERS nError, cMethod, nLine

IF nError=1884

IF sys(2018)="PRIMARYKEY" then

MESSAGEBOX("Фирма с таким кодом уже существует",16,"Ошибка")

this.Parent.Parent.код_id1.SetFocus

RETURN

ELSE

MESSAGEBOX("Фирма с таким инн уже существует",16,"Ошибка")

this.Parent.Parent.инн1.SetFocus

RETURN

ENDIF

ELSE

DoDefault()

ENDIF

ENDPROC

PROCEDURE Init

LPARAM kkk

this.Form1.Pageframe1.ActivePage=kkk

ENDPROC

PROCEDURE Activate

UNLOCK all

SET deleted off

SET exact on

GO top

ENDPROC

PROCEDURE KeyPress

LPARAMETERS nKeyCode, nShiftAltCtrl

IF nKeyCode=27

thisform.Mypicbtns1.cmdExit.SetFocus()

thisform.Mypicbtns1.cmdExit.Click()

ELSE

IF nKeyCode=-2

DO case

CASE ThisForm.Pageframe1.ActivePage=1

thisform.Mypicbtns1.cmdAdd.Setfocus()

thisform.Mypicbtns1.cmdAdd.Click()

CASE ThisForm.Pageframe1.ActivePage=2

thisform.Mypicbtns1.cmdAdd.Setfocus()

thisform.Mypicbtns1.cmdAdd.Click()

CASE ThisForm.Pageframe1.ActivePage=3

thisform.Mypicbtns1.cmdAdd.Setfocus()

thisform.Mypicbtns1.cmdAdd.Click()

CASE ThisForm.Pageframe1.ActivePage=4

thisform.Mypicbtns1.cmdAdd.Setfocus()

thisform.Mypicbtns1.cmdAdd.Click()

CASE ThisForm.Pageframe1.ActivePage=5

thisform.Mypicbtns1.cmdAdd.Setfocus()

thisform.Mypicbtns1.cmdAdd.Click()

CASE ThisForm.Pageframe1.ActivePage=6

thisform.Mypicbtns1.cmdAdd.Setfocus()

thisform.Mypicbtns1.cmdAdd.Click()

CASE ThisForm.Pageframe1.ActivePage=7

thisform.Mypicbtns1.cmdAdd.Setfocus()

thisform.Mypicbtns1.cmdAdd.Click()

ENDCASE

NODEFAULT

ENDIF

ENDIF

ENDPROC

PROCEDURE Page1.Activate

thisform.Caption='Справочник фирм поставщиков/потребителей'

thisform.Pageframe1.Page1.FontBold=.T.

SELECT f_sprpp

SET relation to bank into f_sprb1

thisform.Mypicbtns1.nWorkArea=select()

GO top

thisform.Refresh

this.grid1.SetFocus()

ENDPROC

PROCEDURE Page1.Deactivate

thisform.Pageframe1.Page1.FontBold=.F.

SELECT f_sprpp

SET relation off into f_sprb1

ENDPROC

PROCEDURE Page2.Activate

thisform.Caption='Справочник видов товаров'

thisform.Pageframe1.Page2.FontBold=.T.

SELECT f_sprvt

SET relation to код_группы into f_sprgt

thisform.Mypicbtns1.nWorkArea=select()

GO top

thisform.Refresh

this.grid1.SetFocus()

ENDPROC

PROCEDURE Page2.Deactivate

thisform.Pageframe1.Page2.FontBold=.F.

SELECT f_sprvt

SET relation off into f_sprgt

ENDPROC

PROCEDURE Page3.Activate

thisform.Caption='Справочник групп товаров'

thisform.Pageframe1.Page3.FontBold=.T.

SELECT f_sprgt1

thisform.Mypicbtns1.nWorkArea=select()

GO top

thisform.Refresh

this.grid1.SetFocus()

ENDPROC

PROCEDURE Page3.Deactivate

thisform.Pageframe1.Page3.FontBold=.F.

ENDPROC

PROCEDURE Page4.Activate

thisform.Caption='Справочник единиц измерения'

thisform.Pageframe1.Page4.FontBold=.T.

SELECT f_sprei

thisform.Mypicbtns1.nWorkArea=select()

GO top

thisform.Refresh

this.grid1.SetFocus()

ENDPROC

PROCEDURE Page4.Deactivate

thisform.Pageframe1.Page4.FontBold=.F.

ENDPROC

PROCEDURE Page5.Activate

thisform.Caption='Справочник НДС'

thisform.Pageframe1.Page5.FontBold=.T.

SELECT f_nds

thisform.Mypicbtns1.nWorkArea=select()

GO top

thisform.Refresh

this.grid1.SetFocus()

ENDPROC

PROCEDURE Page5.Deactivate

thisform.Pageframe1.Page5.FontBold=.F.

ENDPROC

PROCEDURE Page6.Activate

thisform.Caption='Справочник документов оплаты'

thisform.Pageframe1.Page6.FontBold=.T.

SELECT f_sprdo

thisform.Mypicbtns1.nWorkArea=select()

GO top

thisform.Refresh

this.grid1.SetFocus()

ENDPROC

PROCEDURE Page6.Deactivate

thisform.Pageframe1.Page6.FontBold=.F.

ENDPROC

PROCEDURE Page7.Deactivate

thisform.Pageframe1.Page7.FontBold=.F.

ENDPROC

PROCEDURE Page7.Activate

thisform.Caption='Справочник банков'

thisform.Pageframe1.Page7.FontBold=.T.

SELECT f_sprb

thisform.Mypicbtns1.nWorkArea=select()

GO top

thisform.Refresh

this.grid1.SetFocus()

ENDPROC

PROCEDURE AfterRowColChange

LPARAMETERS nColIndex

thisform.Refresh

ENDPROC

PROCEDURE Deleted

LPARAMETERS nRecNo

GO nRecNo

thisform.Refresh

#DEFINE MSGBOX_YES6

#DEFINE C_MSGBOX136

#DEFINE C_DELETE_LOC"Вы хотите удалить эту запись?"

#DEFINE C_NOLOCK_LOC"Запись не может быть удалена, так как используется."

* Note: Cascading deletes should be handled via RI triggers in DBC!

IF DELETED()

RECALL

IF THISForm.Mypicbtns1.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

thisform.Mypicbtns1.ButtonRefresh()

thisform.Mypicbtns1.NavRefresh()

thisform.LockScreen = .F.

ELSE

IF MESSAGEBOX(C_DELETE_LOC,C_MSGBOX1) = MSGBOX_YES

Delete

IF THISForm.Mypicbtns1.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

thisform.Mypicbtns1.ButtonRefresh()

thisform.Mypicbtns1.NavRefresh()

thisform.LockScreen = .F.

ENDIF

ENDIF

IF THISFORM.ShowWindow = 2

Activate Window (THISFORM.Name)

ENDIF

GO nRecNo

IF DELETED()

RECALL

ELSE

Delete

ENDIF

ENDPROC

PROCEDURE Click

SELECT f_sprpp

SET order to namef

this.Parent.Parent.Refresh()

ENDPROC

PROCEDURE Click

SELECT f_sprpp

SET order to primarykey

this.Parent.Parent.Refresh()

ENDPROC

PROCEDURE Refresh

IF This.Enabled=.f.

this.Value=alltrim(f_sprpp.телефон)

ENDIF

ENDPROC

PROCEDURE Click

IF This.Value=0

SET deleted off

this.Parent.grid1.DeleteMark=.T.

thisform.Refresh

ELSE

SET deleted on

this.Parent.grid1.DeleteMark=.F.

thisform.Refresh

ENDIF

ENDPROC

PROCEDURE Deleted

LPARAMETERS nRecNo

GO nRecNo

thisform.Refresh

#DEFINE MSGBOX_YES6

#DEFINE C_MSGBOX136

#DEFINE C_DELETE_LOC"Вы хотите удалить эту запись?"

#DEFINE C_NOLOCK_LOC"Запись не может быть удалена, так как используется."

* Note: Cascading deletes should be handled via RI triggers in DBC!

IF DELETED()

RECALL

IF THISForm.Mypicbtns1.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

thisform.Mypicbtns1.ButtonRefresh()

thisform.Mypicbtns1.NavRefresh()

thisform.LockScreen = .F.

ELSE

IF MESSAGEBOX(C_DELETE_LOC,C_MSGBOX1) = MSGBOX_YES

Delete

IF THISForm.Mypicbtns1.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

thisform.Mypicbtns1.ButtonRefresh()

thisform.Mypicbtns1.NavRefresh()

thisform.LockScreen = .F.

ENDIF

ENDIF

IF THISFORM.ShowWindow = 2

Activate Window (THISFORM.Name)

ENDIF

GO nRecNo

IF DELETED()

RECALL

ELSE

Delete

ENDIF

ENDPROC

PROCEDURE Click

SELECT f_sprvt

SET order to тов_id

this.Parent.Parent.refresh()

ENDPROC

PROCEDURE Click

SELECT f_sprvt

SET order to наименован

this.Parent.Parent.Refresh()

ENDPROC

PROCEDURE Click

SELECT f_sprvt

SET order to код_группы

this.Parent.Parent.refresh()

ENDPROC

PROCEDURE Click

IF This.Value=0

SET deleted off

this.Parent.grid1.DeleteMark=.T.

thisform.Refresh

ELSE

SET deleted on

this.Parent.grid1.DeleteMark=.F.

thisform.Refresh

ENDIF

ENDPROC

PROCEDURE AfterRowColChange

LPARAMETERS nColIndex

thisform.Refresh

ENDPROC

PROCEDURE Click

SET order to код_id

this.Parent.Parent.Refresh()

ENDPROC

PROCEDURE Click

SET order to наименован

this.Parent.Parent.Refresh()

ENDPROC

PROCEDURE Click

IF This.Value=0

SET deleted off

this.Parent.grid1.DeleteMark=.T.

thisform.Refresh

ELSE

SET deleted on

this.Parent.grid1.DeleteMark=.F.

thisform.Refresh

ENDIF

ENDPROC

PROCEDURE AfterRowColChange

LPARAMETERS nColIndex

thisform.Refresh

ENDPROC

PROCEDURE Deleted

LPARAMETERS nRecNo

GO nRecNo

thisform.Refresh

#DEFINE MSGBOX_YES6

#DEFINE C_MSGBOX136

#DEFINE C_DELETE_LOC"Вы хотите удалить эту запись?"

#DEFINE C_NOLOCK_LOC"Запись не может быть удалена, так как используется."

* Note: Cascading deletes should be handled via RI triggers in DBC!

IF DELETED()

RECALL

IF THISForm.Mypicbtns1.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

thisform.Mypicbtns1.ButtonRefresh()

thisform.Mypicbtns1.NavRefresh()

thisform.LockScreen = .F.

ELSE

IF MESSAGEBOX(C_DELETE_LOC,C_MSGBOX1) = MSGBOX_YES

Delete

IF THISForm.Mypicbtns1.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

thisform.Mypicbtns1.ButtonRefresh()

thisform.Mypicbtns1.NavRefresh()

thisform.LockScreen = .F.

ENDIF

ENDIF

IF THISFORM.ShowWindow = 2

Activate Window (THISFORM.Name)

ENDIF

GO nRecNo

IF DELETED()

RECALL

ELSE

Delete

ENDIF

ENDPROC

PROCEDURE Click

SET order to код_id

this.Parent.Parent.Refresh()

ENDPROC

PROCEDURE Click

SET order to ед_изм

this.Parent.Parent.Refresh()

ENDPROC

PROCEDURE Click

IF This.Value=0

SET deleted off

this.Parent.grid1.DeleteMark=.T.

thisform.Refresh

ELSE

SET deleted on

this.Parent.grid1.DeleteMark=.F.

thisform.Refresh

ENDIF

ENDPROC

PROCEDURE Deleted

LPARAMETERS nRecNo

GO nRecNo

thisform.Refresh

#DEFINE MSGBOX_YES6

#DEFINE C_MSGBOX136

#DEFINE C_DELETE_LOC"Вы хотите удалить эту запись?"

#DEFINE C_NOLOCK_LOC"Запись не может быть удалена, так как используется."

* Note: Cascading deletes should be handled via RI triggers in DBC!

IF DELETED()

RECALL

IF THISForm.Mypicbtns1.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

thisform.Mypicbtns1.ButtonRefresh()

thisform.Mypicbtns1.NavRefresh()

thisform.LockScreen = .F.

ELSE

IF MESSAGEBOX(C_DELETE_LOC,C_MSGBOX1) = MSGBOX_YES

Delete

IF THISForm.Mypicbtns1.UpdateRows() &&success

* Success

IF !EOF()

Skip 1

ENDIF

IF EOF() AND !BOF()

Skip -1

ENDIF

ENDIF

thisform.LockScreen = .T.

thisform.Mypicbtns1.ButtonRefresh()

thisform.Mypicbtns1.NavRefresh()

thisform.LockScreen = .F.

ENDIF

ENDIF

IF THISFORM.ShowWindow = 2

Activate Window (THISFORM.Name)

ENDIF

GO nRecNo

IF DELETED()

RECALL

ELSE

Delete

ENDIF

ENDPROC

PROCEDURE AfterRowColChange

LPARAMETERS nColIndex

thisform.Refresh

ENDPROC

PROCEDURE Click

IF This.Value=0


Подобные документы

  • Обзор программных средств разработки приложений и обоснование выбора языка программирования. Классификация приложений для работы с базами данных. Функциональная структура базы данных с указанием назначения программных модулей, руководство пользователя.

    дипломная работа [645,3 K], добавлен 21.11.2010

  • Обзор возможностей, базовых классов и элементов управления Microsoft Visual Foxpro, описание функций и возможностей языка SQL. Постановка задачи, руководство пользователя и листинг программы. Компоненты информационной системы, основные функции СУБД.

    курсовая работа [360,1 K], добавлен 12.06.2010

  • Базы данных и системы управления базами данных. Структура простейшей базы данных, свойства полей. Понятие языка SQL. Проектирование баз данных, режимы работы, объекты. СУБД Microsoft Access. Создание базы данных "Электротовары" средствами Visual FoxPro.

    курсовая работа [5,7 M], добавлен 29.04.2014

  • Математическая и физическая модели ПМК для автоматизации учета данных о научной работе в ВУЗе. Разработка программного обеспечения программно–методического комплекса для автоматизации учета данных о научной работе в ВУЗе, их экономическое обоснование.

    дипломная работа [4,8 M], добавлен 30.06.2012

  • Компоненты и классификация банков данных. Модели данных: иерархическая, сетевая, реляционная, постреляционная, многомерная, объектно-ориентированная. Настольные системы управления базами данных: VisualdBase, Рarаdох, Microsoft FoxРrо и Visual FoxРrо.

    курсовая работа [849,8 K], добавлен 25.04.2015

  • Теоретические основы создания баз данных в Visual Foxpro 9.0. Описание программы, использование ее команд. Создание табличной базы данных, отношений между таблицами в многотабличной базе данных больных в больнице. Редактирование табличного отчета.

    курсовая работа [681,2 K], добавлен 19.12.2013

  • Обоснование необходимости разработки программы для игры "Тетрис". Математическая и графическая части алгоритма. Выбор языка и среды программирования. Отладка текста программы, разработка интерфейса пользователя. Тестирование, руководство пользователя.

    курсовая работа [1,5 M], добавлен 17.01.2011

  • Обоснование необходимости создания программного продукта. Данные, которые хранятся в базе данных. Обоснование их достаточности. Операции по обработке данных. Описание интерфейса пользователя с иллюстрациями диалоговых окон. Инструкция для пользователя.

    курсовая работа [886,5 K], добавлен 11.10.2008

  • Разработка программы с целью автоматизации учета счет-фактур с использованием СУБД Microsoft Access, ее основные этапы и характеристика, ожидаемые конечные результаты и выгоды. Требования к организации сбора информации. Руководство пользователя.

    курсовая работа [1,1 M], добавлен 23.03.2011

  • Разработка программы средствами Turbo Pascal для автоматизации процесса работы с небольшими базами данных. Состав используемого аппаратного обеспечения. Общая схема структуры языка программирования Паскаля и приемы процедурного программирования.

    курсовая работа [61,6 K], добавлен 09.03.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.