Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

REPORT_PERSON_ACTIVITY nie zwraca pkd tylko zawsze że nie znaleziono wpisu #102

Closed
pawel-dubiel opened this issue Apr 18, 2021 · 7 comments · Fixed by #107
Closed

REPORT_PERSON_ACTIVITY nie zwraca pkd tylko zawsze że nie znaleziono wpisu #102

pawel-dubiel opened this issue Apr 18, 2021 · 7 comments · Fixed by #107

Comments

@pawel-dubiel
Copy link

REPORT_PERSON_ACTIVITY zawsze zwraca error coe dla osób fizycznych. Nie wiem czy tego sie mam spodziewać.

        (
            [ErrorCode] => 4
            [ErrorMessagePl] => Nie znaleziono wpisu dla podanych kryteriów wyszukiwania.
            [ErrorMessageEn] => No data found for the specified search criteria.
            [pRegon] => tutaj regon number
            [Typ_podmiotu] => 
            [Raport] => BIR11OsFizycznaPkd
        )
@pawel-dubiel
Copy link
Author

co ciekawe dla osób fizycznych ten raport
public const REPORT_ORGANIZATION_ACTIVITY = 'BIR11OsPrawnaPkd';
zwraca liste pkd

@Qrzysio
Copy link

Qrzysio commented Apr 18, 2021

Wydaje mi się, że ten problem był już poruszany. Opiszę krótko jako podsumowanie.

Osoby fizyczne w przeszłości miały nadawane NIP, gdy szły do pracy lub otwierały działalność. Od kilku lat NIP nadawany jest wyłącznie osobom, które zakładają działalność. Pracownicy firm posługują się co najwyżej numerem PESEL.

W ubiegłym roku pisałem w #96 o firmie bez adresu. to eden z tych przypadków. Niestety GUS bazuje na numerach REGON, a te są ściśle powiązane z działalnością. Więc przy jednoosobowych działalnościach gospodarczych musimy bazować na numerach NIP i rejestrze CEIDG (firma.gov.pl). Ten system ma swoje API (https://datastore.ceidg.gov.pl). Należy się zarejestrować i pobrać klucz. Miał ruszyć nowy serwis rządowy, ale do tej pory nie ruszył. W każdej chwili może się to jednak zmienić, więc piszę to dla potomnych.

Proszę zapoznajcie się także z #90. Tam jest poruszony jeden z wyjątków.

W sprawach danych zwracanych p[rzez API GUS warto wysłać e-mail do GUS. Odpowiadają rzeczowo i szybko, polecam.

@weclaprz
Copy link

weclaprz commented Jul 2, 2021

Witam, chciałbym krótko podzielić się spostrzeżeniami.
Z Api do GUS korzystam w 2 miejscach. Jedna to aplikacja napisana w C# druga w PHP.
O ile w aplikacji C# raport BIR11OsFizycznaPkd działa bez problemu (nie spotkałem nip-u którego by nie zwrócił) i zwraca wartości zgodnie z dokumentacją api ,

<xs:schema id="BIR11OsFizycznaPkd" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="root">
xs:complexType
xs:sequence
<xs:element name="dane" minOccurs="0" maxOccurs="unbounded">
xs:complexType
xs:sequence
<xs:element name="fiz_pkd_Kod" minOccurs="0" maxOccurs="1">
xs:simpleType
<xs:restriction base="xs:string">
<xs:maxLength value="5"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="fiz_pkd_Nazwa" minOccurs="0" maxOccurs="1">
xs:simpleType
<xs:restriction base="xs:string">
<xs:maxLength value="200"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="fiz_pkd_Przewazajace" minOccurs="0" maxOccurs="1">
xs:simpleType
<xs:restriction base="xs:string">
<xs:maxLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="fiz_SilosID" minOccurs="0" maxOccurs="1">
xs:simpleType
<xs:restriction base="xs:int">
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="fiz_Silos_Symbol" minOccurs="0" maxOccurs="1">
xs:simpleType
<xs:restriction base="xs:string">
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="fiz_dataSkresleniaDzialalnosciZRegon" minOccurs="0" maxOccurs="1">
xs:simpleType
<xs:restriction base="xs:date">
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>

Niestety PKD dla osobowości prawnej nie zawiera wszystkich potrzebnych danych.

<xs:schema id="BIR11OsPrawnaPkd" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="root">
xs:complexType
xs:sequence
<xs:element name="dane" minOccurs="0" maxOccurs="unbounded">
xs:complexType
xs:sequence
<xs:element name="praw_pkdKod" minOccurs="0" maxOccurs="1">
xs:simpleType
<xs:restriction base="xs:string">
<xs:maxLength value="5"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="praw_pkdNazwa" minOccurs="0" maxOccurs="1">
xs:simpleType
<xs:restriction base="xs:string">
<xs:maxLength value="200"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="praw_pkdPrzewazajace" minOccurs="0" maxOccurs="1">
xs:simpleType
<xs:restriction base="xs:string">
<xs:maxLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>

@weclaprz
Copy link

weclaprz commented Jul 2, 2021

Poszukałem, popatrzyłem i znalazłem przyczynę.
W pliku ReportTypes.php brakuje dla tablicy REGON_9_REPORTS wpisu self::REPORT_PERSON_ACTIVITY,
Brak tego wpisu powoduje że weryfikacja nazw raportów w api w pliku ReportRegonNumberMapper.php funkcji getRegonNumberByReportName zwraca false.

@johnzuk
Copy link
Owner

johnzuk commented Jul 9, 2021

Sprawdzę ten case - i dodam fixa :)

@pgarnek
Copy link

pgarnek commented Sep 6, 2021

hej @johnzuk , udało Ci się już na to spojrzeć? :]

@johnzuk
Copy link
Owner

johnzuk commented Sep 17, 2021

Dodałem MR zgodnie z opisem ale nie miałem czasu tego przetestować niestety #107 @pgarnek jesteś w stanie zweryfikować czy fix który zaproponował @weclaprz jest ok ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants