2009-02-26 29 views
0

Base SAS 8.1'de (OpenVMS) bir rapor üzerinde çalışıyorum. Gözlem başına 1 sayfanın olması gerekiyor ... aşağıdakine benzer. PROC PRINT veya PROC REPORT ile bunu nasıl yapacağınızı gösteren hiçbir şey bulamıyorum. Bunu PUT ifadesinden başka bir yolu var mı? Modül yükseltme veya ekleme maalesef bir seçenek değildir. Herhangi bir yardım takdir edilir.Bir tablo düzeninde OLMAYAN Base SAS'da bir rapor oluşturma

Başlığı Metni Gözlem kimliği 1

Satır 1 metin ---------------- değişken 1

Satır 2 metin --------- ------- değişken 2

Satır 3 metin ---------------- değişken 3

--page mola -

Başlığı metni Gözlem kimliği 2

Satır 1 metin ---------------- değişken 1

Satır 2 metin ---------------- değişken 2

Satır 3 metin ---------------- değişken 3

--page mola - Eğer gözlem sayısına göre veri kümesi devrik Eğer

cevap

5

ardından proc report can sorun olmadan halledin. hth.

/* test data -- each obs is identified by obsId */ 
data class; 
    set sashelp.class; 
    obsId = _n_; 
run; 

/* transpose the data */ 
proc transpose 
    data=class 
    out=report(rename=(_name_=var col1=value)); 
    var _all_; 
    by obsId; 
run; 

/* change the varaible name into "Line 1 text ..." */ 
data report; 
    drop line cLine dashes; 
    length var cLine $30; 
    dashes = repeat("-", 20-1); 
    /* usual DoW */ 
    do line = 1 by 1 until (last.obsId); 
    set report; 
    by obsId; 
    cLine = put(line, best.-l); 
    var = "Line "||trim(cline)||" text "||dashes; 
    output; 
    end; 
run; 

/* print out one obs per page */ 
options nocenter; 
proc report data=report nowd; 
    column obsId var value; 
    define obsId/" " group noprint; 
    define var/" " display left; 
    define value/" " display left; 
    break after obsId/page; 
    compute before obsId; 
    id = put(obsId, best.-l); 
    len = length(id); 
    line @2 "Header Text Observation Id " iD $varying. len; 
    line " "; 
    endcomp; 
run; 

/* on lst, in part. 
Header Text Observation Id 1 

Line 1 text ------------------ Alfred 
Line 2 text ------------------ M 
Line 3 text ------------------   14 
Line 4 text ------------------   69 
Line 5 text ------------------   112.5 
Line 6 text ------------------    1 

(new page) 
Header Text Observation Id 2 

Line 1 text ------------------ Alice 
Line 2 text ------------------ F 
Line 3 text ------------------   13 
Line 4 text ------------------   56.5 
Line 5 text ------------------   84 
Line 6 text ------------------    2 

(new page) 
... 
*/ 
+0

Teşekkürler. Bunu kontrol edeceğim. Daha önce hiç trans vermedim. –

İlgili konular