Avatar billede anders_cp Nybegynder
12. marts 2009 - 14:11 Der er 1 løsning

Generering af Excel virker ikke på windows 2003-server

Hej
Nedenstående kode virker fint lokalt på min maskine, men ikke på webserveren, Windows 2003 -server.

Efter at have googlet mig frem kunne jeg se at der ikke var anden vej udenom end at spille en licens på at

installere office-pakken på serveren. Efter dette var gjort fik jeg fejlen:
Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to

the following error: 80070005

Jeg gave efterfølgende rettigheder, som beskrevet i dette link:
http://blog.crowe.co.nz/archive/2006/03/02/589.aspx

Efterfølgende sker der nu nada, når jeg trykker på LinkButtonExcel-knappen.

Nogle forslag?



Kode:

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


protected void LinkButtonExcel_Click(object sender, EventArgs e)
{

    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(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"];// dt.ToString("yyyy/MM/dd").ToString();
          xlWorkSheet.Cells[i, 2] = "0011291297";// theRow[""];
          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:49 #1
Ingen response. 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
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