Bağlantıları atla

Bir proses makinesi ile süreçleri otomatik olarak kontrol edin.

JQuery

Runtime'dan FileMaker Server üzerinde komut dosyaları çalıştırmaFileMaker veritabanlarını kullanırken Şebeke Süreçlerin yerel ağdaki bir istemci tarafından talep üzerine veya otomatik olarak zaman kontrollü olarak yürütülmesi gerekebilir. Bir süreç motorunun uygulama alanları çok çeşitli olabilir. Eğer FileMaker'ınızVeritabanı üzerinden dışarıdan erişim WebDirect Örneğin, belgeler oluşturmak ve bunları PDF dosyaları olarak indirilebilir hale getirmek için bir işlem motoru kullanabilirsiniz. Süreç yerel ağınızdaki bir istemci üzerinde yürütüldüğünden, oluşturulan dosyalar yerel ağ içindeki bir ağ sürücüsüne kolayca kaydedilebilir. Bir başka uygulama alanı da cron işleri olarak adlandırılan ve süreç motoru tarafından önceden tanımlanmış bir zamanda ve muhtemelen belirli aralıklarla yürütülen süreçlerdir. Bu makale, FileMaker'da zaman kontrollü cronjob'lar ve bir yürütme günlüğü ile basit bir süreç motorunu nasıl gerçekleştirebileceğinizi açıklamaktadır.

Kendi FileMaker istemcisine sahip sanal çalışan

Bir işlem makinesi için başlangıç noktası, yüklü bir FileMaker istemcisi olan kendi Mac veya Windows PC'nizdir. FileMaker'da yalnızca bir düzen (aut.tasks) çağrılır ve bu düzen Senaryo tetikleyicisi sağlandı. En kısa sürede Tablo düzeninin aut.processes Yeni bir veri kaydı oluşturulduğunda, proses makinesi veri kaydında verilen prosesi işlemeye başlar.

Temel olarak faaliyet tablosu ve günlüğü

İşlemleri yürütebilmek ve bunları günlük olarak kaydedebilmek için öncelikle iki yeni veri tablosuna ihtiyacınız vardır:

  • Süreçler (1 veri kaydı = operasyon makinesi için işlenecek 1 operasyon)
  • İşlem günlüğü (1 veri kaydı = operasyon makinesi tarafından işlenen 1 operasyon)

Masa Süreçler normalde herhangi bir veri kaydı içermez ve proses makinesinin belirli bir işlemi gerçekleştireceği anda komut dosyası kontrolü altında bir veri kaydıyla doldurulur. İşlem gerçekleştirilir gerçekleştirilmez günlükte yeni bir veri kaydı oluşturulur ve veri kaydı Süreçler tekrar silindi.

İşlem makinesi dinliyor...

Süreç motorunun yeni bir sürecin yürütüleceğini gerçek zamanlı olarak bilmesi için, tablodan veri kayıtları içeren ilgili bir düzene ihtiyacımız vardır Süreçler görüntülenir. Örnek dosyamızda bu düzen şu şekilde adlandırılmıştır aut.processes. Bu düzende bir düzen vardırSenaryo-trigger (BeiDatensatzLaden), yeni bir veri kaydı oluşturulur oluşturulmaz işlemi işlemek için komut dosyasını çalıştırır. Süreçler yer almaktadır.

İşlem motoru için düzen komut dosyası tetikleyicisi

Yeni bir veri kaydı eklenirse Süreçler eklendiğinde, işlem motoru otomatik olarak komut dosyasını çalıştırır lay. işlem makinesi komut dosyası tetikleyicisi ile trigger.layout kapalı. Bunun için ön koşul, işlem makinesinin tüm süre boyunca düzende kalmasıdır. aut.processes çünkü yalnızca bu düzende komut dosyası tetikleyicisi ayarlanmıştır.

İşlem makinesinde, FileMaker veritabanınızı başlattıktan sonra istemcinin düzene doğrudan erişmesini otomatik olarak sağlayabilirsiniz. aut.processes değişiklikler. Bunu yapmak için, işlem makinesi için FileMaker Pro'da standart kullanıcı olarak ayrı bir kullanıcı ayarlayın (Dosya > Dosya seçenekleri, "Şununla oturum aç"). Çözümünüzün bir başlangıç komut dosyası varsa, artık işlem motoru için kullanıcıyı kesebilir ve aşağıdaki gibi bir yapı kullanabilirsiniz:

Eğer (Get(AccountName) = "TransactionMachine")
   Layout [ "aut.processes"] öğesine gidin
End (Eğer)

FileMaker 16 platformundan bu yana WebDirect'te PDF dosyaları yazdırmanın ve oluşturmanın da mümkün olduğunu lütfen unutmayın. Yani FileMaker kullanıyorsanız Sunucu 16 ve FileMaker Pro 16'yı kullanıyorsanız ve WebDirect'te yalnızca çıktılar veya PDF dosyaları oluşturmak istiyorsanız, burada sunulan çözüm sizin çözümünüz için artık gerekli olmayabilir.

Tüm süreçleri kontrol etmek için üç komut dosyası

FileMaker örnek çözümümüz, tüm süreçlerin kolayca kontrol edilebileceği üç komut dosyası içerir:

lay. işlem makinesi - Bu komut dosyası, işlem motoru tarafından tablo Süreçler yeni bir veri kaydı oluşturulmuştur. Çağrı, düzen aracılığıyla yapılır aut.processes yukarıda bahsedilen düzen komut dosyası tetikleyicisi ile. İşlemleri yürütme kısmı betiğe parametre ile eklenmiştir trigger.layout Böylece bu betiği başka görevler için başka parametrelerle de kullanmak mümkün olur.

İşlem motorunun yürüteceği komut doğrudan veritabanında bulunduğundan Süreçler herhangi bir işlem komutunu tanımlayabilir ve bu komut dosyasında işlenmesini sağlayabilirsiniz. Temel prensip her zaman aynıdır:

Eğer [ Get(ScriptParameter) = "trigger.Layout" ]

Komut dosyası yalnızca komut dosyası parametresi ile tanımlanmışsa yürütülür trigger.layout denir.

   Eğer [ Operations::Command = "Veri gönder" ]

Aşağıdaki komut dosyası yalnızca iletilen komut Veri gönder Okunuyor.

      Sizin süreciniz

Herhangi bir işlemi buradan programlayabilirsiniz

      Veri kaydını/sorgusunu sil [Diyalog ile: Kapalı]

İşlenen veri kaydını tablodan siler Süreçler

      Komut dosyasını çalıştır [ "ts.process log"; Parametre: ... ]

Koddaki tüm değişkenleri dikkate alarak işlem günlüğüne yeni bir veri kaydı ekler.

   Son (eğer)

Son (eğer)

ts.enter_process - Tabloya herhangi bir işlem girmek için bu kodu kullanın Süreçler içinde. Dolayısıyla bu komut dosyasını veritabanınızın herhangi bir yerinden çağırabilirsiniz. Kullanılan tüm komutlar ayrıca FileMaker Go veya WebDirect içinde. Örneğimizde, kod dört kod parametresi kabul eder: Komut, e-posta, veri kimliği ve kullanıcı adı. Bu dört parametre basitçe yeni bir veri kaydı olarak Süreçler girilir. Elbette, bu kodu bireysel olarak genişletebilir ve örneğin teklif kimliği, fatura kimliği veya müşteri kimliği gibi diğer anahtarları iletebilirsiniz. Bu durumda, tabloyu girmeniz gerekir Süreçler ve ayrıca bu alanları işlem günlüğüne ekleyin.

Komut dosyası çok basit bir yapıya sahiptir: İlk bölümde, kod parametreleri (kesme işaretiyle ayrılmış) değişkenlere yazılır. Bu amaç için Özel Fonksiyon "StringColumns". Bunun için farklı bir teknoloji de kullanabilir ve parametreleri örneğin "GetValue ()" işlevini kullanarak kodda okuyabileceğiniz normal bir liste olarak aktarabilirsiniz.

ts.işlem günlüğü - Senaryo yazılır yazılmaz ts.enter_process tabloda yeni bir veri kaydı Süreçler oluşturuldu ve işlem makinesi düzen üzerinde aut.processes süreç komut dosyası tarafından otomatik olarak başlatılır lay. işlem makinesi işlenir ve tablonun veri kaydı Süreçler Silindi. Senaryo ts.işlem günlüğü işlem günlüğünde yeni bir veri kaydı oluşturmak için aynı değişkenlerle. Komut dosyasının yapısı büyük ölçüde komut dosyasıyla aynıdır ts.enter_processtek fark, veri kaydının tabloda değil günlükte saklanmasıdır Süreçler üretilir.

Süreçler için ana veriler

Bazı durumlarda, örneğin belgeleri e-posta ile gönderebilmek gibi bir süreç için ek ana verilere ihtiyacınız olabilir. Daha sonra, örneğin ilgili bir e-postanın hangi konuyu ve metni içermesi gerektiğini önceden tanımlamak isteyeceksiniz. Bu amaçla, veri tablosunu oluşturduk İşlem yöneticisi oluşturulmuştur. Bu tablodaki her bir veri kaydı, bir sürecin ana verilerine karşılık gelir. Alandaki değer Name_Process komut dosyası tarafından da kullanıldığı için bir sürecin adına karşılık gelir ts.enter_process kullanılır.

Süreç yöneticisinde süreçleri tanımlayın

E-postalar için isteğe bağlı yer tutucular

Gerekirse, "E-posta konusu" ve "E-posta metni" şablon metinlerinde yer tutucular tanımlayabilir ve bunları "lay.process.machine" komut dosyasının alt komut dosyalarında gerçek verilerle değiştirebilirsiniz. Örnek betiğimizde, her iki metin de şu şekilde oluşturulmuştur SQL-değişkenlerde sorgu $email_subject ve $email_text yazılıdır. Örneğin, bir metin şablonundaki {name_customer} yer tutucusunu değiştirmek istiyorsanız, bu iki değişken tanımındaki SQL sorgusuna 'Replace ( )' komutunu ekleyin:

Değişken set [$email_text; Değer: Exchange ( SQL-Query; "{Name_Customer}"; Table::Name_Customer) ]

Bu şekilde, e-posta şablonlarınızda değişkenler için değişken tanımlarında tanımlayabileceğiniz istediğiniz kadar yer tutucu kullanabilirsiniz $email_subject ve $email_text kolayca gerçek verilerle değiştirilebilir.

cronjobs ile zaman kontrollü işlemler (eklenti gereklidir)

Ayrıca, bir süreç motoru için örnek dosyamızı zaman kontrollü cron işlerini işleme seçeneği ile donattık. Başlangıç ve bitiş tarihi, istenen zaman ve aralık proses yöneticisinde tanımlanabilir. Bu fonksiyonu kullanmak için MBS FileMaker Eklentileri 'FM.RunScript' komutu gerekli olduğu için. Alternatif olarak, 'BE_ExecuteScript' komutu ücretsiz BaseElements Eklentileri kullanılabilir.

İşlem makinesinde izleme komut dosyasını ayarlama

Tüm cronjob'lar betik tarafından kontrol edilir cron.operation makine Örneğin, her on dakikada bir bir zamanlayıcı komut dosyası aracılığıyla çağırabilirsiniz. Örnek çözümümüzde, bir komut dosyası ekledik cron.timerscript komut dosyasının yürütülmesini kontrol eden entegre cron.operation makine her 600 saniyede bir, yani her 10 dakikada bir. Bu komut dosyasını, örneğin kullanıcı adını sorgulayarak çözümünüzün başlangıç komut dosyasına entegre edebilirsiniz, böylece işlem makinesinin kullanıcısı oturum açtığında zamanlayıcı otomatik olarak başlatılır.

Senaryo cron.operation makine ilk olarak düzene geçer İşlem yöneticisi ve tüm aktif cronjob'ları çağırır. Daha sonra bir yürütme döngüsü başlar ve bu döngüde bulunan her cronjob için bir yürütme zamanı olup olmadığı kontrol edilir. Eğer öyleyse, ilgili cron işi yürütülür.

Cronjob'lar için, herhangi bir komut dosyasının ve ilgili komut dosyası parametrelerinin yürütülmesini tanımlayabilirsiniz. Bu nedenle bir cronjob, komut dosyasının herhangi bir alt komut dosyasını yürütmez lay. işlem makinesi ancak süreç yöneticisinde bir cronjob için parametreler de dahil olmak üzere herhangi bir komut dosyası tanımlayabilirsiniz. Dolayısıyla bir cronjob teorik olarak FileMaker çözümünüzdeki herhangi bir komut dosyasını zaman kontrollü olarak çalıştırabilir.

FileMaker 13 ila 16 için örnek dosyayı indirin

Örnek dosyamız, kendi FileMaker çözümlerinize entegrasyon için makalede bahsedilen tüm komut dosyalarını içerir. Örnek çözümde yer alan "Veri tablosu" tablosu yalnızca gösterim amaçlıdır ve kendi FileMaker çözümünüzdeki veri tablolarına karşılık gelmelidir.

FileMaker örnek dosyasını indirin

Süreç motorunu gFM-Business'a entegre edin

Açık lisansın bir parçası olarak, bu işlem makinesi örneğini gFM-Business ERP sistemine kolayca entegre edebilirsiniz. gFM-Business Özel lisansı sahipleri, bir işlem motorunun işlevselliğini kendi çözümlerine entegre etmemizi sağlayabilirler.

Örnek dosyadaki komut dosyalarını çözümünüze aktarma

Komut dosyaları, pano aracılığıyla bir FileMaker çözümünden diğerine kolayca aktarılabilir. Diyaloğu açmanız yeterlidir Komut dosyalarını yönetme, fare ile istediğiniz senaryoyu seçin ve menü aracılığıyla senaryoyu panoya kopyalayın [Düzenle - Kopyala] veya tuş kombinasyonu [Ctrl/Cmd-C]. Ardından hedef çözümde aynı diyaloğu açın ve menü komutunu kullanarak önceden kopyalanan kodu yapıştırın [Düzenle - Yapıştır] Tekrar.

Tabloları örnek dosyadan çözümünüze aktarmak için

Tablolar mevcut bir çözüme birkaç şekilde eklenebilir. En kolay yol, tabloyu içe aktarmak için [İthalat...] diyalog içinde Veritabanını yönetin. Kaynak çözümden içe aktarılacak tüm tablolar daha sonra bir diyalog penceresinde seçilebilir. Bu nedenle bu yöntem, aynı anda birden fazla tablo içe aktarılacaksa özellikle uygundur. Yalnızca bir tablo içe aktarılacaksa, bu bir komut dosyası gibi pano aracılığıyla da yapılabilir. Tüm verileri içeren bir tablo içe aktarılacaksa, bu işlem şu komutla yapılabilir [Dosya > Veri kayıtlarını içe aktar > Dosya] içe aktarma diyaloğunda. İçe aktarma diyaloğunda hedef tablo şu şekilde olmalıdır Yeni masa belirtilmelidir.

Değer listelerini örnek dosyadan çözümünüze aktarmak için

Değer listeleri, pano aracılığıyla bir FileMaker çözümünden diğerine kolayca aktarılabilir. Basitçe aşağıdaki diyaloğu açın [Dosya > Yönet > Değer listeleri]istediğiniz öğeyi seçin Değer listesi fare ile seçin ve Değer listesi menü aracılığıyla panoya [Düzenle - Kopyala]veya tuş kombinasyonu [Ctrl/Cmd-C]. Ardından hedef çözümde aynı diyaloğu açın ve menü komutunu kullanarak önceden kopyalanan değer listesini yapıştırın [Düzenle - Yapıştır] Tekrar.

Kendi fonksiyonlarınızı örnek dosyadan çözümünüze nasıl aktarabilirsiniz?

Diyalogda [Dosya > Yönet > Kendi işlevleri...] düğme üzerinde [İthalat] ve ardından örnek dosyayı seçin. Aşağıdaki diyalogda istediğiniz özel fonksiyonları seçin ve diyaloğu onaylayın. Lütfen bu işlevin yalnızca FileMaker Pro Advanced'de mevcut olduğunu, FileMaker Pro'da mevcut olmadığını unutmayın.

Bir yorum bırakın

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 süreçlerini bir süreç motoru ile otomatik olarak kontrol edin