ผู้เขียน หัวข้อ: ส่งให้รพ นครนายก  (อ่าน 6241 ครั้ง)

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

ออฟไลน์ naj

  • Hero Member
  • *****
  • กระทู้: 2,449
  • Respect: +8
    • ดูรายละเอียด
    • http://www.luangphopern-hospital.com
ส่งให้รพ นครนายก
« เมื่อ: ธันวาคม 28, 2006, 08:42:20 AM »
0
รง 501 ที่แสดงสิทธิการรักษาด้วย 8)
เพิ่มเติม เข้าไป st1:=vartostr(getsqldata('select pttype from ipt where an="'+fan+'"'));   
   st1:=vartostr(getsqldata('select name from pttype where pttype="'+st1+'"'));
   fcds['name12']:= st1;
Yindee And Tan

ออฟไลน์ naj

  • Hero Member
  • *****
  • กระทู้: 2,449
  • Respect: +8
    • ดูรายละเอียด
    • http://www.luangphopern-hospital.com
Re: ส่งให้รพ นครนายก
« ตอบกลับ #1 เมื่อ: ธันวาคม 28, 2006, 08:45:31 AM »
0
ตัวอย่างรายงาน
Yindee And Tan

ออฟไลน์ pharma_nayok

  • Newbie
  • *
  • กระทู้: 17
  • Respect: 0
    • ดูรายละเอียด
Re: ส่งให้รพ นครนายก
« ตอบกลับ #2 เมื่อ: ธันวาคม 29, 2006, 09:04:54 AM »
0
ส่งให้ อ.นาจช่วยดูคะ  report คลินิกโรคเรื้อรัง ภาวะแทรกซ้อน  อายุไม่ออกคะ
 

ออฟไลน์ pharma_nayok

  • Newbie
  • *
  • กระทู้: 17
  • Respect: 0
    • ดูรายละเอียด
Re: ส่งให้รพ นครนายก
« ตอบกลับ #3 เมื่อ: ธันวาคม 29, 2006, 09:07:44 AM »
0
ส่งให้ อ.นาจช่วยดูคะ  report คลินิกโรคเรื้อรัง ภาวะแทรกซ้อน  อายุไม่ออกคะ
 

doramon

  • บุคคลทั่วไป
Re: ส่งให้รพ นครนายก
« ตอบกลับ #4 เมื่อ: ธันวาคม 30, 2006, 09:57:25 AM »
0
มันไม่ออกเพราะว่าตาราง clinicmember
sex   ,  age_y   มันไม่มีข้อมูลเก็บครับเป็น  bug

ออฟไลน์ pharma_nayok

  • Newbie
  • *
  • กระทู้: 17
  • Respect: 0
    • ดูรายละเอียด
Re: ส่งให้รพ นครนายก
« ตอบกลับ #5 เมื่อ: ธันวาคม 30, 2006, 10:33:52 AM »
0
อ.อ๊อด หายแล้วหรือคะ 
ช่วยทำให้ด้วยคะ
 

doramon

  • บุคคลทั่วไป
Re: ส่งให้รพ นครนายก
« ตอบกลับ #6 เมื่อ: ธันวาคม 30, 2006, 12:02:09 PM »
0
เสร็จแล้วครับแต่มันเป็น script

ออฟไลน์ naj

  • Hero Member
  • *****
  • กระทู้: 2,449
  • Respect: +8
    • ดูรายละเอียด
    • http://www.luangphopern-hospital.com
Re: ส่งให้รพ นครนายก
« ตอบกลับ #7 เมื่อ: ธันวาคม 30, 2006, 12:09:12 PM »
0
อ.อ๊อด never die
Yindee And Tan

ออฟไลน์ pharma_nayok

  • Newbie
  • *
  • กระทู้: 17
  • Respect: 0
    • ดูรายละเอียด
Re: ส่งให้รพ นครนายก
« ตอบกลับ #8 เมื่อ: มกราคม 01, 2007, 09:59:02 AM »
0
ทำได้แล้ว ขอบคุณค่ะ
 

doramon

  • บุคคลทั่วไป
Re: ส่งให้รพ นครนายก
« ตอบกลับ #9 เมื่อ: มกราคม 02, 2007, 08:28:44 AM »
0
ไม่ครบเนื่องจากว่าคนหนึ่งคนสามารถอยู่หลายคลินิคได้ครับ
เอาอันนี้ไปแทนครับ

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, DB, DBClient, Grids, DBGrids, ComCtrls;

type
  TForm1 = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    Panel3: TPanel;
    DBGrid1: TDBGrid;
    cds: TClientDataSet;
    ds: TDataSource;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Label1: TLabel;
    cxDateEdit1: TcxDateEdit;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var tc, pt: tclientdataset; s: string; a:Integer ; d: Word; m: Word; y: Word;
begin
  cds.data := hosxp_getdataset('select * from clinicmember where hn is not null and hn <>""');
  tc := tclientdataset.create(nil);
  pt := tclientdataset.create(nil);
  cds.first;
  while not cds.eof do
  begin
    tc.data := HOSxP_GetDataset('select sex,birthday,last_update from patient where hn = "' + cds.fieldbyname('hn').asstring + '"');
    s := '';
    while not tc.eof do
    begin
      if s = '' then s := tc.fieldbyname('sex').asstring else
        s := tc.fieldbyname('sex').asstring;
//        a := datediff(tc.fieldbyname('birthday').asdatetime, tc.fieldbyname('last_update').asdatetime, d, m, y);
        a := (now()-tc.fieldbyname('birthday').asdatetime)/365;
            tc.next;
    end;

    if trim(s) <> '' then
    begin
      pt.data := HOSxP_Getdataset('select * from clinicmember where hn = "' + cds.fieldbyname('hn').asstring + '"');
      if pt.recordcount > 0 then
      begin
        while not pt.eof do
           begin
        pt.edit;
        pt.fieldbyname('sex').asstring := s;
        pt.fieldbyname('age_y').asstring := a;
        pt.post;
           pt.next
           end;
        if pt.changecount > 0 then
        begin
          showdebugtext('Update Clinicmember AGE_Y  SEX : '+cds.fieldbyname('hn').asstring+' -- > '+s);
          hosxp_updatedelta(pt.delta, 'select * from clinicmember where hn = "' + cds.fieldbyname('hn').asstring + '"');
        end;
      end;

    end;

    cds.next;
  end;
  tc.free;
  pt.free;

  showmessage('Update Done.');

end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  fcds.data := cds.data;
  ExportDatasetToExcel('test.xls');
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
  fcds.data := cds.data;
  CreateDatasetReport('HOSxP Report');

end;

end.