Hello,

Maybe it is out of topic but what can I suggest if users like excel so
much....

I always use Office Web Components XP
(http://www.microsoft.com/downloads/details.aspx?FamilyID=982B0359-0A86-4FB2-A7EE-5F3A499515DD&displaylang=en)
because many of them have only Office XP even nowadays ;)

In intranet company web server I create virtual dir OWC and then I
store file owc10.exe - office web components executable.

In web application I have script spreadsheet.js with code

document.write('<OBJECT id="mainSpreadsheet" style="WIDTH: 100%;
HEIGHT: 100%" codeBase="../owc/owc10.exe"
classid="clsid:0002E541-0000-0000-C000-000000000046" VIEWASTEXT>');
document.write('<PARAM NAME="DataType" VALUE="XMLDATA">');
document.write('<PARAM NAME="AllowPropertyToolbox" VALUE="-1">');
document.write('<PARAM NAME="AutoFit" VALUE="0">');
document.write('<PARAM NAME="Calculation" VALUE="-4105">');
document.write('<PARAM NAME="Caption" VALUE="Microsoft Office
Spreadsheet">');
document.write('<PARAM NAME="DisplayColumnHeadings" VALUE="-1">');
document.write('<PARAM NAME="DisplayGridlines" VALUE="-1">');
document.write('<PARAM NAME="DisplayHorizontalScrollBar" VALUE="-1">');
document.write('<PARAM NAME="DisplayOfficeLogo" VALUE="-1">');
document.write('<PARAM NAME="DisplayPropertyToolbox" VALUE="0">');
document.write('<PARAM NAME="DisplayRowHeadings" VALUE="-1">');
document.write('<PARAM NAME="DisplayTitleBar" VALUE="0">');
document.write('<PARAM NAME="DisplayToolbar" VALUE="-1">');
document.write('<PARAM NAME="DisplayVerticalScrollBar" VALUE="-1">');
document.write('<PARAM NAME="DisplayWorkbookTabs" VALUE="-1">');
document.write('<PARAM NAME="EnableEvents" VALUE="-1">');
document.write('<PARAM NAME="MaxHeight" VALUE="80%">');
document.write('<PARAM NAME="MaxWidth" VALUE="80%">');
document.write('<PARAM NAME="MoveAfterReturn" VALUE="-1">');
document.write('<PARAM NAME="MoveAfterReturnDirection"
VALUE="-4121">');
document.write('<PARAM NAME="RightToLeft" VALUE="0">');
document.write('<PARAM NAME="ScreenUpdating" VALUE="-1">');
document.write('<PARAM NAME="EnableUndo" VALUE="-1">');
document.write('</OBJECT>');

and in the page I have

<table height="100%" cellSpacing="0" cellPadding="0" width="100%">
<tr>
<td>
<script src="script/spreadsheet.js"></script>
</td>
</tr>
</table>

ActiveX IE activation fix ;)

in another javascript file I have function which handles click event on
some button

function getSomeDataTable(){
               document.body.style.cursor='wait';
        SomeNamespace.Methods.GetSomeDataTable(getSomeDataTableCallback);
}

on server side
there is class Methods with

[AjaxMethod]
public DataTable GetSomeDataTable()

the code in this method is trivial so I don't write it here.

Now in script a have function

function getAgregatesCallback(res){
        if(res.error){
                alert(res.error.Message);
        }
        else {
                var spr = document.getElementById("mainSpreadsheet");
                spr.Range("A1").Value = "ID";
                spr.Range("B1").Value = "Name";
                var tbl = res.value;
                var lnt = Math.min(tbl.Rows.length, 65535);
                if(tbl.Rows.length>lnt){
                        alert("Too much data");
                }
                for(var i=0;i<lnt;i++){
                        var r = tbl.Rows[i];
                        spr.Range("A"+(i+2).toString()).Value = r.ID;
                        spr.Range("B"+(i+2).toString()).Value = r.Name;
                }
        }
        document.body.style.cursor='default';
}

Thats all!
The real trick is that in the same way you can specify for example
versioned formulas from db into some cells.
Power of web spreadsheet ;)

Best regards

AdaskoTheBeAsT


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Ajax.NET Professional" group.

To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]

For more options, visit this group at http://groups.google.com/group/ajaxpro

The latest downloads of Ajax.NET Professional can be found at 
http://www.ajaxpro.info/

Don't forget to read my blog at http://weblogs.asp.net/mschwarz/
-~----------~----~----~----~------~----~------~--~---

Reply via email to