mojaSymfonia FORUM https://forum.mix-soft.pl/ |
|
błędy po upgrade z wersji KDP2009 do wersji KDP2010 https://forum.mix-soft.pl/viewtopic.php?f=3&t=1474 |
Strona 1 z 1 |
Autor: | rob [ 2009-12-03, 11:20 ] |
Tytuł: | błędy po upgrade z wersji KDP2009 do wersji KDP2010 |
witam mam taki objaw: po aktualizacji przy zamkniętych okresach, podczas zamykania nowy (kolejnych) okresów płacowych pojawia się pracownik, który już był w archiwum z informacją że ma niezrealizowane zdarzenie. Ten pracownik był trzy lata temu zleceniobiorcom a symfonia wstawia do jego kalendarza rozliczenie umowy zlecenia a wszystkie umowy są rozliczone. Baza przeszła już kilka upgrade'ów (z 2007 do 2008, z 2008 do 2009 )i nie było z tym żadnych problemów a teraz się nagle pojawiły. Proszę o pomoc co mogę zrobić w takim przypadku ? pozdrawiam Robert |
Autor: | shikoo [ 2009-12-03, 12:23 ] |
Tytuł: | |
jest raporcik, który domyka transakcje (działa w 90% przypadków, również przy błędzie 04-błąd generowania zdarzeń), jeżeli chcesz to podaj maila to podeśle razem z opisem (raport jest przygotowany przez sage ale nie opublikowany na forum, bo nie zawsze działa), jeżeli to nie pomoże to trzeba szukać pod pervasivem pewnie jakas seria zdarzeń się wstawiła, trzeba będzie ją usunąć. |
Autor: | rob [ 2009-12-03, 12:56 ] |
Tytuł: | |
Dzięki za szybką odpowieź ale nie możesz tego raportu wkleić tu ? wiadomości na priva zostały wyłączone |
Autor: | rob [ 2009-12-03, 13:13 ] |
Tytuł: | |
dokładnie jest taki komunikat Nie można przyporządkować pracownika "***********" do wzorca "Umowa zlecenia" w dniach od 2009-08-25 do 2009-08-25, gdyż taki przedział czasu pokrywa się z zamkniętymi okresami płacowymi i nie można go przesunąć do okresu otwartego. Błąd Generowania Zdarzeń - 04. Zamykanie 'Aktywnych zdarzeń'. Generowanie zdarzeń przerwane. Nie można zamknąć okresu płacowego "grudzień 2009 podstawowy". W kalendarzu pracownika "***************" wykryto niezrealizowane zdarzenia. |
Autor: | shikoo [ 2009-12-03, 13:22 ] |
Tytuł: | |
//1,"ZamykanieSerii.sc","Zamykanie Dat Serii Transakcji","Specjalne",0,1.0.2,SYSTEM #include "strings.sci" // Raport wywoływany z okna pracowników zamyka 'Serie' na podstwie zamkniętych 'Transakcji' // jesli data zamknięcia serji jest późniejsza niż w danych transakcji to też ją przestawia int nTrans, nSerie, nWartKadr, nInstZdarz int err_ int idSeria long idTrans long idPrac, idKalendarz int jestEvent, nUsunieto, nLZMienionych int nStatus, idElement, idPracKadr, idTranKadr, idElemKadr, nZdarzTrans, nZdarzKadr string strData Date dtSeriaKon Date dtWartKaKon Date dtLast if (Message "Raport naprawczy \n'Zamykanie SERII ZDARZEŃ, które mają w danych zamknięte transakcje' - wersja II.\nCzy chcesz kontynuować?{{icon=? buttons=tN}}") == 7 then error "" long idgrupy = val( Arg0 ) int typ = val( Arg1 ), bArchAdded if !idgrupy && !typ then message sErrTylkoZOknaPrac : error "" if !SetGroup( idgrupy, typ, TR_PRACOWNICY ) then message sErrBlednaGrupa : error "" idprac = GetFirst() if !idprac then message sErrBrakPrac : error "" nTrans = open GetBasePath("TRANSAKCJE") for base "TRANSAKCJE" BaseError(GetBasePath("TRANSAKCJE"), 4) SetKey(nTrans, "secondary") nSerie = open GetBasePath("SERIE_ZDARZEN") for base "SERIE_ZDARZEN" BaseError(GetBasePath("SERIE_ZDARZEN"), 4) SetKey(nSerie, "transakcja") nInstZdarz = open GetBasePath("INST_ZDARZEN") for base "INST_ZDARZEN" BaseError(GetBasePath("SERIE_ZDARZEN"), 4) SetKey(nInstZdarz, "transakcja") nWartKadr = open GetBasePath("WARTOSCI_KADR") for base "WARTOSCI_KADR" BaseError(GetBasePath("WARTOSCI_KADR"), 4) //SetKey(nWartKadr, "transakcja") nLZMienionych = 0 if !SetGroup( idgrupy, typ, TR_PRACOWNICY ) then message sErrBlednaGrupa : error "" idprac = GetFirst() SetKey(nWartKadr, "zdarzenie") dtLast.year=9998 dtLast.month=12 dtLast.day=31 while idprac idKalendarz =0 SetKeySeg(nTrans, "kalendarz", idprac) SetKeySeg(nTrans, "status", 0) err_ = GetRec(nTrans, GE ) idKalendarz = 0 if ( !err_ ) then idKalendarz = GetField(nTrans, "kalendarz") endif while idKalendarz == idprac idTrans = GetField(nTrans, "id") nStatus = GetField(nTrans, "status") idseria = GetField(nTrans, "seria") nZdarzTrans = GetField(nTrans, "zdarzenie") if ( nStatus == 0xFFF ) then idElement = GetField(nTrans, "deftran") SetKeySeg(nSerie, "transakcja", idTrans) err_ = GetRec(nSerie, EQ ) if !err_ then strData = GetField(nSerie, "data_kon") dtSeriaKon.Clear() if ( strData != "" ) then dtSeriaKon.FromStr(strData) endif // if ( dtSeriaKon.Compare(dtLast) == 0 ) then SetKeySeg(nWartKadr, "id_zdarzenia", nZdarzTrans) err_ = GetRec(nWartKadr, GE ) if ( !err_ ) then nZdarzKadr = GetField(nWartKadr,"id_zdarzenia") if ( nZdarzKadr != nZdarzTrans ) then err_=1 //koniec endif endif while ( !err_ ) nZdarzKadr = GetField(nWartKadr,"id_zdarzenia") idPracKadr = GetField(nWartKadr, "id_pracownika") idTranKadr = GetField(nWartKadr, "id_transakcji") if ( nZdarzKadr == nZdarzTrans && idPracKadr == idKalendarz && idTranKadr == idTrans ) then idElemKadr = GetField(nWartKadr, "id_skladnika") if ( idElemKadr == idElement ) then strData = GetField(nWartKadr, "data_kon") dtWartKaKon.Clear() if ( strData != "" ) then dtWartKaKon.FromStr(strData) endif if ( dtWartKaKon.Valid() && dtWartKaKon.Compare(dtLast) != 0 && (!dtSeriaKon.Valid() || dtSeriaKon.Compare(dtWartKaKon) != 0 )) then dtSeriaKon = dtWartKaKon nLZMienionych = nLZMienionych + 1 SetField(nSerie, "data_kon", strData) PutRec( nSerie ) endif endif endif err_ = GetRec(nWartKadr, NX ) if ( !err_ ) then nZdarzKadr = GetField(nWartKadr,"id_zdarzenia") if ( nZdarzKadr != nZdarzTrans ) then err_=1 //koniec jest już inne zdarzenie endif endif wend // endif //nie jest ustawione zakończenie serii endif //seria taka jak w transakcjach endif //status transakcji err_ = GetRec(nTrans, NX) if ( !err_ ) then idKalendarz = GetField(nTrans, "kalendarz") else idKalendarz = 0 endif wend idprac = GetNext() wend if nLZMienionych == 0 then Print "Nie znaleziono zamkniętych TRANSAKCJI i niedomkniętych SERII zdarzeń"; lf else Print "Zamknięto ";nLZMienionych;" SERII na podstawie zamkniętych TRANSAKCJI"; lf endif |
Autor: | shikoo [ 2009-12-03, 13:25 ] |
Tytuł: | |
nazwa raportu: Zamykanie Dat Serii Transakcji, typ raportu:pracownicy, wykonujemy z okna pracowników U mnie szczerze mówiąc nie zadziałał i musiałam grzebać w prewersie żeby usunąć serię zdrazeń ale może komuś pomoże :) właśnie, nie wiem czy w każdej bazie należy zrobić to samo, ale ja wywaliłam to w ten sposób, najpierw w tabeli pracownicy znalazłam pracownika u którego wrzucało to rozliczenie, sprawdziłam jakie ma id, następnie w tabeli serie zdarzeń wyszukałam kalendarz o tym samym id co id pracownika i tam usunęłam wiersz w ktorym data_kon była 12/31/9998 i brak było daty wystąpienia, i pomogło. Nie wiem czy nie trzeba jeszcze czegos tam zmienic.... |
Autor: | rob [ 2009-12-03, 14:27 ] |
Tytuł: | |
no u mnie teżnie działa .. a jak pod pervasivem otworzyć taką bazę ? |
Autor: | shikoo [ 2009-12-03, 14:36 ] |
Tytuł: | |
aha, zapomnialam jeszcze dodać, że przed wykonaniem raportu należałoby usunąć niezrealizowane zdarzenie. a pod pervasivem zeby odpalić bazę musisz otworzyć Pervasive control center i tam dodać, tylko że grzebanie w tym miejscu wiąże się z ryzykiem, że możemy niezle namieszać w bazie więc kopia jak najbardziej wskazana |
Autor: | rob [ 2009-12-03, 15:02 ] |
Tytuł: | |
no tak też myślałem (usunąć najpierw zdarzenie) i tak zrobiłem ale to nie pomogło ... raport niczego nie naprawił ;-( a czy mógłyś mi przeslać krótką instrukcję jaka pod prevasivem podłączyć i edytować bazę danych ? |
Autor: | shikoo [ 2009-12-03, 15:22 ] |
Tytuł: | |
w tym akurat zbyt biegła nie jestem, ale napisze jak ja to robie, po otworzeniu Pervasive Control Center, wybierasz opcję New Database, każe ci podać server, (jeżeli w oknie wyboru serwera jest pusto to nie umiem pomóc :/),potem nazwę bazy oraz należy podać ściężkę do bazy (nic więcej nie ustawiasz), klikasz zakończ i baza powinna się podłączyć. Po wejsciu do danej bazy wybierasz katalog Tables, tam w środku masz tabele, w których są dane bazy |
Autor: | wrob [ 2009-12-03, 16:11 ] |
Tytuł: | |
Pod warunkiem ze rob posiada wygenrowane pliki ddf - inaczej ten opis nie zadziala |
Autor: | shikoo [ 2009-12-03, 16:22 ] |
Tytuł: | |
ehehe, no tak, skleroza, to trzeba miec w uprawnieniach uzytkownika zaznaczone wdrazanie programu i potem polecenie Generowanie DDFs (z paska Firma). |
Strona 1 z 1 | Strefa czasowa UTC+1godz. [letni] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |