Dette er meget enkelt ... det betyder, at der ikke blev returneret nogen resultater fra din forespørgsel. Du skal altid kode defensivt og kontrollere, om Rows-arrayet har nogen elementer i det, før du prøver at indeksere det. Noget som:
if (dt.Rows.Count > 0)
soptype = dt.Rows[0]["SOPTYPE"].ToString();
else
somethingWentWrong();