Merhabalar,
Bugün sizlere kendi yazdığım bir kütüphaneyi tanıtacağım. İlk aşamada öncellikle ne işe yaradığını söyleyelim. AHBS, HYBS gibi uygulamalar için lazım olabilecek bir Sağlık Bakanlığı uygulamasının içinden Delphi aracılığı ile bu kütüphaneyi kullanarak kolayca sonucu elde edebilirsiniz.
Değinmem gereken birkaç konu;
constructor Create(BrowserParent: TForm; const BrowserTop, BrowserLeft,
BrowserHeight, BrowserWidth: Integer); overload;
yani create anında bir adet owner form yani sahip bir form ve uygulama ile iletişime geçecek browser için birkaç bilgi vermeniz gerekecek. Bunlar left, top, bottom ve right bilgileridir. Eğer tarayıcının gözükmesini istemiyorsanız hepsini "0" değerini verebilirsiniz. Örnek kullanım;
MMScaner := TMMScanner.Create(Form1, 0, 0, 0, 0);
Sağlık Bakanlığı sistem üzerinden herhangi bir API desteği sunmadığı için tarayıcı üzerinden işlemler başarılı bir şekilde alınabilmektedir.
Erişim No
Kütüphane üzerinden sadece erişim no bilgisine ulaşabilirsiniz. Bu erişim no bilgisi ile kendiniz de giriş yapabilir veya uygulamanız üzerinde gösterim/kayıt yapabilirsiniz.
getResult
getResult fonksiyonu ile ErisimNo fonksiyonunu kullanmadan direkt olarak sonuca ulaşabilirsiniz. Hastanın sadece T.C. Kimlik numarası ve doğum yılı yeterli kalacaktır.
resetBrowser
resetBrowser fonksiyonu ise yeni bir hasta sorgusu yaptığınızda işinize yarayacaktır. Tarayıcıyı login ekranına atar ve yeni kullanıcı bilgileri ile giriş yapıp sonucu elde etmenizi sağlar.
setBrowser
setBrowser fonksiyonu ile istediğiniz zaman fonksiyonu kullanarak tarayıcı pozisyonunu veya büyüklüğünü/genişliğini değiştirebilirsiniz.
Başlıca fonksiyonlar ve kullanılan kütüphaneler:
unit usesMMScanner;
interface
uses
Winapi.Windows, Winapi.Messages, System.Classes, System.SysUtils,
System.Variants,
Vcl.OleCtrls, SHDocVw, Vcl.StdCtrls, MSHTML, Vcl.ExtCtrls,
Vcl.CheckLst, Vcl.Forms, Vcl.Graphics, Vcl.Controls, Vcl.Dialogs;
type
TMMScanner = class
constructor Create(BrowserParent: TForm; const BrowserTop, BrowserLeft,
BrowserHeight, BrowserWidth: Integer); overload;
procedure FreeBrowser;
function ErisimNo(TC, DogumYili: string): string;
function getResult(TC, DogumYili: string): string;
procedure resetBrowser;
procedure setBrowser(setHeight, setWidth, setLeft, setTop: integer);
private
MMBrowser: TWebBrowser;
function Parse(Text, Sol, Sag: string): String;
procedure Waiting(iMilliSeconds: Integer);
public
end;
kodun devamına ve örneğine ulaşmak için Github adresimdeki Repo'ma göz atabilirsiniz!
Örnek uygulama
İyi çalışmalar.