Avatar billede anders_cp Nybegynder
10. marts 2009 - 16:10 Der er 1 løsning

com excel virker ikke på windows-server 2003

Hej
Jeg har lavet en excel-generator som virker fint lokalt på maskinen men ikke på webserveren (windows 2003 server).


Efter at have googlet mig frem så jeg at windows-serveren kræver at officepakken bliver installeret. Dette har jeg gjort (og brugte en licens på.... )


Jeg fik efterfølgende fejlen:
Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80070005

og læste:
http://blog.crowe.co.nz/archive/2006/03/02/589.aspx

Jeg har givet adgang for excel-mappen på serveren. Og fejlen er der ikke mere. Til gengæld for der ikke er nogen fejlmedd. popper excel-arket ikke frem. Kan nogen hjælpe mig med dette?


Kode:
using System.Reflection;
using Excel = Microsoft.Office.Interop.Excel;



        protected void LinkButtonExcel_Click(object sender, EventArgs e)
        {
            string deliveryadress = "jewaijofå";
            if (getUser().WareHouseID == 2)
                deliveryadress = "jweaoijf";
            else
                deliveryadress = "wefjwpefj";


            Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application();

            Microsoft.Office.Interop.Excel.Workbook xlWorkBook = null;
            Microsoft.Office.Interop.Excel.Worksheet xlWorkSheet = null;

            xlWorkBook = new Microsoft.Office.Interop.Excel.Application().Workbooks.Add(Missing.Value);

            xlWorkBook.Application.Visible = true;
            xlWorkSheet = (Microsoft.Office.Interop.Excel.Worksheet)xlWorkBook.ActiveSheet;
            xlWorkSheet.Cells[1, 1] = "Date";
            xlWorkSheet.Cells[1, 2] = "SP-No";
            xlWorkSheet.Cells[1, 3] = "PickUpAddress";
            xlWorkSheet.Cells[1, 4] = "SP-OrderNo";
            xlWorkSheet.Cells[1, 5] = "SP-reference";
            xlWorkSheet.Cells[1, 6] = "Weight";
            xlWorkSheet.Cells[1, 7] = "WorkOrderNo"; // theRow["Ordreref."]
            xlWorkSheet.Cells[1, 8] = "MaterialNo";
            xlWorkSheet.Cells[1, 9] = "Description";
            xlWorkSheet.Cells[1, 10] = "SerialNo";
            xlWorkSheet.Cells[1, 11] = "ReturnNo";
            xlWorkSheet.get_Range("A1", "K1").Font.Bold = true;
            xlWorkSheet.get_Range("A1", "K1").Interior.ColorIndex = 44;

            // Danish notation
            xlWorkSheet.get_Range("A2", "A200").Cells.NumberFormat = "åååå-MM-DD";
            // English notation         
            // xlWorkSheet.get_Range("A2", "A200").Cells.NumberFormat = "yyyy-MM-DD";
            xlWorkSheet.get_Range("G2", "G200").Cells.NumberFormat = "#"; // WorkOrdernumber Cells[i, 7]
            // DataSet dataset = GetPartReturnsByDatePhysicallyReturned(Convert.ToDateTime("2009-01-06"));
            DataSet dataset = GetPartReturnsByDatePhysicallyReturned(Convert.ToDateTime(Convert.ToDateTime(Date.Text)));
            int i = 2;
            foreach (DataRow theRow in dataset.Tables[0].Rows)
            {
                DateTime dt = Convert.ToDateTime(theRow["Date"]);

                xlWorkSheet.Cells[i, 1] = theRow["Date"];
                xlWorkSheet.Cells[i, 2] = "0011291297";
                xlWorkSheet.Cells[i, 3] = deliveryadress;
                xlWorkSheet.Cells[i, 4] = theRow["Ordrenr."];
                xlWorkSheet.Cells[i, 5] = theRow["SP-reference"];

                xlWorkSheet.Cells[i, 7] = theRow["Ordreref."]; // WorkOrdernumber - Vendorreferencenumber
                xlWorkSheet.Cells[i, 8] = theRow["Mat.nr."];
                xlWorkSheet.Cells[i, 9] = theRow["Varebesk."];
                xlWorkSheet.Cells[i, 10] = theRow["Serienr."];
                xlWorkSheet.Cells[i, 11] = theRow["Returnr."];

                i++;
            }

            // Autofit the columns
            xlWorkSheet.Columns.AutoFit();
        }
Avatar billede anders_cp Nybegynder
09. april 2011 - 18:50 #1
Ingen kommentarer. Jeg lukker.
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
Kurser inden for grundlæggende programmering

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