Index:9 size:9

0

Witajcie.
Mam do Was takie pytanko bo problem to raczej nie jest ponieważ go sobie rozwiązałem ale nie wiem czemu tak się dzieje. Wklejam poniżej fragment zapytania z przykładowymi zmiennymi:

....
CAST(dane.zmienna1 as VARCHAR(MAX)) as DANEzmienna1 ,
CAST(dane.zmienna2  as VARCHAR(MAX)) as DANEzmienna2 , 
CAST(dane.zmienna3  as VARCHAR) as DANEzmienna3 ,
CAST(dane.zmienna2  as VARCHAR) as DANEzmienna2 , 
....

Zapytanie na bazie się wykonuje bez żadnego problemu. Natomiast gdy wrzucę je w aplikację generującą raport i ją odpalę wywala komunikat: Inex: 9 size: 9. Jak pewnie zauważyliście pobieranie i rzutowanie zmiennej o nazwie zmienna2 wykonywane jest dwukrotnie i to jest powodem tego błędu ale wydaje mi się że nie powinien tan błąd wyskakiwać. Zmienna ta powinna zostać nadpisana. Zwłaszcza że tak jak mówię, na bazie zapytanie się wykonuje.

0

CAST(dane.zmienna1 AS VARCHAR(MAX)) AS DANEzmienna1 ,
CAST(dane.zmienna2 AS VARCHAR(MAX)) AS DANEzmienna2 ,
CAST(dane.zmienna3 AS VARCHAR) AS DANEzmienna3 ,
CAST(dane.zmienna2 AS VARCHAR) AS DANEzmienna4 ,

i po problemie

0

Ok, już wiem czemu tak się działo. Ponieważ w raporcie cvs który się ma generować zadeklarowałem 9 indeksów a pobierałem 10 indeksów ponieważ jedna zmienna była zdublowana i nie było dla niej miejsca. Dlatego po usunięciu tej zmiennej ilość zmiennych zadeklarowanych i pobieranych z bazy zgadza się i działa.

1 użytkowników online, w tym zalogowanych: 0, gości: 1