C#-based DLL, Excel 2007, 2010+ Toolbar/Add-in, Console Application and [Optional] Web Service for remote interaction with DLL
$2-30 USD / hour
Cancelado
Publicado hace alrededor de 12 años
$2-30 USD / hour
To provide the "skeleton" codebase for each deliverable so that algorithms may be added without requiring knowledge of creating the projects/solutions "from the ground up".
Highlights of the Deliverables:
? Excel 2010 Ribbon Changes - Custom Toolbar Group with complete VB or C# source code, executable (if needed?), and any/all required configuration files. Toolbar to contain Buttons and/or check boxes, etc., for selecting worksheet cell set(s), initiating processing [to be accomplished in DLL], saving preferences
? "Console" Process - used (in the absence of Excel) to provide the inputs & data for initiating processing within the DLL. Command-line launched with parameters to automatically carry-out desired operations.
? C# DLL - DLL to be called by Custom Toolbar (above) with complete C# source code and any/all build dependencies, and any/all configuration files.
? FUTURE: "Web Service" with Encrypted and non-encrypted connection options [if needed?]
## Deliverables
Deliverables:
? Excel 2010 Ribbon Changes - Custom Toolbar Group with complete VB or C# source code, executable (if needed?), and any/all required configuration files. Toolbar to house Buttons and/or drop-down menu items, for selecting worksheet cell set(s), initiating processing [to be accomplished in DLL], saving preferences
? "Console" Process - used (in the absence of Excel) to provide the inputs & data for initiating processing within the DLL. Command-line launched with parameters to automatically carry-out desired operations.
? C# DLL - DLL to be called by Custom Toolbar (above) with complete C# source code and any/all build dependencies, and any/all configuration files.
? FUTURE: "Web Service" with Encrypted and non-encrypted connection options [if needed?]
General Expectations:
? All code must be legible, well-formatted, and written in a logical manner
? Common naming conventions of code sections shall be used to improve understanding & readability
? Code projects/solutions shall use the base name of "PriResponse"
o Example: "PriResponse_setResults()"
? Method/interface/procedure names must not be cryptic or confusing
? Naming of code sections and button/dialog names should be obvious and easy to identify
? All code must be written to MINIMIZE overhead/processing consumed in sending/receiving data to the DLL and processing WITHIN the DLL
? Complete code shall be delivered along with all installation procedures, requirements, and dependencies (potentially an "Installer" feature will be needed for distribution of software)
Functionality:
? Excel Ribbon:
o Provide buttons for setting preferences and/or initiating processes within DLL
? Code should provide a minimum of components (so that quantities can be increased as needed)
? Minimum of (6) six buttons:
? "Preferences", Button to pop up user settings dialog
o Dialog to have four "check boxes" for enabling various DLL processing features
o Dialog to have a "slider" control & "linked" text box to set a value called "Reduction Factor" from 1 to 100 (integer numbers only)
o Provide "Apply" or "Cancel" buttons to apply preference changes or to cancel and close dialog
o User preferences should be saved to a file, or registry, or other location [please recommend] for later use of excel toolbar
? "Set Input", Button to set location(s) of INPUT cell set(s)*
? "Set Output", Button to set location(s) of 2nd set of INPUT_2 cell set(s)*
? "Set Result", Button to set location(s) of OUTPUT cell set(s)*
? "Calculate", Button to initiate PROCESSING (provided that INPUT/INPUT_2/RESULT location(s) are already set)
o Code should pass all cell sections (perhaps in form of Excel Ranges, etc.) to DLL via DLL method for processing and receipt of results back
? "Create Report", Button to initiate a report creation process that will pop-up windows to select:
o Set of cell set(s) * that contain the calculated data
o Set of cell set(s) * that contain any desired column labels
o Set of cell set(s) * that contain any desired row labels
*cell set(s) may be continuous and/or discontinuous sets of cells from single or multiple worksheets (within same workbook)
o Provide drop-down menu for setting preferences and/or initiating processes within DLL
o Provide check boxes to specify processing conditions
? Check box - with name "Bias 1"
? Check box - with name "Bias 2"
? Console app:
o Provide command-line flags/settings, etc. to initiate processing within the DLL
o All functionality, processing flags, etc shall be supported as if calls were coming from Excel Toolbar
? [OPTIONAL FUTURE COMPONENT] Web Service:
o Provide SSL and non-SSL encryption.
o Provide interface(s) for
? Setting and storing user preferences
? "Streaming" information from client to web-service for processing and results return
? Able to specify file name and location.
? DLL:
o Provides 100% (or as much as possible) of processing for supporting Ribbon-initiated and/or console-requested functions
o Ability to be called by "console" process or Excel-based Toolbar
o Has distinct purposes:
? [CONFIG] Provides an interface/method(s) to set processing conditions (i.e. - user preferences)
? [INPUT/OUTPUT]
? Provides a main "processing" interface/method(s) for ingesting the information/data sent from the Console-specified CSV file or other format(s), or via Excel-Toolbar declared worksheet/cell Range(s).
o CSV-based data:
? FROM: CSV-format file
? FROM: Fixed-Field text file
o Excel-based data:
? FROM: "live" excel application (currently running)
? Call from ribbon to pass [login to view URL](s) to DLL
? FROM: Excel file (all Excel file types: .xlsx & .xls extensions
? Ability to provide INPUT in one format and OUTPUT into another [i.e. IN: CSV, OUT: .xls]
? Input parameters include processing settings from the user preferences and/or check boxes, etc. on the Excel Toolbar as well as to specify how & where results are to be placed.
? Processing method(s) must create a copy of the data that is a List of continuous values
? Places "output" results set(s) back to calling process via one or more desired formats [i.e. - CSV file, Excel Range(s), etc.]
? Output format that is provided back to Excel via Excel Range(s) shall support alteration of *individual* cell formatting styles [i.e. - change fill color, text color, etc.] for each cell within the INPUT or RESULT cell set(s)
o DLL shall be able to accept input from and/or provide output to Excel as continuous/discontinuous cell set(s).
o DLL shall convert all input Excel Range(s) into a *continuous* List of the cell values along with a reference to the original cell location (row, column, sheet, workbook?) in order to "reconstruct" results sets to occupy a similar set of discontinuous cells in the INPUT or OUTPUT destination(s).
o DLL shall be written, constructed, and/or designed in such a way to provide MAXIMUM protection against exposing any of the logic/algorithms contained within the DLL. As such, method name(s) shall be generic and non-descriptive (although).