grade na linha virar coluna
fala galera, trabalho com delphi xe7, tenho a seguinte situacao,
um form que tem as seguintes numeracoes de calçados, N33 , N34 , N35 , N36 , N37 , N38 , N39 ...ATE N47 ,IDITEM,
ai na grade vai ter as quantidade de cadas numeracao,
gostaria de um procedimento no banco(uso mysql) ou no delphi que hora que o cara desse um ok em um button, ele transformasse nisso
numero,qtde,item
if dm.sqlCaixaItem_dt.State in [dsinsert, dsEdit] then
begin
dm.sqlCaixaItem_dtITEM_QTDE.value := StrToFloat(edtTOTAL.Text);
dm.sqlCaixaItem_dtN33.value := StrToInt(edtN33.Text);
dm.sqlCaixaItem_dtN34.value := StrToInt(edtN34.Text);
dm.sqlCaixaItem_dtN35.value := StrToInt(edtN35.Text);
dm.sqlCaixaItem_dtN36.value := StrToInt(edtN36.Text);
dm.sqlCaixaItem_dtN37.value := StrToInt(edtN37.Text);
dm.sqlCaixaItem_dtN38.value := StrToInt(edtN38.Text);
dm.sqlCaixaItem_dtN39.value := StrToInt(edtN39.Text);
dm.sqlCaixaItem_dtN40.value := StrToInt(edtN40.Text);
dm.sqlCaixalItem_dtN41.value := StrToInt(edtN41.Text);
dm.sqlCaixaItem_dtN42.value := StrToInt(edtN42.Text);
dm.sqlCaixaItem_dtN43.value := StrToInt(edtN43.Text);
dm.sqlCaixaItem_dtN44.value := StrToInt(edtN44.Text);
dm.sqlCaixaItem_dtN45.value := StrToInt(edtN45.Text);
dm.sqlCaixaItem_dtN46.value := StrToInt(edtN46.Text);
dm.sqlCaixaItem_dt.post;
end;
um form que tem as seguintes numeracoes de calçados, N33 , N34 , N35 , N36 , N37 , N38 , N39 ...ATE N47 ,IDITEM,
ai na grade vai ter as quantidade de cadas numeracao,
gostaria de um procedimento no banco(uso mysql) ou no delphi que hora que o cara desse um ok em um button, ele transformasse nisso
numero,qtde,item
if dm.sqlCaixaItem_dt.State in [dsinsert, dsEdit] then
begin
dm.sqlCaixaItem_dtITEM_QTDE.value := StrToFloat(edtTOTAL.Text);
dm.sqlCaixaItem_dtN33.value := StrToInt(edtN33.Text);
dm.sqlCaixaItem_dtN34.value := StrToInt(edtN34.Text);
dm.sqlCaixaItem_dtN35.value := StrToInt(edtN35.Text);
dm.sqlCaixaItem_dtN36.value := StrToInt(edtN36.Text);
dm.sqlCaixaItem_dtN37.value := StrToInt(edtN37.Text);
dm.sqlCaixaItem_dtN38.value := StrToInt(edtN38.Text);
dm.sqlCaixaItem_dtN39.value := StrToInt(edtN39.Text);
dm.sqlCaixaItem_dtN40.value := StrToInt(edtN40.Text);
dm.sqlCaixalItem_dtN41.value := StrToInt(edtN41.Text);
dm.sqlCaixaItem_dtN42.value := StrToInt(edtN42.Text);
dm.sqlCaixaItem_dtN43.value := StrToInt(edtN43.Text);
dm.sqlCaixaItem_dtN44.value := StrToInt(edtN44.Text);
dm.sqlCaixaItem_dtN45.value := StrToInt(edtN45.Text);
dm.sqlCaixaItem_dtN46.value := StrToInt(edtN46.Text);
dm.sqlCaixaItem_dt.post;
end;
Paulo Castro
Curtidas 0
Melhor post
Bruno Pardim
30/09/2019
Iaew cara, se seu grid tiver uma origem de um select, você pode usar pivot no mysql para retornar suas linhas em colunas.
https://codingsight.com/pivot-tables-in-mysql/
https://codingsight.com/pivot-tables-in-mysql/
GOSTEI 1
Mais Respostas
Paulo Castro
28/09/2019
PENSEI EM ALGO DO TIPO
grade : array[33..46] of Integer;
//preenche parametros
grade[33] := StrToIntDef(edtN33.Text,0);
grade[34] := StrToIntDef(edtN34.Text,0);
grade[35] := StrToIntDef(edtN35.Text,0);
grade[36] := StrToIntDef(edtN36.Text,0);
grade[37] := StrToIntDef(edtN37.Text,0);
grade[38] := StrToIntDef(edtN38.Text,0);
grade[39] := StrToIntDef(edtN39.Text,0);
grade[40] := StrToIntDef(edtN40.Text,0);
grade[41] := StrToIntDef(edtN41.Text,0);
grade[42] := StrToIntDef(edtN42.Text,0);
grade[43] := StrToIntDef(edtN43.Text,0);
grade[44] := StrToIntDef(edtN44.Text,0);
grade[45] := StrToIntDef(edtN45.Text,0);
grade[46] := StrToIntDef(edtN46.Text,0);
for c := 0 to 13 do
qryInsert.Params[c].Value := grade[c+33];
grade : array[33..46] of Integer;
//preenche parametros
grade[33] := StrToIntDef(edtN33.Text,0);
grade[34] := StrToIntDef(edtN34.Text,0);
grade[35] := StrToIntDef(edtN35.Text,0);
grade[36] := StrToIntDef(edtN36.Text,0);
grade[37] := StrToIntDef(edtN37.Text,0);
grade[38] := StrToIntDef(edtN38.Text,0);
grade[39] := StrToIntDef(edtN39.Text,0);
grade[40] := StrToIntDef(edtN40.Text,0);
grade[41] := StrToIntDef(edtN41.Text,0);
grade[42] := StrToIntDef(edtN42.Text,0);
grade[43] := StrToIntDef(edtN43.Text,0);
grade[44] := StrToIntDef(edtN44.Text,0);
grade[45] := StrToIntDef(edtN45.Text,0);
grade[46] := StrToIntDef(edtN46.Text,0);
for c := 0 to 13 do
qryInsert.Params[c].Value := grade[c+33];
GOSTEI 0