Jump to content

مشکل فیلدهای از نوع twidememo


SayeyeZohor

Recommended Posts

من یک فیلد دارم در اسکیوال از نوع nvarchar(max)

این فیلد را از طریق یک uniHtmlMemo پر می کنم که این شکلی در دیتابیس  ذخیره می شود


<div align="right">شسیشیش</div><div align="right">شسبنشنبتدش</div><div align="right">شنبتاشن</div>

حالا زمان نمایش این فیلد  در گرید من گزینه DisplayMemo رو فعال کردم و به خوبی اطلاعات نمایش داده می شه

مشکل من زمانی هستش که اطلاعات وارد شده در این فیلد بالا میره و به این شکل میشه و ترکیب گرید رو به هم می ریزه

 

image.png.35ef65d9472625a8d187a87b59969fd9.png

 

من میخوام به طور مثال حداکثر 100 کاراکتر از این فیلد رو نمایش بدم

با calcfield هم کد زدم نشد

 

procedure TUniCheckListNezaratD2D3ProbNew.UQ_NezaratD3CalcFields(DataSet: TDataSet);
var
  Len: Integer;
begin
  Len := StrToIntDef(IFTHEN(Length(UQ_NezaratD3SharhHtmlNew.AsWideString) <= 100, IntToStr(Length(UQ_NezaratD3SharhHtmlNew.AsWideString)), '100'), 0);
  UQ_NezaratD3SharhHtmlShort.AsString := UQ_NezaratD3SharhHtml.AsString; //Copy(UQ_NezaratD3SharhHtmlNew.AsWideString, 0, Len) + ' ...';
end;

 

Link to comment
Share on other sites

Hi, with this code, I Remove all tag in html text in sql function and then I copy and display a part of the text

I made a trick :blink2::biggrin:

tnx @Sherzod @Farshad Mohajeri

 

CREATE FUNCTION [dbo].[udf_StripHTML](@HTMLText VARCHAR(MAX))
RETURNS VARCHAR(MAX)
AS
BEGIN	
    DECLARE @Start INT
	DECLARE @End INT
	DECLARE @Length INT
	
	SET @Start	= CHARINDEX('<',@HTMLText)
	SET @End	= CHARINDEX('>',@HTMLText,CHARINDEX('<',@HTMLText))
	SET @Length = (@End - @Start) + 1
	
	WHILE (@Start > 0) AND (@End > 0) AND (@Length > 0)
	BEGIN
		SET @HTMLText	= STUFF(@HTMLText,@Start,@Length,' ')
		SET @Start		= CHARINDEX('<',@HTMLText)
		SET @End		= CHARINDEX('>',@HTMLText,CHARINDEX('<',@HTMLText))
		SET @Length		= (@End - @Start) + 1
	END
	RETURN LTRIM(RTRIM(@HTMLText))
END

 

Link to comment
Share on other sites

  • 3 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...