fastreport打印代码及SQL合并字段的语句
procedure Tform1.Button5Click(Sender: TObject);
var
p:pointer;
FrfStr:string;
begin
inherited;
Screen.Cursor:=MYCURSORWAITHAND;
with cdsPrint do
begin
Active:=false;
//这个SQL用于将remark中的记录合并到一起!
CommandText:='select a.ITEM_ID, a.ITEM_NAME,count(a.Coll_ID) as num,ltrim(max(sys_connect_by_path(a.remark, '';'')), '';'') remark '
+' from (select /*+index(b,TAB_ORDER_I)*/ b.ITEM_ID,b.Coll_ID,b.ITEM_NAME,b.remark,row_number() over(partition by b.ITEM_ID order by b.ITEM_ID)'
+' ITEM_ID1,row_number() over(order by b.ITEM_ID) + dense_rank() over(order by b.ITEM_ID) ITEM_ID2 '
+' from TAB_ORDER b where b.Coll_ID ='''+DBComboBoxEh1.Text+''''
+' ) a'
+' start with ITEM_ID1 = 1 connect by prior ITEM_ID2 = ITEM_ID2-1 group by a.ITEM_ID,'
+' a.ITEM_NAME order by a.ITEM_ID ';
Active:=true ;
end;
cds_Print.DisableControls;
p:=cdsPrint.GetBookmark;
FrfStr:='report1l.frf';
try
if cdsPrint.Active and (cdsPrint.RecordCount<>0) then
begin
frReport1.LoadfromFile(ExtractFilePath(ParamStr(0))+'Report\'+FrfStr);
PrintSet;
frReport1.ShowReport;
end
else
begin
Screen.Cursor:=crDefault;
Application.MessageBox(pchar(STR_MESSAGEBOX_HEADER+'没有数据可打印'),pchar(self.Caption),MB_OK or MB_ICONEXCLAMATION);
end;
finally
cdsPrint.GotoBookmark(p);
cdsPrint.EnableControls;
&nb
相关文档:
create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',
@pagesize int output,--每页显示记录条数
@currentpage int output,--第几页
@orderid nvarchar(50),--主键排序
@sort int,--排序方式,1表示升序,0表示降序排列
......
where 1=1有什么用?在SQL语言中,写这么一句话就跟没写一样。
select * from table1 where 1=1与select * from table1完全没有区别,甚至还有其他许多写法,1<>2,'a'='a','a'<>'b',其目的就只有一个,where的条件为永真,得到的结果就是未加约束条件的。
在SQL注入时会用到这个,例如select * from table1 ......
declare @id varchar(10)
declare @nm varchar(10)
declare @table as table(emp varchar(10),empname varchar(10))
declare CurEmp cursor for select top 6 empid,empname from employee
open CurEmp
fetch next from CurEmp into @id,@nm
While @@fetch_status=0
begin
insert @table(emp,e ......
数据类型
类型
描 述
bit
整型
bit 数据类型是整型,其值只能是0、1或空值。这种数据类型用于存储只有两种可能值的数据,如Yes 或No、True 或Fa lse 、On 或Off
int
整型
int 数据类型可以存储从- 231(-2147483648)到231 (21 ......
SELECT DISTINCT A.CASEPROP AS PROP,'旧存' AS AJLX,0 AS AJLXXH,A.CASE_PROP AS PROPNO
,M1=( SELECT COUNT(*) from CASES WHERE CASEPROP=A.CASEPROP AND
(PERMITDAY <'2008.12.26 00:00:00' AND (SHUTDAY IS NULL OR
SHUTDAY<'1900-01-01 00:00:00' OR SHUTDAY>='2008.12.26 00:00:00') )) ......