Avatar billede dk_akj Nybegynder
23. marts 2008 - 16:31 Der er 4 kommentarer og
1 løsning

Brug af array oprettet i en if statement.

Hej,

Jeg skal oprette et array (custregid)som ikke kender størrelsen på inden en if statement et stykke inden i kodeafviklingen:

if (combobox_type.Text == "Kunde" || combobox_type.Text == "Produkt")
            {
                int selected;
                int num;

                selected = Convert.ToInt16(dw_cust.GetItemDecimal(1, "cbx_sum"));

                num = dw_cust.RowCount;

                int c = 0;
                int i;

                string[] custid = new string[selected];
                string[] custrecipe = new string[selected];

                //debtable_accountnumber
                //stocktable_itemnumber_1

                for (i = 1; i <= num; i++)
                {

                    if (dw_cust.GetItemDecimal(i, "cbx") == 1)
                    {

(i, "debtable_name");
                        custid[c] = dw_cust.GetItemString(i, "debtable_accountnumber");
                        custrecipe[c] = dw_cust.GetItemString(i, "stocktable_itemnumber_1");
                        c++;
                    }

                }

                if (combobox_type.Text == "Produkt")
                {
                    dw_cust_detail.Retrieve(custrecipe);
                }
                else
                {
                    cust_detailrows = dw_cust_detail.Retrieve(custid, custrecipe);
                }
               
                rows = dw_cust_detail.RowCount;
                int[] custregid = new int[rows];
                for (myrow = 1; myrow < rows + 1; myrow++)
                {
                    custregid[count] = Convert.ToInt32(dw_cust_detail.GetItemDecimal(myrow, "fib_batch_header_sample_id"));
                    count++;
                }

Sidst i min funktion skal jeg så bruge array igen men så får jeg følgende fejl:
The name 'custregid' does not exist in the current context.

Er det fordi den er declarered i en if statement ? Hvordan kommer jeg videre ?


//akj
Avatar billede erikjacobsen Ekspert
23. marts 2008 - 16:32 #1
Så erklærer du den i stedet for udenfor if-en.
Avatar billede dk_akj Nybegynder
23. marts 2008 - 16:34 #2
Det kan jeg bare ikke for der har jeg ikke størrelsen på array.

//akj
Avatar billede arne_v Ekspert
23. marts 2008 - 16:38 #3
Du kan godt:

int[] a = null;
if(something)
{
    a = new int[7];
}
else
{
    a = new int[3];
}
// brug a
Avatar billede dk_akj Nybegynder
23. marts 2008 - 18:30 #4
Det var lige det jeg skulle bruge.

1000 tak for det.

Et svar ??

//akj
Avatar billede arne_v Ekspert
05. maj 2008 - 05:45 #5
moi ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester