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

Анализ документов, регулирующих применение счетов-фактур. Сущность понятия реляционная модель, теоретическая основа. Характеристика программы Visual FoxPro 5.0. Особенности техники безопасности при работе с ЭВМ. Виды деятельности ОАО "СаратовОблГаз".

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 22.05.2012
Размер файла 710,1 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_YES 6

#DEFINE C_MSGBOX1 36

#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_YES 6

#DEFINE C_MSGBOX1 36

#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_YES 6

#DEFINE C_MSGBOX1 36

#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_YES 6

#DEFINE C_MSGBOX1 36

#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_YES 6

#DEFINE C_MSGBOX1 36

#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_YES 6

#DEFINE C_MSGBOX1 36

#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_YES 6

#DEFINE C_MSGBOX1 36

#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_YES 6

#DEFINE C_MSGBOX1 36

#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_YES 6

#DEFINE C_MSGBOX1 36

#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_YES 6

#DEFINE C_MSGBOX1 36

#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_YES 6

#DEFINE C_MSGBOX1 36

#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

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 код

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 Click

SET order to код

this.Parent.Parent.Refresh()

ENDPROC

PROCEDURE Click

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

this.Parent.Parent.Refresh()

ENDPROC

PROCEDURE Click


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

  • Анализ использования автоматизированной системы управления материально-техническим снабжением и средств программирования. Разработка программы на языке Visual FoxPro, процесс ее работы и отладки. Мероприятия по технике безопасности при работе на ЭВМ.

    дипломная работа [1,0 M], добавлен 29.06.2012

  • Этапы разработки программы "Информационная система ГИБДД". Характеристика понятия и видов интерфейса программного продукта. Анализ и экономическое обоснование разрабатываемой программы. Изучение общих требований по технике безопасности при работе на ПК.

    дипломная работа [3,9 M], добавлен 27.02.2010

  • Общие сведения о работе программы в среде программирования Microsoft Visual Studio 2008, на языке программирования C++. Ее функциональное назначение. Инсталляция и выполнение программы. Разработанные меню и интерфейсы. Алгоритм программного обеспечения.

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

  • Общая характеристика деятельности Калининградского филиала федерального государственного бюджетного учреждения "Центр системы мониторинга рыболовства и связи". Инструктаж на рабочем месте. Анализ базы данных предприятия с помощью программы Visual FoxPro.

    отчет по практике [18,7 K], добавлен 10.02.2014

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

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

  • Обоснование выбора языка программирования. Анализ входных и выходных документов. Логическая структура базы данных. Разработка алгоритма работы программы. Написание программного кода. Тестирование программного продукта. Стоимость программного продукта.

    дипломная работа [1008,9 K], добавлен 13.10.2013

  • Особенности алгоритмов, критерии качества. Создание и применение программного продукта на языке Delphi. Тип операционной системы. Внутренняя структура программного продукта. Руководство пользователя и программиста, расчет себестоимости и цены программы.

    дипломная работа [1,5 M], добавлен 12.06.2009

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

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

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

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

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

    отчет по практике [4,8 M], добавлен 31.03.2015

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