Condividi tramite


3270 Problemi di stampa

Il flusso di dati 3270 non è stato progettato per i tipi di carattere proporzionali. Ciò può causare problemi in alcuni processi di stampa, causando la sovrapposizione dei caratteri. Le impostazioni avanzate della pagina Proprietà server di stampa consentono di configurare il servizio di stampa host in modo da utilizzare un metodo diverso di posizionamento dei caratteri.

Problemi relativi ai feed di moduli

Un problema comunemente riscontrato con il servizio di stampa host sono i form feed aggiuntivi o mancanti (FF). Alcuni di questi problemi implicano il modo in cui SNA Print gestisce i feed di moduli espliciti. Altri problemi si riferiscono all'uso del numero di righe per pagina, al posto di un carattere FF, per causare un'interruzione di pagina (feed di moduli).

Quando il servizio di stampa host riceve un carattere FF nel flusso di dati host ('0x0C'), contiene questo carattere finché non riceve dati aggiuntivi, ovvero codici di controllo (SCS o 3270 ordini) o caratteri stampabili. Se riceve dati aggiuntivi, il FF viene inviato alla stampante e i dati aggiuntivi vengono elaborati. Se non vengono ricevuti altri dati, ovvero siamo alla fine dell'attività, il FF viene eliminato. A questo punto, SNA Print completerà l'attività in sospeso chiamando EndDoc, per le sessioni che non usano un PDT, o EndDocPrinter, per le sessioni che usano un PDT. Quando viene chiamato EndDoc , alla fine del processo viene aggiunto un FF. Quando viene chiamato EndDocPrinter , non viene aggiunto alcun FF. In questo secondo caso, se SNA Print aggiunge un FF alla fine del processo dipende dalla configurazione del parametro END_JOB nel PDT. Un'alternativa all'uso del PDT consiste nel modificare il tipo di dati predefinito per il processore di stampa nelle proprietà della stampante Windows. Se il tipo di dati predefinito è impostato su RAW [auto FF], il driver di stampa verifica la presenza di un FF e ne aggiunge uno, se necessario.

È possibile forzare SNA Print a non eliminare il FF finale quando si usa un PDT. È necessario aggiungere la voce FlushFF del Registro di sistema e impostare su TRUE.

FlushFF:  REG_SZ   
   HKEY_LOCAL_MACHINE  
     SYSTEM  
       CurrentControlSet  
          Services  
             SnaPrint  
               Parameters  
  
FF alla fine del compito PDT Aggiunta di FF Risultati finali
No FF
No No FF
No (dipende da PDT)
No No (dipende da PDT)

Molti processi di stampa host meno recenti si basano sul numero di righe per pagina per determinare le interruzioni di pagina. Si supponga, ad esempio, che un processo usi 66 righe per pagina, quindi aggiungere righe vuote sufficienti dopo il testo per portare il numero totale di righe a 66 prima di iniziare il testo che deve trovarsi nella pagina successiva. Se ci fossero 30 righe di testo, verranno aggiunte 36 righe vuote prima del testo destinato alla pagina successiva. Lo svantaggio di questo metodo dipende dall'area stampabile della stampante, dalle linee per pollice, dalle linee per pagina e dal margine superiore impostato per il processo. Se per impostazione predefinita solo 65 righe verranno adattate per pagina, la stampa risultante mostrerà "page creep", dove l'ultima riga vuota viene inserita nella parte superiore della pagina successiva e quindi due righe nella parte superiore della terza pagina e così via. Questo "scorrimento di pagina" può essere risolto all'interno del file PDT impostando il parametro START_JOB affinché imposti il margine superiore su zero e le righe per pagina su 66. Inoltre, le proprietà Della sessione stampante devono avere le linee per pollice impostate su 6.

Ad esempio, con una stampante che usa HP PCL, al PDF verrà aggiunto quanto segue:

Nella sezione macro:

TOP    EQU 1B 26 6C 30 45    /* Top Margin set to 0 */  
STL    EQU 1B 26 6C 36 36 46        /* Set Text Length to 66 */  
  

Per Iniziare il lavoro

START_JOB = TOP0 STL  
  

Il servizio di stampa host è progettato per eseguire un feed di modulo (FF) incluso in un processo di stampa LU 3 quando viene soddisfatta una delle condizioni seguenti:

  • Se il FF viene inserito come primo carattere dopo il WCC in un comando 3270 Erase/Write o Erase/Write Alternate.

  • Se il FF si trova dopo un ordine NL (Nuova riga) valido.

  • Se l'FF si trova dopo la posizione dell'ultimo carattere stampabile di qualsiasi linea di stampa.

    È disponibile una voce del Registro di sistema che impone al servizio di stampa host di rispettare tutti i caratteri del feed di modulo in un processo di stampa LU 3, anche se non soddisfano le condizioni precedenti. Per aggiungere questa voce, trovare la chiave seguente usando Regedit.exe:

HKEY_LOCAL_MACHINE  
   SYSTEM  
    CurrentControlSet  
      Services  
        SnaPrint  
          Parameters  
  

Aggiungere la voce seguente a questa chiave:

Value Name:    
Data Type:    
String:    

DoAllLU3FFs deve essere impostato su TRUE. Il sistema verifica se questa voce del Registro di sistema esiste. Qualsiasi valore immesso per la stringa abiliterà questa funzionalità.