แสดงกระทู้

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - anutta

หน้า: [1]
1
Networking / Re: การบล็อคไม่ให้ใช้ internet
« เมื่อ: มีนาคม 08, 2013, 20:13:38 PM »
เท่าที่ดูจากภาพ ผมสันนิฐานว่า น่าจะเกิดจากการต่อ Access Point หรือ Router เพิ่ม แล้ว Access Point หรือ Router นั้นๆ เซตให้แจก IP อัตโนมัติ (DHCP) แต่ทั้ง 2 ตัวไม่ได้เชื่อม ต่อ Internet ครับ ทำให้เครื่องที่อยู่ใกล้ๆได้รับ IP จากเครื่องนี้ และ Gateway ชี้ไปที่ เครื่องนี้ (DHCP) เลยออกเน็ตไม่ได้ครับ
 - ถ้าเป็นกรณีนี้(เพิ่ม  Access Point หรือ Router)ให้ ปิด DHCP SERVER ครับ

2
Delphi / Pascal / Re: เรื่องการใช้ reportbuilder ใน delphi 2007
« เมื่อ: มิถุนายน 27, 2012, 10:56:19 AM »
ลองศึกษาจาก TurboHOSxP
ตาม Procedure นี้ครับ
เรียกใช้แบบนี้
  printreportwithparam('FORM-PASADU-FORM-1', Fperson_id,
    '', '', '', '', '', '', '', '', '');

ที่มา
procedure PrintReportWithParam(ReportName: string; pr1, pr2, pr3, pr4, pr5, pr6,
  pr7, pr8, pr9, pr10: string);
var
  f, sf: tform;
var
  i, i1, i2: integer;
  s: string;
  es: tstringlist;
  ei: integer;
  se: string;
  userparam: tstringlist;
begin
  if getsqldata('select count(*) as cc from reporttemplate where name="' +
    reportname + '"') = 0 then

  begin
    showmessage('Report ' + reportname + ' Not found !!!!' + #13 +
      'Please contact system administrator');
    exit;

  end;

  if getsqldata('select count(*) as cc from reporttemplate where name = "'+
    reportname+'--'+mainform.tvapi.computername+'"')>0 then
    begin
      reportname:=reportname+'--'+mainform.tvapi.computername;
    end;

  LogReportAccess(ReportName);

  mainform.jvinter.pas.text := '';

{  try
    if assigned(PrintStatusForm) then
    begin
      try
        PrintStatusForm.close;
      except
      end;
      freeandnil(PrintStatusForm);
    end;
  except
  end;   }

  userparam := tstringlist.create;
  try
    userparam.add(pr1);
    userparam.add(pr2);
    userparam.add(pr3);
    userparam.add(pr4);
    userparam.add(pr5);
    userparam.add(pr6);
    userparam.add(pr7);
    userparam.add(pr8);
    userparam.add(pr9);
    userparam.add(pr10);

    userparam.savetofile(gettempdir + 'KSK-param.txt');
  finally
    userparam.free;
  end;

  frrhide := true;
  //setmanoiagent('', 'print', false);
  // hosxpdm.KSKDCOM.appserver.sendbroadcastnotifymessage('~Printing Report:' + reportname + ':Default Printer:Param [' + pr1 + ',' + pr2 + ',' + pr3 + ',' + pr4 + ',' + pr5 + ',' + pr6 + ',' + pr7 + ',' + pr8 + ',' + pr9 + ',' + pr10 + ']');
  //disablebmessage;
  {
  application.createform(TPrintstatusForm, PrintStatusForm);

  PrintStatusForm.FormStyle := fsstayontop;

  PrintStatusForm.StickTo := mainform.Agent;
  PrintStatusForm.showcaption := false;
  // office97balloon.Caption:='Save Data';
  PrintStatusForm.Show;          }
  application.processmessages;
  // sf := findform(PrintStatusForm);

  // tReorderstatusform(sf).pg.position := 0;
  // tReorderstatusform(sf).image1.picture.assign(nil);
  // tReorderstatusform(sf).fclabel1.caption := 'Please Wait Preparing Report';
  application.processmessages;


  {application.createform(TReportPrintForm, ReportPrintForm);
    try
      ReportPrintForm.formstyle := fsnormal;
      ReportPrintForm

      ptemrform.hnedit.text := hnedit.text;
      ptemrform.showmodal;
    finally
      ptemrform.free;
    end;     }


//  findshowform(TReportPrintForm, '');
  application.createform(TReportPrintForm, ReportPrintForm);
  application.processmessages;
//  f := findform(TReportPrintForm);
  with reportprintform do

  begin
    width := 50;
    height := 30;
    top := 1;
    left := 1;
    formstyle := fsnormal;
      // windowstate := wsminimized;

    application.processmessages;
    preparereport(reportname);



    if lastprintreport <> reportname then
      ReportTemplateSave(reportname);


    if vartostr(getsqldata('select script_dfm from reporttemplate where name = "' +
      reportname + '"')) <> '' then
    begin

      reportvalue[1] := pr1;
      reportvalue[2] := pr2;
      reportvalue[3] := pr3;
      reportvalue[4] := pr4;
      reportvalue[5] := pr5;
      reportvalue[6] := pr6;
      reportvalue[7] := pr7;
      reportvalue[8] := pr8;
      reportvalue[9] := pr9;
      reportvalue[10] := pr10;

      mainform.RunScriptProgramEx(gettempdir + 'KSK-Script.PAS');




    end else
      if pos(' main', mainform.jvinter.pas.text) > 0 then
      begin
        reportvalue[1] := pr1;
        reportvalue[2] := pr2;
        reportvalue[3] := pr3;
        reportvalue[4] := pr4;
        reportvalue[5] := pr5;
        reportvalue[6] := pr6;
        reportvalue[7] := pr7;
        reportvalue[8] := pr8;
        reportvalue[9] := pr9;
        reportvalue[10] := pr10;
        mainform.jvinter.run;

      end;



    sqledit.Lines.LoadFromFile(gettempdir + 'KSK-Report.SQL');
    for i := frrparamlist.count - 1 downto 0 do
    begin
      s := getcolonstring(frrparamlist, 2);
      s := replacestr(s, '-', ':');
      i1 := strtoint(getcolonstring(s, 1));
      i2 := strtoint(getcolonstring(s, 2));
      sqledit.selstart := i1;
      sqledit.sellength := i2;
      case i of
        9: sqledit.seltext := pr10;
        8: sqledit.seltext := pr9;
        7: sqledit.seltext := pr8;
        6: sqledit.seltext := pr7;
        5: sqledit.seltext := pr6;
        4: sqledit.seltext := pr5;
        3: sqledit.seltext := pr4;
        2: sqledit.seltext := pr3;
        1: sqledit.seltext := pr2;
        0: sqledit.seltext := pr1;
      end;
    end;
    with mainform do
    begin
      freeandnil(tempcds);
      tempcds := tclientdataset.create(hosxpdm);
        //  tempcds.remoteserver := hosxpdm.kskdcom;
    //  tempcds.providername := 'ReportProvider';
        { reportcds.close;
         reportcds.datarequest(sqledit.text);
         reportcds.Open; }
      es := tstringlist.create;
      es.assign(sqledit.lines);
      if es.count > 0 then
        for ei := 0 to es.count - 1 do
        begin
          se := trim(es[ei]);
          if length(se) > 0 then
            if se[length(se)] = ';' then
            begin
              es[ei] := '   ';
              tempcds.datarequest('EXEC ' + se);
            end;

        end;

      tempcds.data := hosxp_getdataset(es.text);
     // tempcds.open;
      es.free;

      tempcds.SaveToFile(gettempdir + 'report.cds');
      freeandnil(PrintStatusForm);

      LastPrintReport := reportname;

      if FUseInternalReportEngine then
      begin


        application.createform(TRBuilderDM, RBuilderDM);
        RBuilderDM.reportcds.close;
        RBuilderDM.reportcds.data := tempcds.data;
        try
          with RBuilderDM do
          begin


            reportds.dataset := RBuilderDM.reportcds;

            ppreport.template.filename := gettempdir + 'KSK-Report.RTM';
            ppreport.template.LoadFromFile;


            ppreport.DeviceType := 'Screen';
            ppreport.AllowPrintToFile := True;
            ppreport.ShowPrintDialog := true;
            ppreport.ModalPreview := true;
            ppreport.print;
          end;
        finally
          RBuilderDM.free;
        end;

      end else
      begin

        DLLHandle := LoadLibrary(PChar(extractfiledir(application.exename) +
          '\hos_rpt.dll'));
        FuncPtr := GetProcAddress(DLLHandle, 'DLLPreviewReport');
        if FuncPtr <> nil then
        begin
          @DLLPreviewReport := FuncPtr;
          DLLPreviewReport();
          FuncPtr := nil;
        end;
        FreeLibrary(DLLHandle);

      end;

      hosxpdm.reportds.dataset := tempcds;
        //  ppreport.template.filename := gettempdir + 'KSK-Report.RTM';
        //  ppreport.template.LoadFromFile;
        //  ppreport.datapipeline := ppDBPipeline;

        // TReorderStatusform(sf).close;
      //  if frrprintcopy > 0 then
         // ppreport.printersetup.copies := frrprintcopy;
      // // ppreport.print;
       // ppreport.printersetup.copies := 1;
    end;
      //close;
  end;
  //end;

  reportprintform.free;
  //enablebmessage;

end;



3
ยินดีต้อนรับ / Re: คำชี้แจงจาก BMS ครับ
« เมื่อ: มิถุนายน 27, 2012, 09:44:57 AM »
    ชีวิตย่อมเป็นไปตามลิขิต (ละชั่วทำดี)      วอนขออะไร
    วันนี้ไม่รู้เหตุการณ์ในวันพรุ่งนี้      กลุ้มเรื่องอะไร
    ไม่เคารพพ่อแม่แต่เคารพพระพุทธองค์      เคารพทำไม
    พี่น้องคือผู้ที่เกิดตามกันมา      ทะเลาะกันทำไม
    ลูกหลานทุกคนล้วนมีบุญตามลิขิต       ห่วงใยทำไม
    ชีวิตย่อมมีโอกาสประสบความสำเร็จ      ร้อนใจทำไม
    ชีวิตใช่จะพบเห็นรอยยิ้มกันได้ง่าย       ทุกข์ใจทำไม
    ผ้าขาดปะแล้วกันหนาวได้       อวดโก้ทำไม
    อาหารผ่านลิ้นแล้วกลายเป็นอะไร      อร่อยไปใย
    ตายแล้วบาทเดียวก็เอาไปไม่ได้      ขี้เหนียวทำไม
    ที่ดินคือสิ่งที่สืบทอดแก่คนรุ่นหลัง       โกงกันทำไม
    โอกาสจะได้กลายเป็นเสีย       โลภมากทำไม
    สิ่งศักดิ์สิทธิ์อยู่เหนือศีรษะเพียง 3 ฟุต       ข่มเหงกันทำไม
    ลาภยศเหมือนดอกไม้ที่บานอยู่ไม่นาน       หยิ่งผยองทำไม
    ทุกคนย่อมมีลาภยศตามวาสนาที่ลิขิต      อิจฉากันทำไม
    ชีวิตลำเค็ญเพราะชาติก่อนไม่บำเพ็ญ       แค้นใจทำไม (บำเพ็ญไวไว)
    นักเล่นการพนันล้วนตกต่ำ      เล่นการพนันทำไม
    ครองเรือนด้วยความประหยัดดีกว่าไปขอพึ่งผู้อื่น      สุรุ่ยสุร่ายทำไม
    จองเวรจองกรรมเมื่อไรจะจบสิ้น      อาฆาตทำไม
    ชีวิตเหมือนเกมหมากรุก       คิดลึกทำไม
    ฉลาดมากเกินจึงเสียรู้       รู้มากทำไม
    พูดเท็จทอนบุญจนบุญหมด       โกหกทำไม
    ดีชั่วย่อมรู้กันทั่วไปในที่สุด       โต้เถียงกันทำไม
    ใครจะป้องกันมิให้มีเรื่องเกิดขึ้นได้ตลอด       หัวเราะเยาะกันทำไม
    ฮวงซุ้ยที่ดีอยู่ในจิตไม่ใช่อยู่ที่ภูเขา       แสวงหาทำไม
    ข่มเหงผู้อื่นคือทุกข์ รู้ให้อภัยคือบุญ       ถามโหรเรื่องอะไร
    ทุกสิ่งจบสิ้นลงด้วยความตาย       วุ่นวายทำไม

5
แจ้งปัญหา / ขอความช่วยเหลือ / Re: สอบถาม คำสั้ง mysql
« เมื่อ: กุมภาพันธ์ 18, 2012, 12:08:37 PM »
ลองดู Report นี้นะครับ ค้นหาตามชื่อ lab ที่ขึ้นต้นด้วย crea (lab_items_name like 'crea%')
น่าจะพอใช้ได้ครับ

http://www.kkhos.com/download/CUSTOM--GFR.cds


ขอสอบถามหน่อยครับ ว่าถ้าอยากนับจำนวน ว่าระยะ ที่ 4 มีกี่คน ระยะที่ 3 มีกี่คน ต้องเขียนคำสั่งยังไงครับ
ลองประกาศตัวแปรให้มาเก็บค่า แต่ละ stage แล้วก็นับ เพิ่มไปเรื่อยแต่ตอนรวมตอนท้าย มันไม่เท่ากับค่าที่นับเองครับ

if variable5.value>=90 then
         value:='First Stage'
         a:=a+1
else if variable5.value>=60 then
          value:='Second Stage'
          b:=b+1
ขอบคุณครับ




ถ้า รวมแบบ นี้มีปัญหาจริงครับ

รู้สึกว่า จะมีค่าใน Record แรกของทุกหน้าซ้ำ 1 record (hn ซ้ำ 1 ครั้ง) ทำให้มีการบวกเพิ่ม a,b อีก 1 ตาม record แรกของทุกหน้าครับ

6
Delphi / Pascal / Re: GoogleMap Intraweb component
« เมื่อ: กุมภาพันธ์ 18, 2011, 14:06:22 PM »
อยากได้ component Intraweb ของ Googlemaps แบบที่สามารถ แสดงรายละเอียดข้อมูลในพิกัดนั้นๆได้และสามารถ กำหนดเป็น polygon polyline ต้องหาได้จากที่ไหนครับ..

7
น่าจะเพิ่ม สปสช. สนย.ด้วยนะครับ
ขอจองด้วยละกันครับ สนับสนุนเต็มที่ครับ ได้หนังสือล่วงหน้านานๆจะเป็นการดีมากเลยครับ
เห็นด้วยครับ

8
นอกเรื่อง / Re: ใครเคยโดนข่มเหงบ้างครับ
« เมื่อ: ตุลาคม 04, 2009, 20:52:22 PM »
ทุกสิ่งทุกอย่างในโลกนี้ มันเป็น..อนัตตา(ไม่ใช่ตัวใช่ตนอย่างที่เราเห็น เช่น น้ำ ก็ไม่ใช่น้ำเกิดจาก ไฮโดรเจน 2 ส่วน และ ออกซิเจน 1 ส่วน)..
จงอย่ายึดติดกับอัตตา(ตัวตน)..ที่เห็นหรือเป็นอยู่ แล้วจะสบายใจ..ครับ
ทำแล้วสบายใจ ชอบใจ สุขใจ...จงทำ
ถ้าทำแล้วหนักใจ เหนื่อยหน่าย ทุกข์ใจ ไม่มีความสุข...อย่าทำ
จง..คิดในสิ่งที่ดีและทำในสิ่งชอบ

9
น่าจะประมาณนี้ครับ ใส่ วงเล็บให้ถูกน่าจะพอได้นะครับ
select o.icode,v.*
from vn_stat v
left outer join opitemrece o on v.vn=o.vn
left outer join patient p on p.hn=o.hn
left outer join drugitems d on d.icode=o.icode
WHERE (v.pdx='E11%' and (v.dx0 like'I10' or v.dx1 like 'I10' or v.dx2 like 'I10'
or v.dx3 like 'I10' or v.dx4 like 'I10' or v.dx5 like 'I10')) or (v.pdx='I10'
and(v.dx0 like'E11%' or v.dx1 like 'E11%' or v.dx2 like 'E11%' or v.dx3 like 'E11%'
or v.dx4 like 'E11%' or v.dx5 like 'E11%'))
and v.vstdate between '2009-01-01' and '2009-06-30'

10
ผมว่า Function GetSQLStringDataDw คงยังใช้ไม่ได้กับ BMSdatacenter ครับ

12
ผมเข้าใจว่า (เข้าใจเองนะครับ) ในกรณี refer ผู้ป่วยใน ต้องใช้ an แทน vn ครับ
เพราะว่าผู้ป่วยในจะใช้ an ระบุตัวตนของผู้ป่วยที่นอน admit  ส่วนผู้ป่วยนอกน่าจะใช้ vn ระบุครั้งที่มารับริการของผู้ป่วยนอก (vn น่าจะเป็น visit number : yymmddhhnnss) ส่วนการส่ง refer(referout ที่ field  vn) คาดว่า ผู้ป่วยนอกจะเก็บ vn ผู้ป่วยในจะเก็บ an รวมใน ตารางเดียวกันครับ....

13
Development / Re: HOSxP v.3.52.8.20 มาแล้ว..
« เมื่อ: สิงหาคม 21, 2009, 21:42:45 PM »
อ้างถึง
ของผมทดลองแก้ไขและลบใช้ได้ครับไม่ error
;D ;D ;D หมายถึงลบรายการตรงปุ่มนี้หรือเปล่าครับ ;D ;D ;D
ใช่ครับ และ บัญชี 6 ครับ

14
Development / Re: HOSxP v.3.52.8.20 มาแล้ว..
« เมื่อ: สิงหาคม 21, 2009, 21:06:56 PM »
;D ;D ;D Error บัญชี 1 - 6 คลิ๊กแก้ไขข้อมูล ทุกบัญชีไม่สามารถลบรายการได้ครับ (OK แล้วไม่มีอะไรเกิดขึ้น) ;D ;D ;D

ของผมทดลองแก้ไขและลบใช้ได้ครับไม่ error

15
วิธีการติดตั้งโปรแกรม NTP Server บนระบบปฏิบัติการ Linux กับสถาบันมาตรวิทยาแห่งชาติ ครับ

linux ที่เชื่อมต่อ อินเตอร์เน็ต
 /etc/ntp.conf
------------------------------------
restrict default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery

restrict 127.0.0.1
restrict -6 ::1

server 203.185.69.60
server 203.185.69.59
server 203.185.69.56

#เครื่อง Time server ของสถาบันมาตรวิทยาแห่งชาติ

server   127.127.1.0   # local clock
fudge   127.127.1.0 stratum 2

driftfile /var/lib/ntp/drift
broadcastdelay 0.008
authenticate yes
keys /etc/ntp/keys
-------------------------------------------------

ในกรณีที่เครื่อง server Linux ไม่ได้เชื่อมต่อ อินเตอร์เน็ต ทำได้โดยการ sync เวลากับเครื่อง server linux ที่เชื่อมต่ออินเตอร์เน็ต config ดังนี้

/etc/ntp.conf

----------------------------

restrict default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict -6 ::1
server 192.168.1.5
server 192.168.1.10

#เครื่อง Server ในเครื่อข่าย Lan ที่ Sync เวลากับ Time server ของสถาบันมาตรฯ
server   127.127.1.0   # local clock
fudge   127.127.1.0 stratum 2   

driftfile /var/lib/ntp/drift
brodcastdelay 0.008
authenticate yes
keys /etc/ntp/keys

-----------------------------
แก้ ไฟล์ /etc/ntp.conf เสร็จแล้ว ก็สั่งให้โปรแกรม ntp ทำงาน
#service ntpd restart
อ้างอิง *http://www.nimt.or.th/nimt/Service/index.php?menuName=time5

16
Development / Re: รหัสมาตรฐานยา 24 หลัก
« เมื่อ: สิงหาคม 14, 2009, 20:18:48 PM »
...ผมว่าการกำหนดรหัสยามาตรฐานของหน่วยงาน ควรตั้งทีมขึ้นมาทำหน้าที่ออกรหัสนะครับ โดย ทีม น่าจะมี เภสัชกร ( รวมกัน หลายๆรพ.) และ admin ซึ่งน่าจะมีความถูกต้องมากกว่าให้ admin ออกรหัสเองครับ
ถ้าใช้รายการยาที่เป็นตัวเดียวกันได้ทั้งจังหวัด จะยิ่งมีประโยชน์มากครับ (ในกรณีรวมข้อมูลใน datacenter)

**ถ้าเป็นไปได้ควรกำหนดชุดข้อมูลพื้นฐานให้เป็นเหมือนกันทั้งจังหวัดจะง่ายในการจัดการข้อมูลครับ

18
Report Exchange / Re: รายงาน IM
« เมื่อ: กรกฎาคม 31, 2009, 21:34:55 PM »
ไม่ทราบว่าจะเกี่ยวกับ IM หรือเปล่านะครับ รายงานสรุปยอดจำนวนผู้ป่วยในที่กำลังนอน Admit ในตึก ตามช่วงเวลาที่เลือกครับ

19
  ฝึกอบรมการพัฒนาผู้ประกอบการส่วนกลาง เรื่อง “ซอฟต์แวร์ไทยก้าวไกลสู่ตลาดโลก” จัดโครงการฝึกอบรมการพัฒนาผู้ประกอบการส่วนกลาง เรื่อง “ซอฟต์แวร์ไทยก้าวไกลสู่ตลาดโลก” ในวันที่ 13,15,16 กรกฎาคม 2552 ณ ห้องประชุม สถาบันฝึกอบรมการค้าระหว่างประเทศ กรมส่งเสริมการส่งออก ถนนรัชดาภิเษก แขวงจันทรเกษม เขตจตุจักร กรุงเทพมหานคร 10900
http://www.sipa.or.th/th/training/index.php

งานนี้ ฟรีครับ

20
นอกเรื่อง / Re: โมโหครับ เขาว่าโปรแกรมเรา
« เมื่อ: กรกฎาคม 11, 2009, 16:13:59 PM »
ทำในสิ่งที่ชอบ ชอบในสิ่งที่ทำ อุปสรรคยิ่งมีมากยิ่งทำให้ แข็งแกร่งขึ้น ครับ
"แต่เราจะพัฒนา HOSxP ให้ดีที่สุด นั้นเป็นสิ่งที่ผมให้สัญญาครับ"
เป้าหมายชัดเจนแบบนี้เป็นเรื่องน่ายินดีอย่างยิ่งครับ ขอเป็นกำลังใจให้ครับ
ความจริง...คือ ทุกโปรแกรมคอมพิวเตอร์ ซักวันหนึ่งก็ต้องถึงจุดสูงสุดหรือจุดอิ่มตัว(รองรับทุกความต้องการ) อาจจะ 10 ปี หรือ 20 ปี จนไม่รู้จะใส่อะไรเข้าไปได้อีกแล้ว แต่สิ่งที่จะยังคงอยู่ในความทรงจำของผู้คนคือประโยชน์และความรู้ที่ได้รับจากตัวโปรแกรม จะคงอยู่ตลอดไปชั่วนิรันดร์ HOSxP ก็คงเป็นเช่นนั้นครับ
เพราะฉนั้นการถ่ายทอดความรู้ จึงเป็นสิ่งที่ยั่งยืนครับ ไม่มีวันจบสิ้น จากรุ่นสู่อีกรุ่นไปเรื่อยๆ  แนวทางในการจัดอบรมที่ BMS ทำอยู่เป็นสิ่งที่ถูกต้องแล้วครับ สำหรับผู้ที่มีความประสงค์ที่จะสนับและเป็นกำลังใจ ก็จะได้ส่งบุคลากรเข้ารับการอบรมกับทาง BMS
   ซึ่งโดยส่วนตัวแล้วผมมองว่า ซักวันหนึ่ง อาจจะประมาณ 5 - 10 ปีต่อจากนี้คงมีการใช้งานกันแพร่หลายไปทั่วทั้งประเทศ (ใช้งานเกือบทั้งหมดทุกหน่วยบริการสุขภาพ อย่างน้อยๆก็น่าจะประมาณ 60-70 % ของทั้งประเทศ) ถึงเวลานั้นการพัฒนาคงต่อไปได้อีกซักระยะ ก็น่าจะถึงจุดอิ่มตัวครับ product เสริมดีๆอีกหลายตัวที่BMS พัฒนาขึ้นก็จะยังสามารถ ถ่ายทอดความรู้ให้ผู้คนได้อีกหลายแสนคนครับ
แต่ถึงอย่างไรซักวันหนึ่ง ในประเทศไทยก็ต้องถึงจุดอิ่มตัวครับ โดยส่วนตัวนะครับ ถ้าจะให้ยั่งยืนไปอีกเป็น ศตวรรษ (100 ปี) ต้องออกหาตลาดต่างประเทศครับ ซึ่งจะได้ทั้งเงินตราต่างประเทศเข้าประเทศแล้ว ยังทำให้ประเทศชาติมีชื่อเสียงไปด้วยครับ ซึ่งปัจจุบันก็มีหน่วยงานสนับสนุนมากมาย (เงื่อนไขแล้วตามแต่ละหน่วยงาน)
ผมว่า HOSxP เป็นโปรแกรมที่ดีน่าใช้ครับ ขอเป็นกำลังใจให้ อ.ชัยพร และ ทีมงาน ขอเป็นส่วนหนึ่งในการสนับสนุน Software ดีๆของคนไทยครับ

21
ของ จ.สระบุรี ครับ ปรับแก้ตาม script ส่งออก 18 แฟ้ม provis ของ HOSxP เดือน พ.ค. 52 ครับ ลองเอาไปเป็นตัวอย่างได้ครับ (รายการยาปรับเป็น 24 หลัก) คิดว่าคงเป็นประโยชน์นะครับ
ขอบคุณ อ.ชัยพร ที่ให้ Script ครับ
ดาวน์โหลดได้เลยครับ http://www.kkhos.com/download/STD-files-18.rar

หน้า: [1]