Bağlantıları atla

FileMaker ile elektronik fatura alın

FileMaker ipuçları ve talimatları

FileMaker ile elektronik faturalar

Mevcut FileMaker çözümlerinde elektronik faturaların uygulanması, dijital iş dünyasında giderek önem kazanan bir konudur. Özellikle, belirli iş süreçleri için elektronik fatura kullanımına yönelik artan yasal zorunluluk ve bunun sonucunda ortaya çıkan maliyet verimliliği ve süreç otomasyonu gibi faydalar, şirketlerin bu tür faturaları işlemek için verimli çözümler geliştirmesini gerekli kılmaktadır. Bu bağlamda, elektronik faturalar için XRechnung ve ZUGFeRD/Factur-X dahil olmak üzere çeşitli standartlar mevcuttur. Bu standartlar, özellikle içerdikleri verilerin okunması ve işlenmesi açısından farklı teknik zorluklar ortaya koymaktadır.

Elektronik faturaları içe aktarırken karşılaşılan zorluklar

Elektronik faturaları içe aktarırken karşılaşılan en büyük zorluklardan biri, işlenmesi gereken veri formatlarının ve türlerinin çeşitliliğidir. XRechnung'un yapısı nispeten açıkken ve yalnızca bir XML belgesinin analiz edilmesi gerekirken, bir ZUGFeRD veya Factur-X faturasının işlenmesi daha büyük bir zorluk teşkil etmektedir. Bunlar hem bir PDF belgesi hem de gömülü XML verileri içeren hibrit belgelerdir.

XRechnung ve ZUGFeRD/Factur-X arasındaki fark

XRechnung: Bu standart, ilgili tüm fatura verilerini saf bir XML dosyasında içerir. Bu verilerin okunması, gerekli bilgilerin çıkarılması için XML belgesinin ayrıştırılmasını gerektirir. Buradaki temel zorluk, XML formatının karmaşıklığı ve ilgili tüm veri alanlarının doğru şekilde okunup yorumlanmasını sağlama ihtiyacıdır.

ZUGFeRD/Factur-X: Bu formatta XML verileri bir PDF dosyasına gömülüdür. Bu, XML verilerine erişmek için önce PDF'nin çıkarılması ve analiz edilmesi gerektiği anlamına gelir. Bu işlem, gömülü bilgileri PDF belgesinden güvenilir bir şekilde çıkarmak için özel araçlar veya eklentiler gerektirir.

FileMaker'da PDF'leri işleme seçenekleri

ZUGFeRD/Factur-X faturalarını içe aktarırken karşılaşılan en önemli zorluklardan biri PDF'den XML verilerini çıkarmaktır. FileMaker'a entegre edilebilecek çeşitli yaklaşımlar ve araçlar vardır:

MBS Eklentisi (MonkeyBread Software)MBS eklentisi, FileMaker için kapsamlı PDF işleme yetenekleri de dahil olmak üzere çeşitli özellikler sunan güçlü bir uzantıdır. Bu eklenti ile FileMaker, gömülü XML verilerini çıkarmak için PDF'leri okuyabilir ve analiz edebilir. Ayrıca PDF'nin meta verilerine erişim sağlar ve içerdiği içeriğin ayrıştırılmasını ve işlenmesini destekler. MBS eklentisi, FileMaker iş akışlarında PDF'leri işlemek için esnek ve kapsamlı bir çözüme ihtiyaç duyan geliştiriciler için özellikle kullanışlıdır.

DynaPDF EklentisiDynaPDF eklentisi, FileMaker'da PDF işleme için bir başka güçlü araçtır. PDF dosyalarının oluşturulması, değiştirilmesi ve okunması için işlevler sunar ve ZUGFeRD/Factur-X faturalarındaki gömülü XML verilerine erişmek için idealdir. DynaPDF ile XML verileri güvenli bir şekilde çıkarılabilir ve FileMaker'da daha fazla işlem için kullanılabilir hale getirilebilir. Ayrıca eklenti, PDF'lerden metin ve görüntülerin analiz edilmesi ve çıkarılması için işlevler sunarak kapsamlı PDF işleme gereksinimleri için çok yönlü bir çözüm haline getirir.

Teknik gereksinimler ve dikkat edilmesi gerekenler

Bu tür eklentileri ve araçları kullanırken göz önünde bulundurulması gereken çeşitli teknik hususlar vardır. Bir yandan, bu araçların çoğu ücrete tabi olduğundan ve işlevlerin çeşitliliğine bağlı olarak farklı lisans modelleri sunduğundan, eklentilerin lisanslanması da buna dahildir. Öte yandan, eklentilerin sorunsuz çalışmasını ve herhangi bir uyumluluk sorunu yaşanmamasını sağlamak için mevcut FileMaker çözümlerine entegrasyonun dikkatli bir şekilde planlanması gerekir.

Bir diğer önemli nokta ise çözümün performansıdır. PDF'lerden XML verilerinin okunması ve işlenmesi, özellikle de büyük miktarlarda faturanın aynı anda işlenmesi gerekiyorsa, hesaplama açısından yoğun olabilir. Bu nedenle, çözümün mevcut kaynaklarla verimli bir şekilde çalışacak ve yüksek bir işlem hızı sağlayacak şekilde tasarlanması tavsiye edilir.

Elektronik faturaların entegre işlenmesini sağlayan FileMaker ERP yazılımı.

Daha fazla bilgi
Profesyonel ERP yazılımı

FileMaker'da XRechnung'u içe aktarma ve işleme

Bir XRechnung'un bir FileMaker çözümüne içe aktarılmasının kapsamlı bir uygulaması, faturanın genel zorunlu alanlarına ek olarak, belge öğelerinin (satır öğeleri) işlenmesini ve içe aktarılan bilgilerin bütünlüğünü sağlamak için verilerin doğrulanmasını içerir. Süreç aşağıda ayrıntılı olarak açıklanmaktadır.

XML ayrıştırma için BaseElements eklentisi

BaseElements eklentisi, XML verilerinin FileMaker'da işlenmesini önemli ölçüde basitleştirir. Eklenti, XML verilerinin ayrıştırılması da dahil olmak üzere FileMaker işlevselliğini genişletmek için çeşitli işlevler sunar. Bu amaçla en sık kullanılan işlevlerden biri, XML verilerini bir dosyadan veya değişkenden ayıklamak için kullanılabilen BE_XPath'tir.

BaseElements eklentisine genel bakış

BaseElements eklentisi, ek işlevsellik sağlamak üzere FileMaker için özel olarak tasarlanmış ücretsiz bir eklentidir. Özellikle XML, JSON, dosya yönetimi ve FileMaker'ın yerel olarak desteklemediği diğer özel gereksinimlerle çalışmak için kullanışlıdır. BE_XPath işlevi ile, XML belgesinin belirli bölümlerini okumak için XPath ifadeleri kullanılarak XML verileri hızlı ve doğru bir şekilde çıkarılabilir.

Bir XRechnung'u içe aktarmak için adım adım talimatlar

1. FileMaker'da hazırlıklar

FileMaker veritabanınızın yukarıda açıklandığı gibi gerekli tabloları ve alanları içerdiğinden emin olun:

Ana tablo "Faturalar":

  • Fatura numarası
  • Fatura tarihi
  • Alıcı adı
  • Alıcı adresi
  • Satıcı adı
  • Satıcı adresi
  • Toplam tutar
  • Katma değer vergisi tutarı
  • Para Birimi
  • Ödeme koşulları

Bağlantılı tablo "Fatura kalemleri":

  • Makale açıklaması
  • Miktar
  • Birim fiyat
  • Ürünün toplam tutarı
  • KDV oranı

FileMaker Crash Kursu

Hızlı ve etkili FileMaker
20 bölümde öğrenme.

Ücretsiz katılın
2. XML dosyasını içe aktarın

XML dosyasının içeriğini bir değişkene yükleyin, örneğin Verileri içe aktar işleviyle veya içeriği doğrudan bir dosyadan okuyarak.

Değişken ayarla [$xmlPath; Değer: "Path/to/the/XInvoice.xml"]

Değişken ayarla [$xmlContent; Değer: BE_ReadTextFromFile($xmlPath)]

--- BE_XPath ile zorunlu alanların içe aktarılması ---

Değişken ayarla [$Rechnchnchnumber; Değer: BE_XPath($xmlContent; "//cbc:ID"; "cbc=urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2")]

Değişken ayarla [$Rechnungsdatum; Değer: DateTimeMySQLToFMDate ( BE_XPath($xmlContent; "//cbc:IssueDate"; "cbc=urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2")]

Değişken ayarla [$CustomerName; Value: BE_XPath($xmlContent; "//*[local-name()='AccountingCustomerParty']/*[local-name()='Party']/*[local-name()='PartyName']/*[local-name()='Name']"; "cbc=urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2|cac=urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2")]

Değişken ayarla [$CustomerAddress; Value: BE_XPath($xmlContent; "//*[local-name()='AccountingCustomerParty']/*[local-name()='Party']/*[local-name()='PostalAddress']/*[local-name()='StreetName']"; "cbc=urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2|cac=urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2") & ", " & BE_XPath($xmlContent; "//*[local-name()='AccountingCustomerParty']/*[local-name()='Party']/*[local-name()='PostalAddress']/*[local-name()='CityName']"; "cbc=urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2|cac=urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2")]

Değişken ayarla [1TP4VendorName; Value: BE_XPath($xmlContent; "//*[local-name()='AccountingSupplierParty']/*[local-name()='Party']/*[local-name()='PartyName']/*[local-name()='Name']"; "cbc=urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2|cac=urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2")]

Değişken ayarla [1TP4VendorAddress; Value: BE_XPath($xmlContent; "//*[local-name()='AccountingSupplierParty']/*[local-name()='Party']/*[local-name()='PostalAddress']/*[local-name()='StreetName']"; "cbc=urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2|cac=urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2") & ", " & BE_XPath($xmlContent; "//*[local-name()='AccountingSupplierParty']/*[local-name()='Party']/*[local-name()='PostalAddress']/*[local-name()='CityName']"; "cbc=urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2|cac=urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2")]

Değişken ayarla [$ToplamTutar; Değer: BE_XPath($xmlContent; "//cac:LegalMonetaryTotal/cbc:PayableAmount"; "cbc=urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2|cac=urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2")]

Değişken ayarla [$axTotal; Değer: BE_XPath($xmlContent; "//cac:TaxTotal/cbc:TaxAmount"; "cbc=urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2|cac=urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2")]
Değişken ayarla [$Currency; Değer: BE_XPath($xmlContent; "cbc:DocumentCurrencyCode")]
Değişken ayarla [$PaymentTerms; Değer: BE_XPath($xmlContent; "//cac:PaymentTerms/cbc:Note"; "cbc=urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2|cac=urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2")]

--- Ana tabloda yeni veri kaydı oluşturun ---

Yeni veri kaydı/sorgusu

Alan değerini ayarla [Invoices::Invoice number; $Rinvoice number]
Alan değerini ayarla [Invoices::Invoice date; $RInvoice date]
Alan değerini ayarla [Invoices::Buyer name; $Buyer name]
Alan değerini ayarla [Invoices::Buyer address; $Buyer address]
Alan değerini ayarla [Invoices::Vendor name; 1TP4Vendor name]
Alan değerini ayarla [Invoices::Vendor address; 1TP4Vendor address]
Alan değerini ayarla [Invoices::Total amount; $otal amount]
Alan değerini ayarla [Invoices::KDV amount; $MVAT amount]
Alan değerini ayarla [Invoices::Currency; $Currency]
Alan değerini ayarla [Invoices::Terms of payment; $Terms of payment]

--- Hat kalemlerinin içe aktarılması ---

Değişken ayarla [$PositionenAnzahl; Değer: BE_XPath($xmlContent; "count(//cac:InvoiceLine)")]

Değişken ayarla [$Counter; değer: 1]

Döngü başlangıcı

Değişken ayarla [$ArticleDescription; Value: BE_XPath($xmlContent; "//*[local-name()='InvoiceLine'][" & $lineIndex & "]/*[local-name()='Item']/*[local-name()='Name']"; "cbc=urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2|cac=urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2")]

Değişken ayarla
[$Menge; Value: ReadAsNumber(Exchange(BE_XPath($xmlContent; "//*[local-name()='InvoiceLine'][" & $lineIndex & "]/*[local-name()='InvoicedQuantity']"; "cbc=urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2|cac=urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"); "."; ","))]

Değişken ayarla
[$EInvoiceLine; Value: ReadAsNumber(Exchange(BE_XPath($xmlContent; "//*[local-name()='InvoiceLine'][" & $lineIndex & "]/*[local-name()='Price']/*[local-name()='PriceAmount']"; "cbc=urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2|cac=urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"); "."; ","))]

Değişken ayarla
[$oplamTutarDerPozisyon; Değer: BE_XPath($xmlContent; "//cac:InvoiceLine[" & $Counter & "]/cbc:LineExtensionAmount")]

Değişken ayarla [$MwStatz; Value: ReadAsNumber(Exchange(BE_XPath($xmlContent; "//*[local-name()='InvoiceLine'][" & $lineIndex & "]/*[local-name()='Item']/*[local-name()='ClassifiedTaxCategory']/*[local-name()='Percent']"; "cbc=urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2|cac=urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"); "."; ","))]

Düzen'e git "Fatura kalemleri"

Yeni veri kaydı/sorgusu

Alan değerini ayarla [Invoice items::Item description; $Article description]
Alan değerini ayarla [Invoice items::Quantity; $Quantity]
Alan değerini ayarla [Invoice items::Unit price; $Unit price]
Alan değerini ayarla [InvoiceItems::TotalAmountOfItem; $TotalAmountOfItem]
Alan değerini ayarla [Fatura kalemleri::KDV oranı; $Mvat oranı]

Döngüden çık Ne zaman $PositionsNumber = $Counter

Değişken ayarla [$Counter; değer: $Counter + 1]

Döngü sonu

3. içe aktarılan verilerin doğrulanması

Tüm zorunlu alanların mevcut olduğunu ve hiçbir verinin eksik olmadığını kontrol edin. Bu, gerekli tüm değişkenlerin değer içermesini sağlayan bir komut dosyası kullanılarak yapılabilir.

Ne zaman [ActualVoid(Invoices::Invoice number)]
Kendi diyalog kutunuzu görüntüleyin ["Hata: Fatura numarası eksik."].
Geçerli koddan çık
Ne zaman biter

Ne zaman [ActualVoid(Invoices::Invoice date)]
Kendi diyalog kutunuzu görüntüleyin ["Hata: Fatura tarihi eksik."].
Geçerli koddan çık
Ne zaman biter

--- Tüm zorunlu alanlar için daha fazla doğrulama kontrolü gerçekleştirin ---

Ne zaman [Fatura kalemlerinin toplamı::Kalemin toplam tutarı ≠ Faturalar::Toplam tutar]
Kendi diyalog kutunuzu görüntüleyin ["Hata: Satır öğelerinin toplamı toplam tutarla eşleşmiyor"].
Geçerli koddan çık
Ne zaman biter

Elektronik faturaların diğer alanları ve verileri

Kılavuzumuzda, FileMaker'da elektronik faturaların entegrasyonuna ilişkin temel bir genel bakış sağlamak amacıyla en önemli zorunlu alanların içe aktarılmasına odaklandık. Ancak, elektronik faturaların kullanım durumuna bağlı olarak önemli olan daha birçok alan ve bilgi içerebileceğini belirtmek önemlidir.

Örneğin, esas olarak kamu sektöründe idari birimleri tanımlamak için kullanılan yönlendirme kimliği, doğru alıcının belirlenmesinde çok önemli bir rol oynayabilir. Özel referans numaraları, ödeme bilgileri ve vergi ayrıntıları gibi ek alanlar da fatura işlemeyi geliştirmek ve yasal gereklilikleri ve bireysel şirket ihtiyaçlarını karşılamak için önemlidir. Bu nedenle, eksiksiz bir uygulama dikkatlice kontrol edilmeli ve gerekirse kapsamlı bir çözüm sağlamak için bu ek alanlarla desteklenmelidir. Kullanın resmi̇ belgeler.

Optimize edilmiş işletim süreçleri için dört FileMaker ERP platformu.

Bilgi talep edin
Profesyonel ERP yazılımı

MBS ve DynaPDF eklentisi ile ZUGFeRD ve daha fazlası

Bu MBS FileMaker Plugin FileMaker için elektronik faturaları hem okuma hem de oluşturma yeteneği de dahil olmak üzere gelişmiş işlevsellik sağlayan çok yönlü bir eklentidir. MBS eklentisi ile geliştiriciler XML verilerini ve gömülü fatura bilgilerini işlemek için kapsamlı otomasyon çözümleri uygulayabilirler. Özellikle değerli bir özellik de DynaPDFZUGFeRD/Factur-X formatını destekleyenler de dahil olmak üzere PDF belgelerinin oluşturulmasını ve işlenmesini mümkün kılan güçlü bir PDF kütüphanesi. Bu, eklentinin yalnızca PDF'lerdeki verileri okuyup FileMaker'a aktarabileceği değil, aynı zamanda mevcut standartlara uygun yeni elektronik faturalar oluşturabileceği anlamına gelir.

MBS eklentisi, ZUGFeRD faturalarının oluşturulması ve içe aktarılması da dahil olmak üzere çeşitli kullanım durumlarını kapsayan kapsamlı bir örnek dosya koleksiyonu ile birlikte gelir. Bu örnekler, eklentinin nasıl çalıştığını hızlı bir şekilde öğrenmek için mükemmel bir temel sağlar. Üretici ayrıca web sitesinde MBS eklentisi ve DynaPDF kullanarak elektronik faturaların nasıl oluşturulacağını adım adım açıklayan ayrıntılı talimatlar sunmaktadır. En son talimatlar şu adreste mevcuttur bu bağlantı Ayrıca örnek elektronik fatura dosyaları için indirme bağlantıları da içerir. Bu kaynak özellikle FileMaker'da fatura süreçlerinin otomasyonunu daha derinlemesine incelemek ve ZUGFeRD/Factur-X standartlarına göre yasal olarak uyumlu elektronik faturalar oluşturmak isteyen geliştiriciler için yararlıdır. 

Elektronik faturaların entegrasyonuna ilişkin forum yazısı

Forumumuzda FileMaker'da elektronik faturaların entegrasyonu ve işlenmesiyle ilgili tartışmaya adanmış yeni bir gönderi yayınladık. Bu yazıda, ilgili tüm tarafları kişisel sorularını sormaya ve deneyimlerini paylaşmaya davet ediyoruz. İster MBS eklentisi veya BaseElements eklentisi gibi eklentilerin kullanımı, ister komut dosyalarının uygulanması veya iş akışlarının optimizasyonu hakkında olsun - bu forum gönderisi fikir alışverişinde bulunmak ve topluluğun uzmanlığından yararlanmak için mükemmel bir yerdir. Çözümlerin, zorlukların ve en iyi uygulamaların tartışılabileceği canlı bir tartışmayı teşvik etmek istiyoruz. Uğrayın ve sohbetin bir parçası olun!

Özet

Elektronik faturaların okunmasını mevcut FileMaker çözümlerine entegre etmek, özellikle ZUGFeRD/Factur-X faturalarını işlerken çeşitli zorluklar ortaya çıkarmaktadır. XRechnung öncelikle XML tabanlı bir zorlukken, ZUGFeRD/Factur-X işleme MBS ve DynaPDF gibi özel PDF araçlarının ve eklentilerinin kullanılmasını gerektirir. Verimli ve güvenilir bir çözümün başarılı bir şekilde uygulanması için dikkatli planlama, teknik gereksinimlerin dikkate alınması ve doğru eklentilerin seçilmesi çok önemlidir.

Ücretsiz BaseElements eklentisi ve komut BE_XPath XML verilerinin FileMaker'da işlenmesini ve verilerin güvenilir bir şekilde içe aktarılmasını mümkün kılar. XPath kullanımı, ilgili bilgilerin hassas bir şekilde çıkarılmasını ve farklı XML yapılarına esnek bir şekilde uyarlanmasını sağlar.

ZUGFeRD veya Factur-X dosyaları da içe aktarılacak ve okunacaksa, MBS eklentisini, ilgili örnek dosyalarla birlikte verilen DynaPDF eklentisiyle birlikte kullanmanızı öneririz.

FileMaker ile elektronik faturalar

Bu sayfayı paylaşın:

Şirketiniz kadar esnek ERP yazılımı.
Size tavsiyede bulunmaktan memnuniyet duyarız.

Mac, Windows ve iOS için özelleştirilebilir ERP yazılımı.

Buradasınız: FileMaker ile elektronik faturaları alın ve içe aktarın