» »

[MS Office][Excel] Parameters are not allowed in queries that can't be displayed graphically

[MS Office][Excel] Parameters are not allowed in queries that can't be displayed graphically

MAX34216 ::

Pozdrav vsem mojstrom!

s sodelavcem poskušava iz neke baze potegniti vn podatke s queryjem (s parametri) preko excela... (odbc pa to vse štima...)

problem je sledeč; pojavi se napaka: "Parameters are not allowed in queries that can't be displayed graphically"

tole je query:
---------------------------------------------------------------------------------------------------------

SELECT MATE.REZERVA_3,MINIMUM=(TEHP.TEHPGOST*?),TEHP.TEHPGOST,MAXIMUM=(TEHP.TEHPGOST*?),TEHP.TEHPGOST,PROD_VOL=((TEHP.TEHPDOLZ*TEHP.TEHPSIRI*TEHP.TEHPDEBE)/1000000000),
FACIN_W=(TEHP.TEHPTEZK*1000),ADHESIVE=0,PIECES=TEHP.TEHPVPAK,PACKAGING=(TEHP.TEHPTEZF*1000),LINE=(CASE LEFT(MATE.MATECTRL,2)
WHEN 'G2' then 'NG-L1F'
WHEN 'G4' then 'NG-L1F'
WHEN 'G1' then 'NG-L1P'
WHEN 'G3' then 'NG-L1P'
WHEN 'G6' then 'NG-L1P'

ELSE ''
END )
FROM DBA.MATE MATE,DBA.TEHP TEHP
WHERE MATE.MATECTRL=TEHP.TEHPMATE AND LEFT(MATE.MATECTRL,1) IN ('G') AND (MATE.REZERVA_3 IS NOT NULL OR MATE.REZERVA_3< >'') AND MATE.REZERVA_3>1


------------------------------------------------------------------------------------------------------------------------------------

je mogoče komu kaj jasno iz tega, zakaj javi napako?
en drug podoben query na isti način pa dela...

vsaka pomoč je dobrodošla...

hvala
  • spremenilo: CCfly ()

mHook ::

Izgleda da parametri (TEHP.TEHPGOST*?) niso dovoljeni v poizvedbi.
Nadomesti parametre s konstanto ali poskusi z naslednjim pimerom:
DECLARE @k as int;
SET @k=96;
SELECT @k*@k FROM ime_tabele

A tisti drugi podoben query tudi uporablja parametre?

MAX34216 ::

ja, če nadomestim z neko konstanto, potem je ok...
samo kaj dejansko sploh pomeni ta napaka... to mi ni čisto nič jasno...

MAX34216 ::

ok, tist drugi query ki pa dela je sledeč:


SELECT MATE.MATECTRL, MATE.MATENAZI, MATE.komerc_naziv, Real_kg=Sum(dobp.real_kg), Real_M2=IsNull(Sum(dobp.real_kol*mate.matekvad),0), Real_M3=IsNull(Sum(dobp.real_kol*mate.matekuba),0), Real_SIT=Sum(DOBP.netto_vred*(t1.tecasred/t1.tecaosno)), Real_EUR=Sum(DOBP.netto_vred*(t1.tecasred/t1.tecaosno)/(TECA.tecasred/TECA.tecaosno)), MATE.MATEPOVC, MATE.matekuba, POPA.POPAIME1, doba.dobadatd, doba.dobatrgp, TRGI.trginazi, doba.dobakupc, LETO=YEAR(DOBA.DOBADATD)
FROM DBA.DOBA doba, DBA.DOBP dobp, DBA.MATE MATE, DBA.POPA POPA, DBA.TECA T1, DBA.TECA TECA, DBA.TRGI TRGI
WHERE doba.dobavrdk = dobp.dobpvrdo AND doba.dobaleto = dobp.dobpleto AND doba.dobastdo = dobp.dobpstdo AND T1.TECAVALU = dobp.dobpvalu AND T1.TECADATU = doba.dobadatd AND TECA.TECADATU = doba.dobadatd AND ((TECA.TECAVALU='EUR') AND (MATE.MATECTRL=dobp.dobpmate) AND (doba.dobakupc=POPA.popactrl) AND (doba.dobatrgp=TRGI.trgictrl And doba.dobatrgp=?) AND (doba.dobadatd>=? And doba.dobadatd< = ?))
GROUP BY MATE.MATECTRL, MATE.MATENAZI, MATE.komerc_naziv, MATE.MATEPOVC, MATE.matekuba, POPA.POPAIME1, doba.dobadatd, doba.dobatrgp, TRGI.trginazi, doba.dobakupc
ORDER BY 4 DESC


je mogoče problem v tem, da je lahko parameter klican samo pri WHERE in ne na začetku v SELECT kot imam to pri prvem queryju?

Pa še nekaj, mogoče kdo ve, če bi lahko in kako naredu tako prvi query, da bi tista dva podatka (dve cifri) dobil kar direkt iz excela iz dveh celic kateri bi določil in vanju vpisoval cifre. Bi query znal to pobrat?

Hvala


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[SQL] Pohitritev izpisa

Oddelek: Programiranje
252907 (1806) kuall
»

SQL poizvedba

Oddelek: Programiranje
152164 (1674) borchi
»

[SQL] Insert

Oddelek: Programiranje
252075 (1677) greentech
»

sql težava

Oddelek: Programiranje
61013 (852) icek
»

Kako do podatka v queryu iz VisualBasicScripta (VBA) v accessu?

Oddelek: Programiranje
112155 (2040) Fim

Več podobnih tem