Comments (4)
I manage to solve the circular reference.
When you invoke the finish
method of ExcelModel
add circular=True
. It invokes the method solve_circular
, that solves the cycles breaking the loops when it is possible.
from formulas.
@vinci1it2000 This error is hit when trying to compile a function for solve. Using your approach does fix the issue. I can include it in a PR I want to open this week which includes numerous bug fixes and added excel functions.
from formulas.
@vinci1it2000 When calling compile in excel.py to create the function what should be done with the circular tokens?
for k, v in sh.selector(dsp.data_nodes, res, allow_miss=True).items():
dsp.set_default_value(k, v.value)
That is failing when a CIRCULAR token is hit because v == XlError which doesn't have value
attribute. I tried just skipping CIRCULAR toknes completely (if(k != CIRCULAR)
) but my outputs were incorrect in that case, but it did come up with a solution. Should I special case CIRCULAR nodes when setting defaults before compiling the function?
EDIT: Actually the calculation is correct if CIRCULAR is just ignored when setting default. I will go with this for now.
from formulas.
CIRCULAR is a special data node that has a special default value ERR_CIRCULAR. There are other nodes that can have this value. So I suggest a more pythonic way:
for k, v in sh.selector(dsp.data_nodes, res, allow_miss=True).items():
try:
dsp.set_default_value(k, v.value)
except AttributeError:
pass
One question: What is the scope of setting the defaults values of the dispatcher? Probably I can help with the usage of schedula
.
from formulas.
Related Issues (20)
- Error found during using formula reference in range
- How to create a custom function that calls .xll file?
- Combination with IFERROR and VLOOKUP from another sheet does not return a correct value HOT 1
- How to define custom variable placeholder HOT 3
- Are tables implemented? HOT 7
- Not a valid formula for decimal numbers missing any digits before the decimal HOT 1
- Question: How to ignore invalid formula HOT 2
- Possible to implement TEXT() and VALUE() functions? HOT 1
- TypeError: got multiple values for argument HOT 1
- Regex doesn't match when sheet has a double quotation in its name ("). HOT 1
- Error in ExcelModel().loads(filename) - 'DefinedNameDict' object has no attribute 'definedName' (Python 3.9) HOT 6
- Accumulator / Stateful / async functions HOT 1
- Getting AttributeError: 'DefinedNameDict' object has no attribute 'definedName' error in xl_model = formulas.ExcelModel().loads(file_path).finish() HOT 3
- Custom error identifier HOT 2
- Help needed on Create Custom Function (FOR LOOP)
- Get one liner formula from graph node HOT 5
- General info HOT 1
- Slow Response in Excel Calculate Function with Entire Column Formulas HOT 1
- get_unused_node_id support removed for schedula package HOT 1
- Looking for an example of how to use the compile and dispatch pipe functionality
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from formulas.