一张A4纸打印两张会计凭证水晶报表如何设计
目前正在做会计凭证的录入,现在碰到一个打印的问题.
要求:目前一般的会计凭证半张A4纸就够了,因此会计经常会在一张A4张上打印两张凭证.当然也有可能一张A4纸不够,可能要几页才能打印完.但为了将凭证便于存档.目前会计是这样要求的:每张会计凭证打印15条记录,不足部份补空行.一张A4纸打印两张凭证.当然有时候会连续打印预若干张凭证.
现在我将会计凭证的数据源写成了一个存储过程.一次可以处理多张凭证,并且在存储过程里面已经补空行.
问题:水晶报表如何将一张A4纸按上面的要求设计,就好像两个半张A4纸一样.
存储过程如下:
/*
PROC:SELECT_Voucher
USER:票
PARA:@Fvoucherid (票)
CREATE BY :MARK
CREATE DATE:2007/4/26
EXAM:SELECT_Voucher '10,11,12 '
*/
ALTER PROC select_voucher(
@Fvoucherid NVARCHAR(4000))
AS
DECLARE
@COUNT INT, --共有多少行
@AddRec INT, --需追加的空白行
@AddSN INT, --追加行的序
@fbrno NVARCHAR(200), --公司名
@fdate DATETIME, --日期
@fyear INT, --年度
@fperiod INT, --期
@fgroupid NVARCHAR(10) ,--票字
@fnumber INT, --票
@fnumber2 NVARCHAR(50), --票字
@fattachments INT, --附件
@FPosted NVARCHAR(50),
@FPreparerID NVARCHAR(50),
@FCheckerID NVARCHAR(50),
@FPosterID NVARCHAR(50),
@FCashierID NVARCHAR(50),
@FHandler NVARCHAR(50),
@FvoucherID2 NVARCHAR(50),
@id INT,
@Row INT, --每票列印的行
@RecCount INT --行
SET @Row = 15
--票分出
CREATE TABLE #temp (
fvoucherid INT)
IF @Fvoucherid <> ' '
BEGIN
IF ltrim(rtrim(@Fvoucherid)) <> ' '
BEGIN
--如果只有一票
IF len(@Fvoucherid) > 0
AND charindex( ', ',@Fvoucherid) = 0
INSERT INTO #temp(fvoucherid)
VALUES (Convert(INT,@Fvoucherid))
[解决办法]
1、右键单击“详细资料”节的灰色横条,选择“节专家”,进入“节专家”对话框;
2、在“公用”选项卡,选中“在后面页新建页”复选框;
3、单击后面的“x+2”按钮,进入“公式工作室 - 格式公式编辑器”对话框;
4、输入“RecordNumber mod 15 = 0”,并单击左上角的“保存并关闭”按钮。
[解决办法]
帮顶
[解决办法]
你需要一打印原一的(就好像FinePrint)一,那你需要在家的定,料多列格式化。我用的是繁版,可能有些不一,但道理是相同的。
您取目段,且已核取 [一般] 索引中的 [定多重料行的格式] 方的,便示出 [配置] 索引。
使用 [配置] 索引可表定成多重料行格式,也就是,不必料面上方一直印到底,而是定多重料行,料以一料行接著一料行的方式列印,您也可以使料向向下列印,在每一料行列印一料,然後在每一料行列印第二料,然後第三,依此推。方分成四小方。
目大小
方可用指定一目的度 (高度和度)。定每一目的度 (根字元目、字型大小等),然後值入 [度] 方中。
再定每一目的高度 (根字元目、字型大小等),然後值入 [高度] 方中。
目之的距
方可用指定目之允的空白域 (距、等)。水平 = 目在面向之的距,垂直 = 目在面上下之的距。
定所允的距,在 [水平] 方中入水平距,以在 [垂直] 方中入垂直距。
列印方向
在表面中列印目,[列印方向] 方可您指定程式遵循的路,如下:
向
以向列印料行的目,先是第一料行的目、下一料行的目、再下一,依此推。然後,所有的料行都有目,程式向下移面,列印第一料行的第二目,然後第二,依此推。
向
上到下列印第一料行的目,然後第二料行,依此推。
定多重料行群的格式
如果希望程式使用指定取段的 [度]、[目之的距] 及 [列印方向],定多重料行群的格式,取核取方。