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
相关文档:
select datediff(month,'2009-11-02','2009-12-01')
不知道你要怎么个月差异
上面的命令结果也是1
但是其实按照常识差异不是一个月,是差一天一个月
这有段现成的代码可以帮助你算出常识上的差异
SQL code
declare @t table(a datetime,b datetime);
insert @t
select '2009-11-02','2009-12-01' UNION ......
1.利用下面的脚本创建BOOK,READER 和 BORROW 表,并完成后面的联系。
CREATE TABLE BOOK(
NO CHAR(8) PRIMARY KEY,
TITLE VARCHAR2(50) NOT NULL,
AUTHOR VARCHAR2(20) ,
PUBLISH VARCHAR2(20),
PUB_DA ......
MS-SQL中sa登录失败:
该错误产生的原因是由于SQL Server使用了"仅 Windows"的身份验证方式,
因此用户无法使用SQL Server的登录帐户(如 sa )进行连接.解决方法如下所示:
1.在服务器端使用企业管理器,并且选择"使用 Windows 身份验证"连接上 SQL Server
操作步骤:
在企业管理器中
--右键你的服务器实例(就是那 ......
SQLServer2005里使用with encryption选项创建的存储过程仍然和sqlserver2000里一样,都是使用XOR进行了的加密。和2000不一样的是,在2005的系统 表syscomments里已经查不到加密过的密文了。要查密文必须使用DAC(专用管理员连接)连接到数据库后,在系统表 sys.sysobjvalues查询,该表的列imageval存储了相应的密文。具 ......
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') )) ......