Exemple #1
0
 def executePopulateDataSimple(
         msg: MessageInfo, wsHandler: tornado.websocket.WebSocketHandler):
     context = excel.RequestContext()
     context.customRequestExecutor = WebSocketRequestExecutor(
         msg.Id, wsHandler)
     exceldemolib.ExcelDemoLib.populateDataSmall(context)
     EchoSocketHandler.sendExecuteAtServerResultForRequestMessage(
         msg, wsHandler)
Exemple #2
0
 def executeCode(msg: MessageInfo,
                 wsHandler: tornado.websocket.WebSocketHandler):
     context = excel.RequestContext()
     context.customRequestExecutor = WebSocketRequestExecutor(
         msg.Id, wsHandler)
     # context.executionMode = runtime.RequestExecutionMode.instantSync
     exec(msg.Body)
     context.sync()
     EchoSocketHandler.sendExecuteAtServerResultForRequestMessage(
         msg, wsHandler)
Exemple #3
0
 def perfTest():
     rowCount = 100
     colCount = 20
     startTime = datetime.datetime.utcnow()
     for row in range(rowCount):
         for col in range(colCount):
             ctx = excel.RequestContext()
             r = ctx.workbook.worksheets.getItem("Sheet1").getCell(
                 row, col)
             r.values = (row + 1) * (col + 1)
             ctx.sync()
     endTime = datetime.datetime.utcnow()
     diff = endTime - startTime
     return diff.seconds * 1000 + diff.microseconds / 1000
if __name__ == "__main__":
    #copy file
    print("Setup demo")
    shutil.copyfile("blank.xlsx", "demo.xlsx")
    shutil.copyfile("blank.docx", "demo.docx")
    os.startfile("demo.xlsx")
    os.startfile("demo.docx")
    time.sleep(30)
    print("Start demo")
    #set context to excel
    requestUrlAndHeaders = runtime.RequestUrlAndHeaderInfo()
    # requestUrlAndHeaders.url = "http://localhost:8052";
    requestUrlAndHeaders.url = "pipe://./excel/_api"
    runtime.ClientRequestContext.defaultRequestUrlAndHeaders = requestUrlAndHeaders
    context = excel.RequestContext()
    print("Clear workbook")
    exceldemolib.ExcelDemoLib.clearWorkbook(context)
    print("Populating data")
    exceldemolib.ExcelDemoLib.populateData(context)
    print("Populated data")
    exceldemolib.ExcelDemoLib.analyzeData(context)
    print("Analyzed data")
    imageBase64 = exceldemolib.ExcelDemoLib.getChartImage(context)
    runtime.ClientRequestContext.defaultRequestUrlAndHeaders = None

    # switch context to word
    requestUrlAndHeaders = runtime.RequestUrlAndHeaderInfo()
    # requestUrlAndHeaders.url = "http://localhost:8054";
    requestUrlAndHeaders.url = "pipe://./word/_api"
    runtime.ClientRequestContext.defaultRequestUrlAndHeaders = requestUrlAndHeaders
Exemple #5
0
import runtime
import excel

context = excel.RequestContext("http://localhost:8052")
context.executionMode = runtime.RequestExecutionMode.instantSync