Pole a transformace
Záložka Transformace v konektoru určuje, která pole se přenášejí a kterým směrem, podle čeho se záznamy na obou stranách poznají a co se s hodnotami cestou stane. Tato stránka popisuje jednotlivé sekce záložky a nabízí několik hotových postupů.
Kde transformace najdete
Na stránce Integrace otevřete konektor a zvolte záložku Transformace. „Druhým systémem“ se na této stránce myslí cílový systém, se kterým konektor synchronizuje (například Money S3). Záložka má tyto sekce:
| Sekce | K čemu slouží |
|---|---|
| Pole | Tok každého pole (kterým směrem přechází) a kroky, které hodnotu cestou upravují. |
| Náhled | Vyzkoušení pravidel na jednom záznamu, bez uložení a bez synchronizace. |
| Business klíč | Podle čeho se řádek v Tappeeru a záznam v druhém systému poznají jako tentýž. |
| Filtry | Které záznamy se synchronizují vůbec. |
| Výchozí hodnoty | Čím vyplnit pole, které záznam nechá prázdné. |
| Značka | Zda plugin zapisuje id Tappeeru do svého záznamu. Zobrazí se jen u pluginů, které značku podporují. |
Nad sekcemi jsou akce pro kopírování, export a import pravidel (popsané v části Kopírování, export a import pravidel).
Změny se neukládají průběžně. Dokud je neuložíte, drží je lišta Neuložené změny s tlačítky Uložit změny a Zahodit.
Výchozí pravidla obvykle stačí
Každý plugin přináší vlastní pravidla, která pro daný systém nastavil jeho autor. Nový konektor tedy už ví, ze kterého pole se bere název firmy nebo jak převést zemi na kód. Pravidla měňte, až když něco opravdu nesedí.
Úpravy transformací vyžadují oprávnění spravovat integrace. U příchozího konektoru vyžaduje změna příchozích pravidel a toku polí navíc oprávnění k dané entitě, například spravovat firmy nebo upravovat faktury (přehled je na stránce Párování záznamů a duplicity).
Pole
Sekce Pole ukazuje každé pole entity v tabulce se sloupci Pole, Role, Tok a Co se děje. Pole můžete hledat (Hledat pole) a zúžit volbou Zobrazit: Všechna pole, S nastaveným tokem, Klíčová pole, S pravidly, S upozorněním.
Tok pole
Tok říká, kterým směrem pole přechází mezi Tappeerem a druhým systémem. Nastavuje se zvlášť pro každé pole:
| Tok | Běh do Tappeeru | Běh do druhého systému |
|---|---|---|
| Oběma směry (výchozí) | pole zapisuje | pole zapisuje |
| Jen do Tappeeru | pole zapisuje | pole vynechá |
| „Jen do Money S3“ (podle názvu systému) | pole vynechá | pole zapisuje |
| Nesynchronizuje se | pole vynechá | pole vynechá |
Co je dobré vědět:
- Vynechané pole se nevymaže. Druhá strana si ponechá hodnotu, kterou má.
- Tok může zápis jen omezit, nikdy rozšířit. Pokud konektor běží jen jedním směrem, nabízí se jen Oběma směry a Nesynchronizuje se.
- Klíčová pole přecházejí vždy. U pole s rolí Business klíč nebo Vstup klíče je volba toku zamčená, protože podle něj se záznam pozná.
- Pole, které se nesynchronizuje, se ani nesleduje. Nepočítá se do detekce změn, takže záznam, u kterého se změnilo jen toto pole, se nepovažuje za změněný.
- Úprava pole s tokem Jen do Tappeeru se ven nepošle. Úpravu takového pole v Tappeeru přepíše hodnota z druhého systému, jakmile se tam záznam změní (nezměněné záznamy se přeskakují).
- Některá pole se řídí tokem jiného pole. U firem se typ plátce DPH (
vatPayerType) řídí tokem pole plátce DPH (isVatPayer). Pokud byste typu nastavili jiný tok než jeho řídicímu poli, Tappeer takové nastavení odmítne.
Typické nastavení u obousměrného konektoru: názvy a adresy firem udržuje účetní v účetním systému (Jen do Tappeeru), interní kategorie udržuje tým v Tappeeru (tok do druhého systému).
Role polí
| Role | Význam |
|---|---|
| Business klíč | Identifikuje záznam na obou stranách. Přechází vždy, ať je tok jakýkoli. |
| Vstup klíče | Čte ho pravidlo business klíče. Přechází vždy. |
| Náhradní klíč | Slouží k nalezení protějšku při prvním kontaktu, když business klíč nic nenajde (u firem IČO a DIČ). |
| Hashované | Součást detekce změn: změna tohoto pole znamená změněný záznam. |
| Filtrovatelné | Podle tohoto pole umí Tappeer vybírat řádky přímo, takže jednoduchý filtr nad ním je rychlý. |
Kroky pole
Po rozbalení řádku pole uvidíte kroky, kterými hodnota prochází, zvlášť pro každý směr. Sloupec Co se děje je shrnuje větou, například „Zkopírovat company“ nebo „První vyplněné z phone, mobilPhone“.
Druhy kroků:
- „Načíst ze systému …“ a „Odeslat do systému …“ — převádějí vlastní záznam druhého systému na pole Tappeeru a zpět. U systémů připojených přes bridge je provádí plugin na vašem bridgi, takže surová data neopouštějí vaši síť.
- Spočítat v Tappeeru a Upravit před odesláním — kroky, které běží v Tappeeru. Běží shora dolů a pozdější krok vidí, co zapsal dřívější.
- Výchozí hodnota pro prázdné pole — viz část Výchozí hodnoty níže.
Každý krok má štítek: Výchozí pravidlo pluginu, Vlastní, Přidáno, Vypnuto nebo Váš krok. Akce u kroku jsou Upravit, Vypnout, Použít výchozí a Odebrat. Nový krok přidáte tlačítkem Přidat krok, hotový krok vložíte přes Vložit recept.
Úprava jednoho výchozího pravidla
Jakmile v jednom směru upravíte, vypnete nebo přidáte pravidlo, stanou se všechna pravidla tohoto směru vaším vlastním seznamem a přestanou sledovat aktualizace pluginu, i ta, kterých jste se nedotkli. Zpět se vrátíte volbou Použít výchozí pravidla pluginu pro všechna příchozí pravidla (nebo odchozí).
Pravidlo se otevírá v režimu Jednoduchý pohled, kde vyberete druh pravidla (například Zkopírovat pole nebo hodnotu, Rozhodnout podle pole, Přeložit převodní tabulkou) a vyplníte jen jeho formulář. Pokročilý pohled nabízí všechny operace. Pravidlo, které se do žádného jednoduchého druhu nevejde, je označené jako Pokročilé pravidlo; to není chyba, pluginy taková pravidla dodávají záměrně.
Podbarvený řádek znamená, že pravidlo Tappeer odmítne (červeně, uložení není možné) nebo stojí za pozornost (oranžově). Pod pravidlem editor upozorní i na typické pasti, například že výsledek pravidla se kvůli toku pole nezapíše.
Velmi dlouhý text se nezpracuje
Pravidlo zpracuje text o délce nejvýše 65 536 znaků. Delší hodnotu pravidlo nezapíše:
- pole si na zapisované straně ponechá svou dosavadní hodnotu, nic se nevymaže,
- zbytek záznamu se normálně synchronizuje,
- běh skončí jako dokončený a v monitoru ukáže počet nezapsaných polí, například „3 pole nezapsána“ (viz Sledování synchronizace).
Řešením je text zkrátit, nebo upravit pravidlo tak, aby dané pole nečetlo.
Business klíč
Business klíč je hodnota, na které se obě strany shodnou a podle které se záznam pozná, když ještě neexistuje vazba: kód firmy, kód střediska, číslo faktury. Způsob sestavení klíče zvolíte:
- Výchozí z modelu — klíčové pole entity (doporučeno),
- Pole — několik polí spojených do jednoho klíče,
- Výraz — klíč sestavený pravidlem.
Dobrý klíč je jedinečný na obou stranách, stálý po celou dobu života záznamu a vždy vyplněný. Záznam bez klíče se nesynchronizuje vůbec.
Zkontrolovat kolize
Tlačítko Zkontrolovat kolize vyzkouší pravidlo klíče nad vašimi skutečnými řádky a ukáže, kolik řádků vyhodnotilo, kolik z nich klíč nemá a které klíče sdílejí více řádků. Kolize znamená, že pravidlo neurčuje řádek jednoznačně: dva různé řádky by se tvářily jako jeden. Takové pravidlo neukládejte. Pokud náhled skončil na limitu řádků, může větší účet skrývat další kolize.
Změna klíče není drobná úprava
Když změníte způsob sestavení klíče, záznamy, které se dřív párovaly, se párovat přestanou a místo aktualizací mohou vzniknout duplicity. Po uložení se vazby konektoru převedou na nový klíč. Vždy nejdřív spusťte Zkontrolovat kolize.
Filtry
Filtr rozhoduje, které záznamy se synchronizují vůbec. Každý směr má vlastní filtr: Filtrovat odchozí řádky a Filtrovat příchozí záznamy. Filtr dodaný pluginem je označený Výchozí z pluginu; například Money S3 a POHODA ve výchozím stavu odesílají jen aktivní firmy.
U filtru vidíte, kde poběží:
- na straně serveru — Tappeer rovnou vybere jen odpovídající řádky, takže na množství dat nezáleží. Platí jen pro odchozí filtr složený z jednoduchých podmínek „je“ nad polem s rolí Filtrovatelné.
- v paměti — všechny záznamy se načtou a vyfiltrují až potom, což je nad velkými daty pomalé. Příchozí filtr běží vždy v paměti.
Filtr není tok pole
Záznam vyřazený filtrem se do synchronizace vůbec nedostane, takže Tappeer nepozná, zda byl smazán, změněn, nebo jen odfiltrován. Odfiltrovaný záznam si ponechá vazbu i data na obou stranách, jen se jeho další změny nepřenášejí. Pokud nemá přecházet jen některé pole záznamu, nastavte místo filtru tok tohoto pole v sekci Pole.
Výchozí hodnoty
Výchozí hodnota vyplní pole, které záznam nechal prázdné. Přidáte ji tlačítkem Přidat výchozí hodnotu, zvlášť pro směr Příchozí — do polí Tappeeru a Odchozí — do druhého systému. U odchozího směru může být cílem i pole, které má jen druhý systém.
Rozdíl proti pevné hodnotě: výchozí hodnota se použije jen pro prázdné pole, pevná hodnota (recept Vždy stejná hodnota) přepíše cokoli, co přišlo. Výchozí hodnota se nedoplní do pole, které se nezapsalo kvůli příliš dlouhému textu.
Značka
Volba Zapisovat id Tappeeru způsobí, že plugin uloží id Tappeeru do svého vyhrazeného pole v záznamu druhého systému. Podle značky se záznam pozná s jistotou i po změně klíče. Sekce se zobrazí jen u pluginů, které značku podporují.
Náhled
Sekce Náhled ukáže, co pravidla udělají s jedním záznamem, krok za krokem, ještě než je uložíte.
- Zvolte Směr.
- V části Ukázkový záznam vyberte Použít záznam tohoto účtu, nebo Vložit JSON a určete, zda je vložený záznam Záznam Tappeeru, nebo záznam druhého systému.
- Klikněte na Zobrazit náhled.
Výsledek ukazuje vstupní záznam, každou fázi pravidel s hodnotami Před a Po a výsledný záznam. Upozorní také, pokud by záznam neprošel filtrem nebo neměl business klíč.
Co náhled dělá a nedělá:
- Použije pravidla tak, jak je v editoru máte, včetně neuložených změn. Tok polí a směry synchronizace bere z uloženého nastavení.
- Nic nezapisuje a nespouští synchronizaci. Vložený záznam se nikam neukládá.
- Hodnoty, které vypadají jako tajné údaje, se zobrazí jako Skryto.
- U systému připojeného přes bridge vyhodnocuje pravidla plugin na bridgi a záznam druhého systému zůstává ve vaší síti; zobrazí se jen výsledky pravidel. Kvůli náhledu se může spustit aplikace druhého systému, takže vyhodnocení může trvat až dvě minuty.
- Pokud pravidla nejde vyhodnotit tam, kde je vyhodnocuje synchronizace, vyhodnotí je Tappeer sám a fázi označí větou „Vyhodnotil Tappeer, ne tam, kde tato pravidla vyhodnocuje synchronizace.“ Stává se to, když bridge není připojený nebo právě vyřizuje jiný požadavek, když verze pluginu nebo konektoru náhled neumí, když druhý systém neodpoví včas nebo pravidla nedokáže vyhodnotit, a u příchozího náhledu nad záznamem, který není spárovaný se záznamem ve druhém systému. Týká se to i konektorů bez bridge. Nepodaří-li se záznam druhého systému načíst, zastoupí ho záznam Tappeeru a náhled upozorní, že vstup je jen přibližný. Vyhledávání ve druhém systému a funkce pluginu v takové fázi neproběhly doopravdy, výsledek berte jako přibližný.
- Je to jeden záznam. Pravidlo, které pro něj funguje, může u jiného selhat.
Kopírování, export a import pravidel
Nad sekcemi záložky najdete:
- Zkopírovat pravidla z jiného konektoru — převezme pravidla a tok polí jiného konektoru stejného systému pro stejnou entitu. Nastavení instalace ani hodnoty ze sekce Nastavení připojení na záložce Nastavení se nekopírují.
- Exportovat pravidla — stáhne uložená pravidla do souboru JSON. Máte-li neuložené změny, nejdřív je uložte nebo zahoďte. Soubor neobsahuje hesla, nastavení instalace ani hodnoty ze sekce Nastavení připojení, obsahuje ale vaše převodní tabulky, konstanty a výchozí hodnoty.
- Importovat pravidla — načte pravidla ze souboru exportovaného z konektoru stejného systému pro stejnou entitu (soubor vyberete, nebo vložíte jeho text). Pokračujete tlačítkem Zkontrolovat a pokračovat.
Kopírování i import nahradí pravidla a tok polí, které máte v editoru, až po potvrzení tlačítkem Nahradit. Nic se neuloží, dokud konektor neuložíte, a do další úpravy můžete nahrazení vzít zpět tlačítkem Vrátit zpět. Pokud nová pravidla mění business klíč, vazby konektoru se při uložení převedou na nový klíč.
Hotové postupy
Doplnit hodnotu, kterou druhý systém někdy nevyplní
Situace: firmy z účetního systému občas nemají vyplněnou zemi.
- V sekci Výchozí hodnoty klikněte na Přidat výchozí hodnotu ve směru Příchozí — do polí Tappeeru.
- Vyberte pole země a zadejte hodnotu, například
CZ. - Uložte konektor.
Pokud druhý systém hodnotu neposílá nikdy, použijte raději recept Vždy stejná hodnota v krocích pole.
Synchronizovat jen aktivní firmy
Situace: do účetního systému nemají odcházet neaktivní firmy.
- V sekci Filtry otevřete Filtrovat odchozí řádky.
- Vložte recept Jen záznamy s danou hodnotou, zvolte pole aktivity firmy (
isActive) a hodnotu „ano“. - Ověřte, že filtr běží na straně serveru, a uložte.
U Money S3 a POHODA je tento filtr nastavený už ve výchozích pravidlech. Pokud chcete odesílat i neaktivní firmy, filtr zrušte a konektor uložte.
Vzít hodnotu z jednoho ze dvou polí
Situace: telefon je u některých kontaktů v jednom poli a u jiných v druhém.
- V sekci Pole rozbalte řádek telefonu a u příchozího kroku zvolte Upravit.
- Jako druh pravidla vyberte První vyplněné z několika polí a v části Zkusit v pořadí uveďte obě pole.
- Výsledek ověřte v sekci Náhled a uložte.
Převést hodnoty, které oba systémy zapisují jinak
Situace: druhý systém vede způsob úhrady česky, Tappeer očekává vlastní kódy.
- Pro pole vložte recept Převést hodnoty převodní tabulkou.
- Přidejte řádek pro každou hodnotu (Externí hodnota → hodnota Tappeeru).
- Vyplňte Cokoli jiného. Bez něj zůstane pole u neznámé hodnoty prázdné.
Pole udržované jen v účetním systému
Situace: název a adresu firmy upravuje jen účetní v účetním systému a změny v Tappeeru se mají ignorovat.
- V sekci Pole nastavte u těchto polí tok Jen do Tappeeru.
- Uložte konektor.
Úprava v Tappeeru pak do účetního systému neodejde. Hodnota z účetního systému ji přepíše, jakmile se záznam v účetním systému změní.
Kdy se obrátit na podporu
Pokud potřebujete hodnotu, kterou druhý systém vůbec nevede, pole, které plugin nezná, nebo převod, který žádná funkce pluginu nenabízí, nejde o nastavení konektoru, ale o změnu pluginu. Obraťte se na podporu (viz Řešení problémů).