BMS-HOSxP Community

HOSxP => Report Exchange => ข้อความที่เริ่มโดย: naj ที่ กุมภาพันธ์ 17, 2009, 12:18:04 PM

หัวข้อ: Function YindeeReplaceStr
เริ่มหัวข้อโดย: naj ที่ กุมภาพันธ์ 17, 2009, 12:18:04 PM
สำหรับท่านใดที่เคยใช้ function GetSQLSubQueryData(sql) ข้อมูลที่ได้จะเป็น 'xxxx','yyyy','zzzzz'  ซึ่งบางครั้งผู้ใช้อยากให้เครื่องหมาย ' ' หายไป โดยให้แสดงเป็น xxx,yyyy,zzzzz
จากที่เคยเรียนรู้เรื่องการสร้าง Function ขึ้นใช้เองใน Report Designer วันนี้มารู้จัก Function YindeeReplaceStr
Str คือ ข้อความ
o คือ เครื่องหมายหรือสิ่งที่อยู่ในข้อความเดิมที่ต้องการแทนที่
n คือ เครื่องหมายหรือสิ่งที่อยู่ในข้อความใหม่ที่ต้องการแทนที่แทนของเดิม
ยกตัวอย่าง เช่น  ผมต้องการแทนที่ 1 ด้วย a
ข้อมความ  str='123451';
YindeeReplaceStr(str,'1','a');
จะได้ str='a2345a'
โค๊ด: Pascal
  1. Function YindeeReplaceStr(Str,o,n:string):string;
  2. var
  3. np,nl:integer;
  4. begin
  5. np:=pos(o,Str);
  6. nl:=length(o);
  7. while (np >0) do
  8. begin
  9. delete(Str,np,nl);
  10. insert(n,Str,np);
  11. np:=pos(o,Str);
  12. end;
  13. Result:=Str;
  14. end;
ตัวอย่างตามรูปที่แนบมาครับ
หัวข้อ: Re: Function YindeeReplaceStr
เริ่มหัวข้อโดย: SrWooD ที่ กุมภาพันธ์ 17, 2009, 12:45:59 PM
ขอบคุณครับ

สุดยอดเลยครับ

 ;D ;D ;D
หัวข้อ: Re: Function YindeeReplaceStr
เริ่มหัวข้อโดย: doramon ที่ กุมภาพันธ์ 17, 2009, 17:30:16 PM
สำหรับท่านใดที่เคยใช้ function GetSQLSubQueryData(sql) ข้อมูลที่ได้จะเป็น 'xxxx','yyyy','zzzzz'  ซึ่งบางครั้งผู้ใช้อยากให้เครื่องหมาย ' ' หายไป โดยให้แสดงเป็น xxx,yyyy,zzzzz
จากที่เคยเรียนรู้เรื่องการสร้าง Function ขึ้นใช้เองใน Report Designer วันนี้มารู้จัก Function YindeeReplaceStr
Str คือ ข้อความ
o คือ เครื่องหมายหรือสิ่งที่อยู่ในข้อความเดิมที่ต้องการแทนที่
n คือ เครื่องหมายหรือสิ่งที่อยู่ในข้อความใหม่ที่ต้องการแทนที่แทนของเดิม
ยกตัวอย่าง เช่น  ผมต้องการแทนที่ 1 ด้วย a
ข้อมความ  str='123451';
YindeeReplaceStr(str,'1','a');
จะได้ str='a2345a'
โค๊ด: Pascal
  1. Function YindeeReplaceStr(Str,o,n:string):string;
  2. var
  3. np,nl:integer;
  4. begin
  5. np:=pos(o,Str);
  6. nl:=length(o);
  7. while (np >0) do
  8. begin
  9. delete(Str,np,nl);
  10. insert(n,Str,np);
  11. np:=pos(o,Str);
  12. end;
  13. Result:=Str;
  14. end;
ตัวอย่างตามรูปที่แนบมาครับ


มาอีกแล้ว
หัวข้อ: Re: Function YindeeReplaceStr
เริ่มหัวข้อโดย: thannawe ที่ กุมภาพันธ์ 17, 2009, 17:42:27 PM
มาอีกแล้ว ท่านเทพในตำนาน
หัวข้อ: Re: Function YindeeReplaceStr
เริ่มหัวข้อโดย: doramon ที่ กุมภาพันธ์ 17, 2009, 17:43:19 PM
มาอีกแล้ว ท่านเทพในตำนาน

อ. นาจ ไม่ชอบ ตำนาน 

เพราะว่า  ?????
หัวข้อ: Re: Function YindeeReplaceStr
เริ่มหัวข้อโดย: thannawe ที่ กุมภาพันธ์ 17, 2009, 17:51:14 PM
อ.นาจ ไม่ชอบตำนาน  แสดงว่า ชอบตำแป๊ปเดียว!! :D ;D :D ;D :D
หัวข้อ: Re: Function YindeeReplaceStr
เริ่มหัวข้อโดย: doramon ที่ กุมภาพันธ์ 17, 2009, 17:52:10 PM
ส่วนใหญ่  คนที่เป็นตำนาน จะไม่อยู่แล้ว   :'(