dbunlock

Serwis wyszukanych fraz

Czym zajmuje się KAMIENIARSTWO ?

Temat: harbour - clipper - nowosci.
...are not yet implemented. Please note that the scripts do *not* [yet] support Ole Automation. ===================================================== Przy pomocy tego skrypu zalozylem tabele, poindeksowalem ja zgodnie z CDXami, dodawalem rekordy. Skrypt taki, j.w. pisze, mozna roznie uruchamiac, robilem to spod iExplorera i CMD. W tym samym czasie tabela ta byla otwarta przez aplikacje clipperowa, ktora na biezaco widziala zmiany robione w tabeli (nawet przed dbUnLock() - co wskazuje na jakas niezgodnosc). W skrypcie uzywa sie skladni zywcem wzietej z Clippera (i to przed preprocesorem !), a wykonuje sie to jako skrypt windowsowy - widac ze z czasem pewnie bedzie mozna wlaczyc to do wspolpracy z serwerem www. Nie ma na razie GUI, i na ten moment mozna sie poslugiwac jedynie Alert'em() - ale juz w tej chwili mozna przy jego uzyciu pisac skrypty ktore beda wykonywac jakies przetwarzanie z uzyciem DBFow - nawet przy pracujacym...
Źródło: topranking.pl/1252/harbour,clipper,nowosci.php



Temat: CLIPPER
...Czy ma ktos moze wykaz funkcji ktore nie moga byc uruchomine w wyrazeniu | aliasowym ? | Np. nie mozna : | Alias-( F_cjaTuNieDzialajaca()) | Marek Horodyski Piszę programy w Clipperze od wielu lat, ale nie spotkałem się z takim problemem, jeżeli oczywi¶cie funkcja ma sens w wyrażeniu aliasowym. Podaj może przykład jaka funkcja nie daje się uruchomić w wyrażeniu aliasowym. Pozdrawiam Marek Ha, zebym to ja pamietal. Dzis spod debuggera nie poszlo mi Alias-( dbUnLock()), a po przejsciu do tego obszaru zdjecie blokad zadzialalo. No, ale to bylo spod debuggera, wiec moze sie nie liczyc (polecenie po "?" w oknie zapytan). W programie to normalnie dziala. Ale cos mi zaswitalo ze w dokumentacji byla jakas informacja o zle dzialajacych funkcjach w wyrazeniu aliasowym - ale moge tu cos mylic. Dokumentacji nie widzialem juz pare lat, i nie mam jej pod reka. Moze to jednak pamiec plata mi figla :) Pozdrawiam, Marek...
Źródło: topranking.pl/1253/68,clipper.php


Temat: Problem z rozjeżdżaniem się indeksów.
Marek Horodyski wrote: [...]    Pamiętasz może nazwę? Przejrzałem zawartość, ale nic niestety nie znalazłem... Darek podal nizej ...    Mógłbyś rozwinąć swoją myśl, tzn. co można w tej kwestii poprawić w aplikacji? Dokumentacja mowi : 1. edytujemy dane w zmiennych. U mnie np. dokument zlozony, (np. faktura z pozycjami) jest jena zmienna (wielowymiarowa tablica). Do zapisu idzie w calosci i zwalniana jest (Alias-( dbUnLock())) w calosci. 2. blokujemy dane do zapisu jeszcze przed kontrola formalna dokumentu (swiadomie tego nie robie, ale blokuje grupy rekordow przed zapisem i zwalniam tez cale grupy jedna instrukcja) 3. Na DBFach commit robimy przed zwolnieniem (wg. dokumentacji - administrator ma to w opcji). 4. zwalniamy zaraz po zapisie Czesciej zdarzy sie ze na Novelu przesuniecie w dbfie w paru miejscach po dwa bajty w prawo lewo albo rozjechanie konca pliku DBF niz ww...
Źródło: topranking.pl/1252/problem,z,rozjezdzaniem,sie,indeksow.php


Temat: [Clipper]
...Jaką  zastosować metode np. przy numeracji dokumentów w sieci by numery sie nie powtarzały. Nadawac numery ktore pochodza z pola tabeli numerow. W skrocie : wywolanie : Faktury-Numer := DajNumer( 'NumeryFaktur') *---------------- i sama funkcja : Function DajNumer( czegoNumer) If !Numery-( dbSeek( czegoNumer))    Numery-( dbAppend()) Else    While !Numery-( dbRlock())     End End Zwrot := ++Numery-Numer ; Numery-( dbUnLock()) Return zwrot Dziekuje. Pozdrawiam, Marek Horodyski
Źródło: topranking.pl/1252/12,clipper.php


Temat: i COMMIT
...rekord. Ale może masz racje. Może jeszcze ktoÂś się wypowie na ten temat. Po co sie klocic - wystarczy poczytac ;o)     Network environment: DBCOMMIT() makes database updates visible     to other processes.  To insure data integrity, issue DBCOMMIT()     before an UNLOCK operation.  For more information, refer to the     "Network Programming" chapter in the Programming and Utilities Guide. Ale to dbUnLock() lub dbrUnLock( nRec) powoduje widoczosc zmian. Zawsze to mozna sprawdzic. Wylaczenie commitow znacznie przyspiesza prace serwera. Zreszta, niekiedy widac ze jest on ignorowany - tez mozna to sprawdzic. Marek Horodyski
Źródło: topranking.pl/1252/i,commit.php


Temat: - NTX->CDX
"BaLab" <ba@polbox.comwrote in message | | while !numery-(rlock())   //  semafor | enddo | A nie powinno być FLock() ? Inaczej istnieje prawdopodobieństwo, że oba | programy blokują inne rekordy... Nie, każdy rekord jest dla określonej bazy danych.     Pozdrawiam  -  Janek P.S.  Niestety nadal nie wiem, czemu program nie działa dla CDXów   :-( A ja nie wiem dlaczego dziala dla NTXow. Przed zrobieniem dbUnLock() nikt nie powinien zobaczyc zmian. dbCommit() nie ma tu nic do rzeczy. Po zrobieniu
Źródło: topranking.pl/1253/ntx,cdx.php


Temat: problem z CLOSE ALL
...Parametry_Dokumentu) gdzie : Function Numerator( Parametry) Local dok := Alias(), zwrot := 0 Use_Select( 'NUMERATOR') modiDbSeek( Parametry) // paremetry moga spowodowac rozpoczecie numeracji po zmianie roku, miesiaca itp.                                         // tzn. ze jak nie znajdzie to doda rekord, jak znajdzie musi zablokowac zwrot := ++Field-Numer ; dbUnLock() dbSelectArea( dok) Return Zwrot tak pobieznie. Dokladnie chodzi o moment nadania numeru - nie w chwili checi nadania numeru, tylko w momencie jego zwolnienia (zapisu). Stosuje taka technike numerowania dokumentow od wielu lat i doceniam jej zalety. Czesto widze nadawanie numeru w momencie checi stworzenia dokumentu i wlasnie temu sie dziwie. A co jak zrezygnujemy a ktos inny tez zechce dpisywac w miedzyczasie itp. "Same dziory"....
Źródło: topranking.pl/1252/problem,z,close,all.php


Temat: Polskie znaki w Clipperze
...    znak := Substr( txt1, i, 1)           If ( z := At( znak, mazovia)) == 0              txt := txt + znak           Else              txt := txt + SubStr( LatinII, z, 1)           End       End       If RLock()          FieldPut( FieldPos( Lista[ n][ 1]), txt), dbUnLock()       End    End    dbSkip( 1)    ?? CHR(13) + Str( lastREC() - recNO(), 6) End dbCloseAll() Return Nie wiem czy dobrze beda odczytane stringi w deklaracjach zmiennych, nalezy miec nadzieje. W razie czego moge podeslac kody ascii. Po dolaczeniu obj-ow do latin2 nalezy przeindeksowac dane, bo w przeciwnym wypadku beda zglaszane bledy uszkodzen zbiorow indeksowych. Marek Horodyski
Źródło: topranking.pl/1252/polskie,znaki,w,clipperze.php


Temat: CLIPPER - samododajace sie rekordy
...ponizszy ciag wydarzen : 1. Otwieramy tabele w trybie shared. Tabela ma ze 3 klucze indeksowe w CDX.     Dla szybszego zaobserwowania zjawiska, niech tabele bedzie pusta ( LastRec() == 0, RecNo() == 1).     Widzialnosc danych aktywny jest po 1 indekse. 2. Na tej tabeli zakladamy Rlocka'a. Oczywiscie zalozy sie, pomimo tego ze tabela jest w stanie Eof() ! To chyba jest najwieksza wada CDXow. Prosze teraz zmienic wartosc jakiegos pola i zdjac blokade ( dbUnLock()). Jak do tej pory nic sie nie stalo (jeszcze nie wiem dlaczego, ale ale na WinXP blad wystapil juz w tym momencie - czyzby rozne dzialanie roznych wersji windows - a moze wplyw innych czynnikow - opisywany test jest na W98). I coz sie stalo ? A wiec : W tym momencie LastRec() zwraca 1 (rekord sam sie zalozyl !) ! RecNo() zwraca 2 ! Eof() zwraca .F. ! (kto nie wierzy - niech sprawdzi !! - nawet z innej stacji !!!) Do samoistnie zalozonego rekordu nie mozna dostac sie w...
Źródło: topranking.pl/1252/clipper,samododajace,sie,rekordy.php


Temat: Clipper 5.2 liczenie
...po NR_FAKTURY (np. Faktury-( dbClearRel(), dbSetRelation( 'POZYCJE', { || NR_FAKTURY}, 'NR_FAKTURY')) gdzie indeks w pozycjach jest po NR_FAKTURY) If Faktury-( dbRlock())    Faktury-Pozycji := Faktury-Wartosc := 0    While Faktury-Nr_Faktury == Pozycje-NR_Faktury       ++Faktury-Pozycji ; Faktury-Wartosc += Pozycje-( ILOSC * CENA)       Pozycje-( dbSkip( 1))    End    Faktury-( dbUnLock()) End Oczywiscie samo wyrazenie ustalenia wartosci pozycji moze byc bardziej skomplikowane, jak uwzglednisz cla i podatki i rodzaj stosowanej waluty, ale nie jest to juz technologia, tylko merytoryka. Pozdrawiam, Marek Horodyski
Źródło: topranking.pl/1253/clipper,5,2,liczenie.php


Temat: NTX -> CDX
...enddo  f_s-(dbappend())  WHILE neterr()      f_s-(dbappend())  ENDDO Tu jest na 99% blad, ten w/wfragment kodu nic nie robi. To n/w jest u Pana najwazniejsze. f_s-(dbgobottom()) vsym2 := f_s-fs_sym2+1 I teraz dopiero Pan daje appe blank i zapisuje numer.  f_s-(dbappend())  WHILE neterr()      f_s-(dbappend())  ENDDO  f_s-fs_sym2 := vsym2  f_s-(dbcommit())  numery-( dbunlock()) W skrocie u Pana to ma byc tak: go bottom nowy_nr=numer+1 add_rec() replace numer with nowy_nr unlock IMHO Pan musi zmienic sposob numerowania dokumentow, niezaleznie od zastosowanych indeksow. serdecznie pozdrawiam Adams PS 1. Tak przy okazji czasem warto ulatwic sobie zycie piszac wlasne/korzystajac z funkcji rec_lock(), add_rec().
Źródło: topranking.pl/1254/ntx,cdx.php


Temat: Clipper internal error 1240
Witam Mam wielki problem. w firmie jest program autora ktorego nieststy juz nie mozna nigdzie znalezc. program dzialal do niedawna ok lecz nagle po awari sieci cos jest nie tak. problem jest taki ze przy wprowadzaniu dokumentu i probie zapisu wywala taki blad: BLAD DBFNTX/1200 Blad typu danych i sie wywala po czym wypisuje: DBUNLOCK(0): blad wewnetrzny 1240. Doczytalem ze pierwszy blad spowodowany jest proba wprowadzenia do bazy danych zlego typu - lecz program wczesniej (10 lat) dobrze dzialal. drugi blad ( http://www.ghservices.com/gregh/clipper/ie52e.htm#1240 ) - z tego co doczytalem to moze byc wina popsucia sie plikow baz lub indexow wiec stworzylem nowe bazy i do nich indeksy ale tylko te ktore sa ruszane przy uruchamianiu tego programu. i nic to nie dalo. zauwazylem ze...
Źródło: topranking.pl/1254/clipper,internal,error,1240.php


Temat: NTX -> CDX
...2 użytkowników faktur) nadaje ten sam numer 2 fakturom. Co robię źle? Clipper 5.3, Exospace, Novell. Używam DBFNTX do części baz i DBFCDX do niektórych - może tak nie można? while !numery-(rlock())   //  semafor enddo f_s-(dbappend()) WHILE neterr()     f_s-(dbappend()) ENDDO rn := f_s-(recno()) f_s-(dbgobottom()) vsym2 := f_s-fs_sym2+1 f_s-(dbgoto(rn)) f_s-fs_sym2 := vsym2   // numer faktury f_s-(dbcommit()) numery-( dbunlock())
Źródło: topranking.pl/1254/ntx,cdx.php


Temat: NTX -> CDX
...    nr_pola == Nil .AND. wartosc == Nil     numer := ++Field-numer    ElseIf ValType( nr_pola) == 'N' .AND. Przedzial( 1, nr_pola, FCount())     numer := FieldGet( nr_pola)     If wartosc != Nil .AND. ValType( numer) == ValType( wartosc)      FieldPut( nr_pola, wartosc)     End    End    If v( AUTOCOMMIT)     dbCommit()    End     dbUnLock()    If !Empty( b)     Select( b)    End   End  Return numer Marek Horodyski
Źródło: topranking.pl/1254/ntx,cdx.php


Temat: Clipper i fakturowanie
...o jeden dla wywoÄżywanej nazwy   Local numer := 0, b := Alias()   If Use_Dbf( 'NUMERY')    If BPT( nazwa)     Field-nazwa := nazwa    End    If wartosc == Nil     numer := ++Field-numer    ElseIf ValType( wartosc) == 'C'     numer := Field-Numer    ElseIf ValType( wartosc) == 'N'     numer := Field-Numer := wartosc    End    /*DBCommit() ; */ dbUnLock()    Select( b)   End  Return numer ********************* Pojawia sie tu funkcja BPT, ktora mozna w skrocie tak okreslic : Function Bpt( parametr) If !dbSeek( parametr)    dbAppend()    Return .t. Else    Rlock() End Return .f. ale w rzeczywistosci jest to o wiele bardziej skomplikowany element duzo wiekszego mechanizmu. Zwroci ona zawsze prawde dla pierwszego wywolania funkcji NUMER z nowym...
Źródło: topranking.pl/1252/40,clipper,i,fakturowanie.php


Temat: Clipper + Samba
Uzywam oprogramowanie bazodanowego (clipper) na komputerach Windows 95, 98, DOS. Serwer linux red-hat 7.2 SAMBA Wszystko dziala swietnie jednak czasami zdarza sie, ze powieli mi sie numer dokumentu i nie mam pojecia z czym to moze byc zwiazane. Liczniki przechowywane sa w jednym pliku .dbf i przy kazdym wystawieniu dokumentu powinny sie zwiekszac, jednak raz na jakis czas tak sie nie dzieje... prosze o pomoc Poczytaj o: dbCommit() dbUnlock() Poczytaj dokumentacje do Samby - znajdziesz tam coś takiego jak Win9X-CacheHandling.reg A pozatym jak pisał kolega Marek - możesz mieć buraka w programie.
Źródło: topranking.pl/1255/clipper,samba.php


Temat: usuwanie
...w VFP3 nie stosujac polecenia PACK, gdyz polecenie to wymaga wylacznego dostepu do pliku, a moje pliki DBF sa wspoluzytkowane. Darek D. 2 sposoby : 1 - pierwszy ktory otworzy na Exclusiv (jak mu sie uda) - robi PACK.     UWAGA - wskazane jest jakies zaznaczanie - czy byl robiony dbDelete() na tabeli. 2. : Zamiast dbDelete() cos na ksztalt (ziala tylko przy istniejacych indeksach !) : If Rlock()     WyczyscRekord()     dbDelete()     dbUnLock()     // zalecane tez : dbSkip( 1) End Zamiast Append Blank cos na ksztalt funkcji dbApp() : Set( 11, .f.) dbGoTop() If deleted()     Rlock()     dbRecAll() Else    dbAppend() End Set( 11, .t.) Funkcje musisz dopracowac - tu jest idea - kazdy nowy rekord wpada w miejsce skasowanego. Marek Horodyski
Źródło: topranking.pl/1257/usuwanie.php


Temat: Clipper - przejście z NTX na CDX
Andrzej P. Wozniak <us@poczta.onet.pl.invalid napisał(a): Bardziej wskazane jest tu użycie blokady pliku i blokowej zamiany if flock() replace data1 with nowa_data, data2 with nowa_data all // for ... dbunlock() Daje dokladnie ten sam wynik - error no 8006. Czy "DATA" oznacza datę kalendarzową czy dane? Użyj jawnie konwersji do tekstowego wyrażenia indeksowego np. DTOS(DATA) lub STR(DATA) czy w ogólnej postaci cField1 + DToS(dField2)+ Str(nField3), zwłaszcza jeśli używasz sortowania polskiego z plikami NTXsort.OBJ. Pole typu "Date" i indeks jest po dacie. Bede musial pewnie przejsc na indeks on dtos(data) (uzywam...
Źródło: topranking.pl/1252/clipper,przejscie,z,ntx,na,cdx.php


Temat: [CLIPPER]
...dla grupowiczów: kto poda krótki przyklad programu, który rozwali pliki indeksowe ? Warunek oczywiscie, ze sa one otwarte podczas aktualizacji bazy danych. 1. Porzadny serwer - zadne Windows - Novell albo Samba 2. Porzadnie polozone okablowanie - zadnych kabli na podlodze, zadnych hubow za 100,- pln, zadnych wtyczek bez zachowanej sekwencji, zadnych gniazdek telefonicznych 3. Porzadnie skonfigurowana siec - tylko TCP/IP 4. W programie zawsze po zmianach dbUnlock i dbCommit (w tej kolejnosci) 5. Na zakonczenie aplikacji kasujesz flage Archive (jak sie uda) 6. Na rozpoczecie aplikacji sprawdzasz flage Archive dla DBF, memo i indeksow - jak jest ustawiona to kasujesz indeksy i indeksujesz na nowo 7. Uzywasz DBFCDX, nie uzywasz pack, reindex Dla sieci do 10 klientow wystarczy - mam kientow (piekarnie, stacje benzynowe, duze sklepy), w ktorych w niektorych tabelach jest ponad 1 mln.rekordow (razem baza - ok 1 GB),...
Źródło: topranking.pl/1252/80,clipper.php


Temat: dbf i fpt
...lancuchy znakow. Np. mam tak (jakis fragment sciagniety z | ekranu ) : [...] Zarówno xHarbour jak i Clipper 5.3 potrafią zapisywać do FPT dowolne typy zmiennych z wyjątkiem skompilowanych bloków kodu. Więc nie muszą to być tylko zmienne znakowe np:     filed-fmemo := date() Uzywam bardzo intensywnie pol memo, i myslalem ze nic mnie juz nie zaskoczy. Ale jak widac, czlowiek cale zycie sie uczy. Faktycznie : rlock(), field-superstart := date(), dbUnLock() // -zwrocilo AJENT, wartosc pola idacego do indeksu. w polu jest data, a pole nadale jest "M" ! ValType( FieldGet( FieldPos( 'SUPERSTART'))) // Zwraca "D" ! O ! Przy powrocie do obiektu browsera aplikacja zwisła :( Czyli mozna - ale ostrożnie :) "rewitalizowalem" aplikacje (taki krzyzyk w prawym gornym rogu :). Po restacie  : Blad BASE /1101 Argument error : LTRIM Oj - bardzo ostrożnie. No tak, browser ma blok...
Źródło: topranking.pl/1252/dbf,i,fpt.php


Temat: clipper+cdx+pole_logiczne
Czy miał ktoś problem z polami logicznymi w clipperze z RDD CDX. Zgłasza mi jakis dziwny błąd wykonania po modyfikacji rekordu w polu logicznym funkcja dbUnLock() - , a pole to jest kluczem indeksu. Nie ma tego przy NTX-ach. Marek Horodyski
Źródło: topranking.pl/1254/clipper,cdx,pole,logiczne.php


Temat: NTX -> CDX
...enddo f_s-(dbappend()) WHILE neterr()     f_s-(dbappend()) ENDDO rn := f_s-(recno()) jaki masz w tym momencie aktywny klucz indeksowy na bazie f_s - jesli fs_sym2+ ....   to ok f_s-(dbgobottom()) vsym2 := f_s-fs_sym2+1 w przeciwnym niekoniecznie staniesz na najwyzszym numerze f_s-(dbgoto(rn)) f_s-fs_sym2 := vsym2   // numer faktury i tutaj podstaw rowniez pozostale skladniki klucza ind (jesli masz) f_s-(dbcommit()) numery-( dbunlock()) ponaddto sprawdz z innym klientem novela w tej chwili nie powiem w jakiej konfiguracji ale znam przypadki gdzie zmiana klienta novella rozwalala dbf-y z takim przypadkiem jak u ciebie borykalem sie pod win9x z kartami 3com combo (jedne z pierwszych na PCI) - pomogla dopiero zmiana driverow w win9x na 16-bitowe a bylbym zapomnial u mnie tak bylo z ntx-ami tak ze niekoniecznie to wina cdx-ow
Źródło: topranking.pl/1254/ntx,cdx.php


  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • pozycb.opx.pl
  •