Exemplo n.º 1
0
def normalMathHandle(sheet, mathContent):
    nSheet = generateNumpyArray(sheet)
    print "come into normalMathHandle"
    print mathContent

    targetVarName = mathContent['targetVarName']
    expression = mathContent['expression']

    parser = Parser()
    expr = parser.parse(expression)
    allVarList = expr.variables()
    print allVarList
    varList = filterVarList(allVarList)
    print varList
    varDic = {}
    for var in varList:
        [res, colArr] = getNColumnByVarName(var, sheet, nSheet)
        if(False == res):
            return False, sheet
        else:
            print "colArr = ", var, " : ", colArr
            varDic[var] = colArr

            print varDic    

    newCol = parser.evaluate(expression, varDic)
    print "newCol : ", newCol

    appendSheetnewArr(targetVarName, sheet, newCol)

    newSheetJson =  json.dumps(sheet)


    return True, newSheetJson, ""
Exemplo n.º 2
0
def gyzsf_jiZhiFa(targetVarName, expression, argList, sheet, nSheet):
    print "execute gyzsf_jiZhiFa"
    print "targetVarName: ", targetVarName
    print "argList :", argList
    print "sheet: ", sheet
    print "nSheet :", nSheet

    verifyRes = verify(targetVarName, expression, argList, sheet, nSheet)
    if(False == verifyRes[0]):
        return False, sheet, verifyRes[1];


    [res, colArr] = getNColumnByVarName(argList[0], sheet, nSheet)
    if(False == res):
        return False, 0, "incorrect data source"
    else:
        print "colArr = ", var, " : ", colArr

    xib = getXib(colArr, argList[1])

    newCol = getNewColArr(colArr, argList[1], xib)

    print "newCol :", newCol

    appendSheetnewArr(targetVarName, sheet, newCol)

    return True, sheet, ""