Forum Użytkownikow Subiekt GT
InsERT GT => Dodatki - zestawienia - sfera => Wątek zaczęty przez: mysz0n w Luty 28, 2017, 21:36:33
-
Chciałem przypisać do ponad 1tys kontrahentów, pewną cechę o id 245 (przez sferę w php, dane pobieram z tablicy symboli)
$Okh = $Subiekt->Kontrahenci->Wczytaj($value);
$Okh->Cechy->Dodaj('245');
@$Okh->Zapisz();
wszystko ładnie działa, ale co 20-30 kontrahentów dostaję error:
Uncaught exception 'com_exception' with message '<b>Source:</b> InsERT.GT.1<br/><b>Description:</b>
Istnieje już kontrahent o podanym numerze PESEL.\r\n'
lub
Istnieje już kontrahent o podanym numerze NIP
Moje pytanie brzmi, dlaczego z poziomu subiekta mogę dodać cechę i nie dostaję żadnej informacji o błędzie, a tu mam to info i skrypt kończy się wykonywać?
czy jest jakaś metoda sferowego ignorowania takich błędów?
-
Moje pytanie brzmi, dlaczego z poziomu subiekta mogę dodać cechę i nie dostaję żadnej informacji o błędzie, a tu mam to info
Sprawdź raz jeszcze.
i skrypt kończy się wykonywać?
Bo nie obsługujesz wyjątków.
czy jest jakaś metoda sferowego ignorowania takich błędów?
Jak zawsze polecam korzystać z pomocy do programu, cytat:
Atrybut PowielNIPBezUI
Atrybut określa czy kontrahent (zobacz obiekt Kontrahent) może zostać dodany do kartoteki kontrahentów mimo istnienia w bazie innego kontrahenta o takim samym numerze NIP.
-
Faktycznie - ponownie sprawdziłem i z poziomu subiekta wyrzuca błąd (musiałem sprawdzić na złym kontrahencie)
Jeśli możesz podpowiedz jeszcze dlaczego to mi nie chce przejść?
$Okh = $Subiekt->Kontrahenci->Wczytaj($value);
$Okh->PowielNIPBezUI(TRUE);
$Okh->PowielPESELBezUI(TRUE);
$Okh->Cechy->Dodaj('245');
Dostaje błąd Error [0x80020011] Nie obsługuje kolekcji.
W różnych miejscach próbowałem dodać PowielPESELBezUI, ale nic nie pasuje.
Wybacz, za pytania, pewnie z Twojego punktu widzenia banalne, ale dopiero zaczynam przygodę ze Sferą, to co już udało mi się ogarnąć jest bardzo fajne i licze na to, że jeszcze kilka przykładów i opanuję sferę do tego stopnia, że nie będę musiał zawracać głowy na forum.
-
$Okh->Cechy->Dodaj('245');
Nie znam zupełnie php, ale czy to '245' to w tym języku jest liczba całkowita?
Bo wg helpa do Sfery
wyrazenie.Dodaj(cechaId)
(...)
cechaId
Long. Identyfikator cechy z tabeli sl_CechaKw.
-
Ta linia jest ok, wysypuje się w momencie dodania
$Okh->PowielNIPBezUI(TRUE);
lub
$Okh->PowielPESELBezUI(TRUE);
php nie jest wrażliwy na to czy podam mu Dodaj('245'); czy Dodaj(245);
Ogólnie bez tych lini PowielNIP, PowielPESEL działa prawidłowo, ale wysypuje się jak trafi na kontrahenta bez numeru PESEL lub NIP, wtedy skrypt przestaje się wykonywać, kolega dkozlowski polecił użycie PowielNIPBezUI, ale nie wiem jak i gdzie to wkomponować w kod :/
-
Dostaje błąd Error [0x80020011] Nie obsługuje kolekcji.
W różnych miejscach próbowałem dodać PowielPESELBezUI, ale nic nie pasuje.
Wybacz, za pytania, pewnie z Twojego punktu widzenia banalne, ale dopiero zaczynam przygodę ze Sferą, to co już udało mi się ogarnąć jest bardzo fajne i licze na to, że jeszcze kilka przykładów i opanuję sferę do tego stopnia, że nie będę musiał zawracać głowy na forum.
Ze Sferą mogę pomóc, ale PHP musisz nauczyć się sam - dlaczego atrybuty/właściwości obiektu wywołujesz jak metody ? Chyba powinno być tak:
$Okh = $Subiekt->Kontrahenci->Wczytaj($value);
$Okh->PowielNIPBezUI = TRUE;
$Okh->PowielPESELBezUI = TRUE;
-
php nie jest wrażliwy na to czy podam mu Dodaj('245'); czy Dodaj(245);
Dzięki za naukę.
Będę trzymał bezpieczny dystans ;)
-
Ogólnie bez tych lini PowielNIP, PowielPESEL działa prawidłowo, ale wysypuje się jak trafi na kontrahenta bez numeru PESEL lub NIP, wtedy skrypt przestaje się wykonywać, kolega dkozlowski polecił użycie PowielNIPBezUI, ale nie wiem jak i gdzie to wkomponować w kod :/
A jak wyłączysz to z poziomu Subiekta to działa?
-
Ze Sferą mogę pomóc, ale PHP musisz nauczyć się sam - dlaczego atrybuty/właściwości obiektu wywołujesz jak metody ? Chyba powinno być tak:
$Okh = $Subiekt->Kontrahenci->Wczytaj($value);
$Okh->PowielNIPBezUI = TRUE;
$Okh->PowielPESELBezUI = TRUE;
Jak widac możesz pomóc nie tylko ze Sferą.
Poszło, działa. DZIĘKUJĘ - PONOWNIE!