Q&A

  • printer를 강제지정하려면...
qreport를 사용하고 있습니다...
지금 현재 컴퓨터에 연결된 프린터는 lpt1에 직접물린 도트프린터 한대와
network으로 연결된 프린터 한대가 있습니다...
평상시 아니 거의 대부분은 network으로 연결된 프린터를 사용하는데
프로그램에 거래명세표를 출력할때는 도트프린터를 사용해야 합니다...
왜냐 ncr지이기 때문에...^^
그런데 그때마다 프린터를 바꿔야하는 번거러움이 있어서 혹시 다른 출력물은
다 기본프린터로 정해진 것으로 출력이 되고 하나만 강제로 도트에 연결해
출력할수 있는 방법이 없을까요...

고수님들에 많은 답변을 기다리겠습니다...^^
3  COMMENTS
  • Profile
    ^ㅡ^ 2004.01.13 22:05




    답변이 되었으면 합니다.
    프린트 이름을 일단 정합니다.

    for i := 0 to Printer.Printers.Count-1 do
           begin
           if pos('DOTPRT',Printer.Printers.Strings[i]) > 0 then
              d := i; //지방사무소
           next;
           end;

    QuickRep1.printersettings.Printerindex:= d;

    이렇게 하면 될꺼 같은데
    도움이 될런지 모르겠습니다.
    즐퍼하세요
  • Profile
    이승근 2004.01.13 23:04

    프린트 이름이라면 혹 제어판-프린트 설정창에 나타난 이름을 말씀하시는 건가요... 그러타면 혹시 아래와 같이 했을때는 어떻게 되는거죠??
    "lq-1550H"라는 이름을 "거래명세표용"이라고 바꾸었을때 프린트이름이
    "거래명세표용"이 되는 겁니까???

    또 하나 if 조건이 참일때 d라는 변수에 해당 정수를 저장하고 그 변수를
    printerindex에 지정하시던데 d도 정수인가요??
    그리고 index를 지정한후에 프린트작업을 행하면 되는겁니까??
    또 프린트를 하고 나온후에 혹시 다시 원래값으로 되돌려줘야 하나요??

    갑작스레 질문이 많아졌네요...
    죄송스럽지만 한번만 더 답변을 부탁드립니다요^^
  • Profile
    ^ㅡ^ 2004.01.13 23:14



    많은 질문을 하셨네요 ...
    일단 님이 말씀하신 말대로 프린트 이름은 거래명세표용 이라고 했으면
    if문 안에서 그걸 찾으면 될꺼구요..
    d라는것도 마찬가지로 integer형이 되겠죠
    그리고 그냥 출력을 하면 되죠

    그리고 보통 프린트할