Strona startowa

Drukuj

DelRec - polecenie symp

Polecenie przeznaczone jest do stosowania tylko w programach linii Symfonia 2.0. W programach linii Symfonia ERP, w celu uzyskania dostępu do bazy danych, należy stosować polecenie GetADOConnection.

 

Polecenie umożliwia usunięcie rekordu bazy danych.

 

Składnia

Int DelRec (Int numerBazy)

 

Argumenty

Typ

Nazwa

Opis

Int

numerBazy

Numer identyfikujący otwartą bazę danych.

 

Wartość zwracana

Zero, gdy operacja wykonana prawidłowo.

Wartość różna od zera, gdy operacja nie została wykonana. Wartość zwrócona to numer błędu obsługi bazy danych. Błędy te są opisane w oddzielnym pliku pomocy instalowanym wraz z programem.

 

Przykład

//Uworzenia struktury definicji bazy danych

BaseDef bDef

//Utworzenie nowej definicja tabeli typu "osoby"

bDef.New("Osoby")

//Zdefiniowanie pól tabeli

bDef.Field(15, 4, "ID")

bDef.Field(11, 40, "Nazwisko")

bDef.Field(11, 20, "Imie")

//Zdefiniowanie klucza podstawowego "ID", automatyczna numeracja

bDef.Key(0x0100, "ID")

//Określenie pola klucza podstawowego

bDef.KeyField(15, 4, "ID")

//Utworzenie i udostępnienie definicji

bDef.Create()

//Określenie położenia pliku bazy

String sciezka=KatalogFirmy() + "NOWABAZA.DAT"

//Utworzenie pliku bazy danych

Create sciezka For Base "Osoby"

//Ustalenie sposobu obsługi błędu tworzenia bazy

BaseError (sciezka, 4)

//Otworzenie bazy danych

Int nrBazy=Open sciezka For Base "Osoby"

BaseError (sciezka, 4)

//Wpisanie do bazy rekordu

SetKey (nrBazy, "ID")

SetKeySeg (nrBazy, "ID", 0)

SetField (nrBazy, "Nazwisko", "Nazwisko1")

SetField (nrBazy, "Imie", "Imię1")

InsRec (nrBazy)

baseError (nrBazy, 4)

//Zamknięcie pliku bazy danych

Close nrBazy

//Powtórne otworzenie pliku bazy danych

Int nrBazy1=Open sciezka For Base "Osoby"

baseError (nrBazy1, 4)

//Ustawienie rekordu bazy do odczytu

SetKey (nrBazy1, "ID")

SetKeySeg (nrBazy1, "ID", 1)

//Odczytanie rekordu bazy

GetRec (nrBazy1, EQ)

baseError (nrBazy1, 4)

//Sprawdzenie zapisanych w rekordzie informacji

String p1=GetField (nrBazy1, "Nazwisko")

String p2=GetField (nrBazy1, "Imie")

String wpis="Zawartość rekordu odczytana z bazy: "+" "+p1+" "+p2

Print wpis;LF

//Zmiana zawartości rekordu

SetField (nrBazy1, "Nazwisko", "NoweNazwisko1")

SetField (nrBazy1, "Imie", "NoweImię1")

PutRec (nrBazy)

//Ponowne ustawienie rekordu bazy do odczytu

SetKey (nrBazy1, "ID")

SetKeySeg (nrBazy1, "ID", 1)

//Sprawdzenie istnienia ustawianego rekordu

Int jest=GetKey (nrBazy1, EQ)

If jest then

Print "W bazie brak ustawianego rekordu"; LF

else

Print "W bazie istnieje ustawiony rekord"; LF

EndIf

//Sprawdzenie zawartości wybranego segmantu klucza ustawionego rekordu

Int Seg=GetKeySeg (nrBazy1, "ID")

Print "Segment ID klucza wybranego rekordu ma wartość: ", Seg; LF

//Odczyt nowej zawartości rekordu

GetRec(nrBazy1, EQ)

//Sprawdzenie zapisanych w rekordzie nowych informacji

String p1n=GetField (nrBazy1, "Nazwisko")

String p2n=GetField (nrBazy1, "Imie")

String wpisn="Zmieniona zawartość rekordu odczytana z bazy: "+" "+p1n+" "+p2n

Print wpisn;LF

//Usunięcie rekordu

SetKey (nrBazy1, "ID")

SetKeySeg (nrBazy1, "ID", 1)

DelRec (nrBazy1)

//Ponowne ustawienie rekordu bazy do odczytu usuniętego rekordu

SetKey (nrBazy1, "ID")

SetKeySeg (nrBazy1, "ID", 1)

//Sprawdzenie istnienia ustawianego rekordu

Int jest1=GetKey (nrBazy1, EQ)

If jest1 then

Print "Sprawdzenie usunięcia rekordu - rekord został usunięty"; LF

else

Print "Sprawdzenie usunięcia rekordu - rekord istnieje"; LF

EndIf

//Zamknięcie pliku bazy danych

Close nrBazy1

//Usunięcie pliku bazy danych

Delete File sciezka

//Sprawdzenie usunięcia pliku bazy danych

Int nrBazy2=Open sciezka For Base "Osoby"

If nrBazy2>0 then

Print "Sprawdzenie usunięcia pliku bazy - baza istnieje"; LF

Close nrBazy2

else

Print "Sprawdzenie usunięcia pliku bazy - baza została usunięta"; LF

EndIf