dBase III报告中的新行是什么?

时间:2017-06-02 10:44:01

标签: dbase clipper

在生成的报告中,我无法转到新行。我可以并排添加4个字段,但我想将它们添加到新行中。

1 个答案:

答案 0 :(得分:1)

如果您只是作为设备打印到打印机(LPT1),在输入代码将设备从屏幕切换到打印机后,只需参考要打印的行号。这是我用于打印页眉的旧程序的一些代码,以及后续标题。

  1. 在代码的早期:

    SET CONSOLE OFF && so your output doesn't echo to the screen while printing.
    SET PRINTER ON
    SET PRINTER TO LPT1
    
  2. 然后调用Prt_Header()函数打印第一页标题。在打印详细记录时,您必须跟上行号,当您到达页面底部时,使用EJECT命令将该页面踢出并再向Prt_Header()发送一个电话。< / p>

  3. ****************************
    STATIC FUNCTION Prt_Header()
    ****************************
    
        nPage += 1
    
        @  1,  4 SAY DATE()
        @  1, 55 SAY "MyCompany INTERNATIONAL, INC."
        @  1,121 SAY "Page " + STR( nPage, 4, 0)
    
        @  2, 51 SAY "MY Report Name"
        @  3,  4 SAY "Pay Group:  " + cPayGroup
        @  3, 58 SAY "For Period: " + cPeriodMon + "/" + cPeriodYr
        @  4,  4 SAY cLines
        @  5,  4 SAY "EXECUTIVE " + "(" + cParTitle + "):  " + cName
        @  5, 70 SAY "Member #:" + cDist
        @  5,100 SAY "Sponsored:  " + STR( nNoSponsored, 5, 0 )
    
        @  6, 21 SAY cAddress
    
        @  6,100 SAY "Qualified:  " + STR( nQualified, 5, 0 )
    
        if .not. empty( cAddress2 )
            @ 7, 21 SAY cAddress2
            nLine_no := 8
        else
            nLine_no := 7
        endif
    
        @ nLine_no, 21 SAY TRIM(cCity) + ",  "+ cState + "  " + cZip + "  " + =
        cFullName
    
        nLine_no += 2
    
        @ nLine_no,  4 SAY "LN LEVEL  I. D.     NAME"
        @ nLine_no, 70 SAY "SALES    BONUS    PCT"
        @ nLine_no, 93 SAY "PHONE          LAST ORDER  STATUS"
        @ nLine_no + 1,  4 SAY cLines
        nLine_no += 2
    
        nItem := 0
    
        RETURN NIL
    
    * EOP: Prt_Header()
    

    但是,如果你使用的是报告生成器,那么这不是你想要的。