1

Konu: sütunları satırlara nasıl dönüştürebiliriz

grid üzerinde bilgiler girdiğim bir dosyadaki sütunları satırlara dönüştürmek istiyorum nasıl yapabilirim

Visual Fox Pro
*bu tabloyu

CREATE CURSOR crscizelge1 ( yy c(4),g1 n(4,1),g2 n(4,1),g3 n(4,1),g4 n(4,1),g5 n(4,1),g6 n(4,1),g7 n(4,1),g8 n(4,1),g9 n(4,1),g10 n(4,1),;
g11 n(4,1),g12 n(4,1),g13 n(4,1),g14 n(4,1),g15 n(4,1),g16 n(4,1),g17 n(4,1),g18 n(4,1),g19 n(4,1),g20 n(4,1),;
g21 n(4,1),g22 n(4,1),g23 n(4,1),g24 n(4,1),g25 n(4,1),g26 n(4,1),g27 n(4,1),g28 n(4,1),g29 n(4,1),g30 n(4,1),g31 n(4,1))
insert into crscizelge values ("A1",8,8,24,8,8,24,8,8,24,8,8,24,8,8,24,8,8,24,8,8,24,8,8,24,8,8,24,8,8,24,8)
insert into crscizelge values ("A2",24,24,24,8,8,24,8,8,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,21)
insert into crscizelge values ("A3",16,18,24,24,24,24,24,24,24,24,24,24,16,18,24,16,18,24,16,18,24,16,18,24,16,18,24,16,18,24,24)
 
*aşağıdaki gibiyapmak istiyorum
CREATE CURSOR crscizelge2( yy c(4),gun c(3),saat n(4,1))
 
insert into crscizelge2 values ("A1","G1",8)
insert into crscizelge2 values ("A1","G2",8)
insert into crscizelge2 values ("A1","G3",24)
insert into crscizelge2 values ("A2","G1",24)
insert into crscizelge2 values ("A2","G2",24)
insert into crscizelge2 values ("A2","G3",24)
insert into crscizelge2 values ("A3","G1",16)
insert into crscizelge2 values ("A3","G2",18)
insert into crscizelge2 values ("A3","G3",24)
***tün değerleri eklemedim formda çok yer tutmasın diye
Kader, beyaz kağıda sütle yazılmış yazı
Elindeyse beyazdan, gel de sıyır beyazı. (NFK)

2

Re: sütunları satırlara nasıl dönüştürebiliriz

galiba direk komut yok. Muhtemel onlarca çözümden biri  aşağıdaki olabilir (G1,G2 ve G3leri bulamadım)

Visual Fox Pro
SELECT * FROM crscizelge1 INTO array arrCizelge1

CREATE CURSOR crscizelge2( yy c(4),gun c(3),saat n(4,1))
FOR m.xi=1 TO ALEN(arrCizelge1,2)
  INSERT INTO crscizelge2 VALUES (arrCizelge1[1,m.xi],arrCizelge1[2,m.xi],arrCizelge1[3,m.xi])
ENDF
VFP9 SP2

3

Re: sütunları satırlara nasıl dönüştürebiliriz

çetin bey'in kodlarından benzerini bulmuştum ama onda da G1'i G01 olarak arıyor
değerleri ekliyor ama G1,G2 onları ekleyemedim

Visual Fox Pro
CREATE CURSOR crscizelge1 ( yy c(4),g1 n(4,1),g2 n(4,1),g3 n(4,1),g4 n(4,1),g5 n(4,1),g6 n(4,1),g7 n(4,1),g8 n(4,1),g9 n(4,1),g10 n(4,1),;

g11 n(4,1),g12 n(4,1),g13 n(4,1),g14 n(4,1),g15 n(4,1),g16 n(4,1),g17 n(4,1),g18 n(4,1),g19 n(4,1),g20 n(4,1),;
g21 n(4,1),g22 n(4,1),g23 n(4,1),g24 n(4,1),g25 n(4,1),g26 n(4,1),g27 n(4,1),g28 n(4,1),g29 n(4,1),g30 n(4,1),g31 n(4,1))
insert into crscizelge1 values ("A1",8,8,24,8,8,24,8,8,24,8,8,24,8,8,24,8,8,24,8,8,24,8,8,24,8,8,24,8,8,24,8)
insert into crscizelge1 values ("A2",24,24,24,8,8,24,8,8,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,21)
insert into crscizelge1 values ("A3",16,18,24,24,24,24,24,24,24,24,24,24,16,18,24,16,18,24,16,18,24,16,18,24,16,18,24,16,18,24,24)
CREATE CURSOR crscizelge2( yy c(4),gun c(3),saat n(4,1))
Local ix, lcAlanlar
    Local Array laData[1]
    For ix=1 To 31
      lcAlanlar = 'yy, '+;
        LTRIM(Str(m.ix))+','+;
        'G'+Padl(m.ix,2,'0')
      Select &lcAlanlar From crscizelge1 Into Array laData
      Insert Into crscizelge2 From Array laData
    Endfor
Kader, beyaz kağıda sütle yazılmış yazı
Elindeyse beyazdan, gel de sıyır beyazı. (NFK)

4

Re: sütunları satırlara nasıl dönüştürebiliriz

Visual Fox Pro
Create Cursor crscizelge2( yy c(4),gun c(3),saat N(4,1))

Local ix, lcAlan
Local Array laData[1]
For ix=1 To 31
    lcAlan = 'g'+Ltrim(Str(m.ix))
    Insert Into crscizelge2 (yy, gun, saat) ;
        select yy, m.lcAlan, &lcAlan From crsCizelge
Endfor

5 Son düzenleyen, ugurlu2001 (07.12.2012 19:33:46)

Re: sütunları satırlara nasıl dönüştürebiliriz

Tarık forumda CrossTab yada FastXtab olarak arama yaparsan bir çok örnek mevcut!

aynı aramayı google dan da yapabilirsin.

Xtab performans olarak Crosstab dan 10X daha iyi.

Uğur
-------------------------------------------------------------------------------------------------------------
Hayat bir bisiklete binmek gibidir. Pedalı çevirmeye devam ettiğiniz sürece düşmezsiniz. Claude Peppeer
Kusuru söylenmeyen adam, ayıbını hüner sanır.  Türk Atasözü

6

Re: sütunları satırlara nasıl dönüştürebiliriz

Çetin bey teşekkür ederim
uğur forumda ve diğer sitelerde aramıştım önceki  yazdığım kod Çetin beyin yazdığı bir kod lakin kendi isteğime uyarlayamamıştım smile
sağolsun üstad imdadıma yetişti.

Kader, beyaz kağıda sütle yazılmış yazı
Elindeyse beyazdan, gel de sıyır beyazı. (NFK)

7

Re: sütunları satırlara nasıl dönüştürebiliriz

peki sütunu satıra dönüştürdünüz tersi nasıl olucak ??? benimde o şekilde bir sıkıntım var

8 Son düzenleyen, tarik (25.12.2012 16:23:32)

Re: sütunları satırlara nasıl dönüştürebiliriz

http://www.fox4um.com/topic/248/kumulatif-toplam/
burada bir örnek var işine yarar umarım

Kader, beyaz kağıda sütle yazılmış yazı
Elindeyse beyazdan, gel de sıyır beyazı. (NFK)