W tym artykule opisano instrukcje dotyczące obsługi aplikacji Import danych w odniesieniu do poleceń wpłaty zaliczki. Instrukcje zawierają ogólne kroki postępowania, np. jakie szczególne aspekty należy uwzględnić. Przedstawiono również możliwe warunki wstępne oraz skutki. Opis aplikacji Import danych (m.in. opisy pól i przycisków) znajduje się w artykule Import danych.
Informacje ogólne
Import poleceń wpłaty zaliczki opiera się zasadniczo na aktualnym modelu danych zapisanym w bazie danych repozytorium. Polecenia wpłaty zaliczki obsługują podczas importu podzbiór atrybutów obsługiwanych podczas eksportu. Jeśli planowane jest korzystanie zarówno z importu, jak i eksportu, wówczas – w odróżnieniu od danych podstawowych – zaleca się zdefiniowanie co najmniej jednego osobnego filtra dla eksportu oraz co najmniej jednego osobnego filtra dla importu.
Relacje 1:1 w modelu danych opierają się z reguły na technicznym atrybucie GUID. W zależności od zastosowania podczas importu można użyć technicznego atrybutu GUID albo klucza biznesowego z obiektu docelowego (zwykle code lub number). Dla części obiektów biznesowych do przekształcenia klucza biznesowego na klucz techniczny wymagana jest organizacja (Organisation). Odpowiednia organizacja nie jest zwykle bezpośrednio dostępna w źródle importu, lecz jest określana poprzez kontekst dokumentu. Dodatkowe informacje znajdują się w rozdziale Przegląd: Obsługiwane atrybuty podczas importu.
Polecenie wpłaty zaliczki odwołuje się w bazie do tzw. obiektów biznesowych kodu skrótu. Są to logicznie powiązane grupy atrybutów, które dla wielu dokumentów są identyczne, dzięki czemu ich ponowne wykorzystanie pozwala oszczędzić miejsce w bazie danych i pamięci operacyjnej. Dzięki specjalnej konwersji obiekty biznesowe kodu skrótu są prezentowane dla eksportu i importu jako części.
Niektóre dane polecenia wpłaty zaliczki (np. wartości w walucie krajowej) nie są obsługiwane podczas importu.
Jeśli nie ma pewności, jaki format pliku importu jest odpowiedni, należy postąpić w następujący sposób: W aplikacji Polecenia wpłaty zaliczki należy utworzyć przykładowe polecenie wpłaty zaliczki. Należy wyeksportować je przy użyciu filtra przeznaczonego do importu, w wymaganym formacie oraz z wymaganymi atrybutami. Powstały plik przykładowy można wykorzystać jako szablon do przygotowania plików importu.
Podczas importu obowiązują te same reguły, co podczas edycji w aplikacji. Wartości atrybutów, których nie można przejąć w bieżącym kontekście, są ignorowane. W ustalaniu wartości domyślnych stosowana jest ta sama logika, dzięki czemu import i aplikacja zachowują się identycznie. Dotyczy to również kontroli poprawności.
Instrukcje: Import danych
-
Należy otworzyć aplikację Import danych.
-
Należy wyświetlić filtr (lub jeden z filtrów) dla obiektu biznesowego cisag.app.sales.prepayment.obj.PrepaymentRequest.
-
Zostaje wyświetlony filtr importu Polecenia wpłaty zaliczki.
-
W razie potrzeby można zdefiniować nowy filtr dla tego obiektu biznesowego.
-
-
Atrybuty filtra są już wybrane; w razie potrzeby można dostosować wybór.
-
Na standardowym pasku symboli należy nacisnąć przycisk [Importuj dane].
-
Zostaje otwarte okno dialogowe Import danych.
-
-
W oknie dialogowym Import danych można skonfigurować ustawienia pliku importu. Opis pól znajduje się w artykule Import danych.
-
Należy nacisnąć jeden z przycisków [W tle] lub [Natychmiast]
-
Import zostaje wykonany.
-
Informacje szczegółowe
Poniżej przedstawiono wskazówki dotyczące następujących tematów:
-
Utworzenie
-
Szczególne aspekty edycji istniejącego polecenia wpłaty zaliczki
-
Automatyczne zwolnienie po imporcie
-
Przejęcie danych historycznych
Utworzenie
Minimalnie wymagane atrybuty dla każdego obiektu polecenia wpłaty zaliczki:
-
Rodzaje poleceń wpłaty zaliczki: code
-
Odniesienie Vertriebsauftrag: orderAssignmentType = SALES_ORDER
-
Rodzaj zamówienia sprzedaży: Type.code
-
Zamówienie sprzedaży: number
Wymagane jest, aby zgodnie z rodzajem poleceń wpłaty zaliczki możliwe było przypisanie zamówienia.
Jeśli odniesienie (orderAssignmentType) z wartością zamówienie sprzedaży (SALES_ORDER) jest zdefiniowane w Rodzaje poleceń wpłaty zaliczki, wówczas podanie tej wartości nie jest wymagane.
Alternatywnie Polecenie wpłaty zaliczki może odnosić się do konkretnej pozycji zamówienia sprzedaży (SalesOrderDetail) – w takim przypadku odniesienie musi mieć wartość SALES_ORDER_DETAIL.
Jeśli nie występuje odniesienie do zamówienia sprzedaży ani do pozycji zamówienia sprzedaży, wówczas dodatkowo wymagana jest organizacja sprzedaży oraz odbiorca faktury, a także co najmniej jeden podział podatku, w którym określono kod podatkowy oraz – zależnie od rejestrowania kwoty zgodnie z rodzajem – podano wartość netto albo brutto.
Jeśli dla atrybutu Usuń wszystkie podziały podatku (removeAllTaxData) zostanie użyta wartość true, wówczas wszystkie ewentualnie automatycznie ustalone podziały podatku zostaną usunięte i można wskazać w imporcie dokładnie dane, które mają zostać użyte.
Opcjonalnie podczas tworzenia w imporcie można przekazać także numer (number). W takim przypadku numer nie jest pobierany ze schematu numeracji zgodnie z rodzajem. Należy przy tym zapewnić, aby numer nadany w imporcie nie kolidował z numerem nadawanym automatycznie.
Przykładowy minimalny plik XML z atrybutami biznesowymi oraz odniesieniem do zamówienia sprzedaży (dla którego organizacja sprzedaży, odbiorca faktury i podziały podatku wynikają z pozycji zamówienia nadal otwartych do dostawy) może mieć następującą zawartość:
<?xml version=”1.0″ encoding=”UTF-8″?><semiramis xmlns=”com.cisag.app.sales.prepayment.obj.PrepaymentRequest” xsi:schemaLocation=”com.cisag.app.sales.prepayment.obj.PrepaymentRequest PrepaymentRequest.xsd” created=”2019-11-15T13:05:35.453Z” locale=”en-US-XMLSchemaCompliant” xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” nlsMode=”MULTI_LANGUAGE” dateTimeMode=”NORMALIZED”>
<PrepaymentRequest xmlns=”com.cisag.app.sales.prepayment.obj.PrepaymentRequest”>
<Type>
<code>100</code>
</Type>
<orderAssignmentType>SALES_ORDER</orderAssignmentType>
<SalesOrder>
<number>VA6626</number>
<Type>
<code>100</code>
</Type>
</SalesOrder>
</PrepaymentRequest>
</semiramis>
Pozostałe atrybuty w tym przykładzie otrzymują dane poprzez wartości domyślne zgodnie z podanym zamówieniem oraz danymi podstawowymi itd.
Szczególne aspekty edycji istniejącego polecenia wpłaty zaliczki
Podczas edycji istniejącego polecenia wpłaty zaliczki należy uwzględnić następujące informacje:
-
Podczas importu poleceń wpłaty zaliczki w środowiskach wielofirmowych oraz w środowiskach jednofirmowych z aktywnymi uprawnieniami do treści bezwzględnie wymagana jest organizacja sprzedaży. Podczas edycji istniejącego polecenia wpłaty zaliczki organizacja sprzedaży zawsze wynika z dokumentu zapisanego w bazie danych. Ewentualnie różna organizacja sprzedaży w źródle importu jest w takim przypadku ignorowana.
-
Do odnalezienia polecenia wpłaty zaliczki zapisanego w bazie danych wymagana jest albo identyfikacja techniczna (PrepaymentRequest:guid), albo identyfikacja biznesowa (Type [lub type] oraz number).
-
Dla podziałów podatku można wykorzystywać wszystkie możliwości importu, w tym w szczególności usuwanie. Również w tym przypadku do odnalezienia zapisanego podziału podatku wymagana jest identyfikacja techniczna (TaxData.taxCode) albo identyfikacja biznesowa (TaxData.TaxCode.code) kodu podatkowego.
-
Zmiany poprzez import są możliwe wyłącznie wtedy, gdy nie blokuje ich żadna kontrola.
Automatyczne zwolnienie po imporcie
Jeśli import został wykonany pomyślnie, edytowane polecenie wpłaty zaliczki może zostać automatycznie zwolnione po imporcie. Funkcjonalność jest szczególnie przydatna w połączeniu ze statusem otwarcia W opracowaniu (patrz rodzaj). Pozwala to zapobiec użyciu polecenia wpłaty zaliczki w dokumentach następczych, zanim import zostanie w pełni zakończony. W trakcie zwalniania polecenie wpłaty zaliczki ma status Nieważny, więc również na tym etapie nie może zostać użyte. Aby skorzystać z tej funkcjonalności, dla odpowiedniej instancji należy ustawić wirtualny atrybut bazowy autoRelease na wartość true.
Jeśli funkcja jest aktywna i nie występują inne błędy, w protokole komunikatów pojawia się dodatkowa informacja o automatycznym zwolnieniu polecenia wpłaty zaliczki. Jeśli nie było to możliwe, generowane jest ostrzeżenie.
Przejęcie danych historycznych
Polecenia wpłaty zaliczki nie obsługują przejęcia danych historycznych.
Przegląd: Obsługiwane atrybuty podczas importu
W tym rozdziale zestawiono wszystkie atrybuty poleceń wpłaty zaliczki obsługiwane podczas importu. W przypadku atrybutów kluczy obcych podano również nazwę relacji. Atrybuty mogą podlegać zmianom oraz mogą zostać rozszerzone w wyniku dostosowań. Dla części obiektów biznesowych do przekształcenia klucza biznesowego na klucz techniczny wymagana jest organizacja (Organisation). W listach atrybutów jest to oznaczone odpowiednimi adnotacjami w kolumnie Atrybut.
-
Organizacja sprzedaży (zawsze zgodnie z bazą)
-
Firma (zawsze zgodnie z bazą)
Atrybuty identyfikacyjne (Key Attribute) są dodatkowo oznaczone (K).
Dane podstawowe
Polecenie wpłaty zaliczki (PrepaymentRequest)
Dane klienta (invoiceCustomerData)
Dane klienta w różnych rolach są zapisane w bazie danych jako obiekt biznesowy kodu skrótu i są prezentowane w eksporcie oraz imporcie jako część. To samo dotyczy danych adresowych. Zgodnie z technicznymi nazwami atrybutów nadano następującą nazwę części:
invoiceCustomerData Odbiorca faktury
Poniższe atrybuty występują dla tej roli po jednym razie:
-
addressData.city – Adres – miejscowość
-
addressData.country (relacja: addressData.Country) – Adres – kraj
-
addressData.district – Adres – dzielnica
-
addressData.poBox – Adres – skrytka pocztowa
-
addressData.poBoxCity – Adres – skrytka pocztowa – miejscowość
-
addressData.poBoxPostalCode – Adres – skrytka pocztowa – kod pocztowy
-
addressData.postalCode – Adres – kod pocztowy
-
addressData.region (relacja: addressData.Region) – Adres – region
-
addressData.street – Adres – ulica
-
customer (relacja: CustomerPartner) – Klient
name – Nazwa klienta careOf (relacja: CareOfPartner) – Osoba kontaktowa careOfName – Dane osoby kontaktowej Ustawienia wydruku są zapisane w bazie danych jako obiekt biznesowy kodu skrótu i są prezentowane w eksporcie oraz imporcie jako Part. prepaymentRequest.medium – Sposób wydania polecenia wpłaty zaliczki prepaymentRequest.mediumAddress – Dane kontaktowe sequence – Numer document – Dokument type – Typ tekstu code – Blok tekstu (opcjonalnie) text – Teksty w zależności od języka (stosowane tylko, jeśli nie podano bloku tekstu; (tabela w rozdziale Tekst)) Tekst language – Język text – Tekst contentType – Rodzaj treści Poniższy przykład zawiera dwa teksty podstawowe. Tekst nagłówka odwołuje się do bloku tekstu TXT1, a drugi tekst zawiera swobodny tekst stopki dla języków de oraz en: <?xml version=”1.0″ encoding=”UTF-8″?><semiramis xmlns=”com.cisag.app.sales.prepayment.obj.PrepaymentRequest” xsi:schemaLocation=”com.cisag.app.sales.prepayment.obj.PrepaymentRequest PrepaymentRequest.xsd” created=”2019-11-18T09:41:59.531Z” locale=”en-US-XMLSchemaCompliant” xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” nlsMode=”MULTI_LANGUAGE” dateTimeMode=”NORMALIZED”> <PrepaymentRequest xmlns=”com.cisag.app.sales.prepayment.obj.PrepaymentRequest”> <orderAssignmentType>SALES_ORDER</orderAssignmentType> <Type> <code>100</code> </Type> <orderAssignmentType>SALES_ORDER</orderAssignmentType> <SalesOrder> <number>VA6626</number> <Type> <code>100</code> </Type> </SalesOrder> <TextAssignments> <sequence>10</sequence> <document index=”0″>PREPAYMENT_REQUEST</document> <type>HEADER</type> <code>TXT1</code> </TextAssignments> <TextAssignments> <sequence>20</sequence> <document index=”0″>PREPAYMENT_REQUEST</document> <type>FOOTER</type> <code/> <text> <language>de</language> <text>Dies ist ein Beispieltext.</text> <contentType>text/plain</contentType> </text> <text> <language>en</language> <text>This is an example text.</text> <contentType>text/plain</contentType> </text> </TextAssignments> </PrepaymentRequest> </semiramis> W tekstach można stosować również różne formatowania. Jeśli potrzebne są przykłady konkretnych formatowań, zaleca się utworzenie dokumentu wzorcowego z wymaganymi formatowaniami tekstu i wyeksportowanie go.
Ustawienia wydruku (outputSettings)
Teksty (TextAssignments)
Podział podatku (TaxData)
-
grossValue – Kwota brutto
WskazówkagrossValue jest używane wyłącznie wtedy, gdy rejestrowanie kwoty zgodnie z Rodzaje poleceń wpłaty zaliczki jest ustawione na Brutto. -
netValue – Kwota netto
WskazówkanetValue jest używane wyłącznie wtedy, gdy rejestrowanie kwoty zgodnie z Rodzaje poleceń wpłaty zaliczki jest ustawione na Netto. -
taxCode (K) (relacja: TaxCode) – Kod podatkowy



