Grant administration system
10304064 ยท 2019-05-28
Assignee
Inventors
Cpc classification
International classification
Abstract
A method and system are disclosed for facilitating the completion of a questionnaire. A storage medium stores a plurality of questions and associated answers. Similar questions are linked. An interface presents to a user through a computer network a presented question as part of a questionnaire to be completed. The interface also presents to the user answers associated with similar questions linked to the presented question. Upon user selection, an answer to a similar question is stored as an answer to the selected question. The user may modify the answer. The method and system may present additional questions and answers associated with similar questions linked to the additional question. A user may have access to stored questions, add questions, and link similar questions. Answers to questions may be stored before the user completes the questionnaire. The questionnaire may include fields populated with information previously supplied by the user without user selection. The storage medium may be a database.
Claims
1. A method of reusing answers from prior forms to complete a computerized form for generating a response to a request for a grant proposal in a grant administration system, the method comprising: storing a plurality of previously-answered questions from multiple asker organizations and previously-entered answers from multiple responder organizations corresponding to the previously answered questions in a centralized storage medium available for access to both asker and responder organizations; securely facilitating simultaneous communication between said asker and responder organizations to allow multi-party addition of information; operatively connecting the centralized storage medium to a login module; wherein a previously-answered question and previously-entered answer from a prior proposal are stored as a question/answer pair; wherein said previously-answered questions and previously-entered answers and information pertaining to said previously-answered questions and previously-entered answers are accessible to a responding user; presenting a question to the responding user associated with an organization, wherein the question is part of a form to be completed, wherein said form is capable of being generated by the responding user and/or by an asker; identifying a previously-answered question deemed similar to a current question; increasingly identifying more questions as similar to each other; updating an interactive database; providing a template tool that provides the responding user the ability to reuse at least a portion of an answer to a previously-answered question and allowing both the asker and the responder to reuse questions from other askers; allowing both the responding user and a user at an asker organization to add a new question thereby adding information to the database; allowing a tag to be applied to the question being presented and/or entered, wherein the tag links similar questions to be available to both the asker and the responding user; using the template tool to search the centralized storage medium to locate static question/answer pairs having one or more tags in common with the question being presented and/or entered wherein the tags were applied by the responding user; presenting a list of static question/answer pairs that have one or more tags in common with the question being presented and/or entered; allowing the responding user to select one of the previously-entered answers associated with a selected question/answer pair as a response to the question being presented and/or entered; generating a new answer to the question being presented and/or entered which comprises at least a portion of said selected previously-entered answer for generating a response to a request for a new grant proposal unrelated to the prior proposal; updating the centralized storage medium to add the question being presented and/or entered and the new generated answer prior to the responding user submitting said form; and associating the new generated answer with the question being presented and/or entered to generate a new static question/answer pair.
2. The method of claim 1, wherein the previously-entered answers comprise a prose discussion of goals, accomplishments, organizational information, challenges, success stories, and/or numeric information about activities, outcomes, funding sources, people served and/or budget information.
3. The method of claim 1, further comprising storing the question being presented and the response to the question being presented in the centralized storage medium when the responding user saves the response.
4. The method of claim 1, wherein responding users of multiple organizations complete the computerized form.
5. The method of claim 1, wherein a user at a responder organization and a user at an asker organization are allowed to add information to the database that relates to a different asker organization.
6. The method of claim 1, wherein the tag is applied by a database operator.
7. An apparatus for reusing answers from a prior form to complete a computerized form for generating a response to a request for a grant proposal, the apparatus being part of a grant administration system, and comprising: a centralized storage medium comprising a plurality of previously-answered questions from multiple asker organizations and previously-entered answers from multiple responder organizations corresponding to the previously-answered questions from a prior proposal available for access to both asker and responder organizations to allow multi-party addition of information, wherein the previously-entered answers were entered by a responding user associated with an organization, wherein said previously-answered questions and previously-entered answers and information pertaining to said previously-answered questions and previously-entered answers are accessible to the responding user, wherein the previously-answered question and previously-entered answer are stored as a static question/answer pair in the centralized storage medium which securely facilitates simultaneous communication between said asker and responder organizations, and wherein the centralized storage medium is operatively connected to a login module; and a computer network interface connected to the centralized storage medium, wherein the computer network interface is operable to: (a) present a question to the responding user associated with an organization, wherein the question is part of a form to be completed, wherein said form is capable of being generated by the responding user and/or an asker and identifying a previously-answered question deemed similar to a current question; (b) increasingly identify more questions as similar to each other and update an interactive database by providing a template tool that provides the responding user the ability to reuse at least a portion of an answer to a previously-answered question and allowing both the asker and the responder to reuse questions from other askers; (c) allow both the responding user and a user at an asker organization to add a new question thereby adding information to the database; (d) allow a tag to be applied to the question being presented and/or entered, wherein the tag links similar questions to be available to both the asker and the responding user, (e) using the template tool to search the centralized storage medium to locate static question/answer pairs that have one or more tags in common with the question being presented and/or entered, (f) present the responding user with a list of question/answer pairs that have one or more tags in common with the question being presented and/or entered, (g) allow the responding user to select one of the previously-entered answers associated with a selected question/answer pair as a response to the question being presented and/or entered, (h) generate a new answer to the question being presented and/or entered using at least a portion of said selected previously-entered answer to generate a response to a request for a new grant proposal unrelated to the prior proposal, and (i) update the centralized storage medium to add said generated answer prior to the responding user submitting said form; and (j) associate the new generated answer with the question being presented and/or entered to generate a new static question/answer pair.
8. The apparatus of claim 7, wherein the previously-entered answers comprise a prose discussion of goals, accomplishments, organizational information, challenges, success stories, and/or numeric information about activities, outcomes, funding sources, people served and/or budget information.
9. The apparatus of claim 7, wherein the computer network interface is operable to store the question being presented and the selected response in the centralized storage medium when the responding user saves the response.
10. The apparatus of claim 7, wherein responding users of multiple organizations complete the computerized form.
11. A method of reusing answers from prior forms for generating a grant report in a grant administration system, the method comprising: storing a plurality of previously-answered questions from multiple asker organizations and previously-entered answers from multiple responder organizations corresponding to the previously answered questions from a prior proposal in a centralized storage medium available for access to both asker and responder organizations, wherein said previously-answered questions and previously-entered answers and information pertaining to said previously-answered questions and previously-entered answers are accessible to a responding user, wherein a previously-answered question and previously-entered answer are stored as a static question/answer pair in the centralized storage medium; securely facilitating simultaneous communication between said asker and responder organizations to allow multi-party addition of information; operatively connecting the centralized storage medium to a login module; presenting a question to the responding user associated, wherein the question is part of a form to be generated, wherein said form is capable of being generated by the responding user and/or an asker; identifying a previously-answered question deemed similar to a current question; increasingly identifying more questions as similar to each other; updating an interactive database by providing a template tool that provides the responding user the ability to reuse at least a portion of an answer to a previously-answered question and allowing both the asker and the responder to reuse questions from other askers; allowing both the responding user and a user at an asker organization to add a new question thereby adding information to the database; allowing a tag to be applied to the question being presented and/or entered, wherein the tag links similar questions to be available to both the asker and the responding user; using the template tool to search the centralized storage medium to locate static question/answer pairs having one or more tags in common with the question being presented and/or entered, wherein the tags were applied by the responding user; presenting a list of question/answer pairs that have one or more tags in common with the question being presented and/or entered; allowing the responding user to select one of the previously-entered answers associated with a selected question/answer pair as a response to the question being presented and/or entered; generating a new answer to the question being presented and/or entered which comprises at least a portion of said selected previously-entered answer for generating a form; updating the centralized storage medium to add the question being presented and/or entered and the new generated answer prior to the responding user submitting said form; and associating the new generated answer with the question being presented and/or entered to generate a new static question/answer pair unrelated to the prior proposal.
12. The method of claim 11, wherein the previously-entered answers comprise a prose discussion of goals, accomplishments, organizational information, challenges, success stories, and/or numeric information about activities, outcomes, funding sources, people served and/or budget information.
13. The method of claim 11, further comprising storing the question being presented and the response to the question being presented in the centralized storage medium when the responding user saves the response.
14. The method of claim 11, wherein responding users of multiple organizations complete the computerized form.
15. An apparatus for reusing answers from a prior form to generate a form, the apparatus being part of a grant administration system, and comprising: a centralized storage medium comprising a plurality of previously-answered questions from multiple asker organizations and previously-entered answers from multiple responder organizations corresponding to the previously-answered questions from a prior proposal available for access to both asker and responder organizations, that securely facilitates simultaneous communication between said asker and responder organizations to allow multi-party addition of information, wherein the previously-entered answers were entered by a responding user associated with an organization, wherein said previously-answered questions and previously-entered answers and information pertaining to said previously-answered questions and previously-entered answers are accessible to the responding user, wherein the previously-answered question and previously-entered answer are stored as a static question/answer pair, and wherein the centralized storage medium is operatively connected to a login module; and a computer network interface connected to the centralized storage medium, wherein the computer network interface is operable to: (a) present a question to the responding user, wherein the question is part of a to be generated, wherein said form is capable of being generated by the responding user and/or an asker and identifying a previously-answered question deemed similar to a current question; (b) increasingly identify more questions as similar to each other and update an interactive database by providing a template tool that provides the responding user the ability to reuse at least a portion of an answer to a previously-answered question, add a new question and allowing both the asker and the responder to reuse questions from other askers, thereby adding information to the database; (c) allow a tag to be applied to the question being presented and/or entered, wherein the tag links similar questions to be available to both the asker and the responding user, (d) using the template tool to search the centralized storage medium to locate static question/answer pairs that have one or more tags in common with the question being presented and/or entered, (e) present the responding user with a list of question/answer pairs that have one or more tags in common with the question being presented and/or entered, (f) allow the responding user to select one of the previously-entered answers associated with a selected question/answer pair as a response to the question being presented and/or entered, (g) generate a new answer to the question being presented using at least a portion of said selected previously-entered answer to generate a response to a request for a grant, (h) update the centralized storage medium to add said generated answer prior to the responding user submitting said form; and (i) associate the new generated answer with the question being presented to generate a new static question/answer pair unrelated to the prior proposal.
16. The apparatus of claim 15, wherein the form comprises a grant report.
17. The apparatus of claim 15, wherein the previously-entered answers comprise a prose discussion of goals, accomplishments, organizational information, challenges, success stories, and/or numeric information about activities, outcomes, funding sources, people served and/or budget information.
18. The apparatus of claim 15, wherein the computer network interface is operable to store the question being presented and the selected response in the centralized storage medium when the responding user saves the response.
19. The apparatus of claim 15, wherein responding users of multiple organizations complete the computerized form.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) The present invention is further described in the detailed description which follows, in reference to the noted plurality of drawings by way of non-limiting examples of certain embodiments of the present invention, in which like numerals represent like elements throughout the several views of the drawings listed below.
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
(19)
(20)
(21)
(22)
(23)
(24)
(25)
(26)
(27)
(28)
(29)
(30)
(31)
(32)
(33)
(34)
(35)
(36)
(37)
(38)
(39)
(40)
(41)
(42)
(43)
(44)
(45)
(46)
(47)
(48)
(49)
(50)
(51)
(52)
(53)
DETAILED DESCRIPTION
(54) The particulars shown herein are by way of example and for purposes of illustrative discussion of the embodiments of the present invention only and are presented in the cause of providing what is believed to be the most useful and readily understood description of the principles and conceptual aspects of the present invention. In this regard, no attempt is made to show structural details of the present invention in more detail than is necessary for the fundamental understanding of the present invention, the description taken with the drawings making apparent to those skilled in the art how the several forms of the present invention may be embodied in practice.
(55) The grant administration system is a customizable online reporting and proposal tool which allows foundations to ask questions unique to their reporting processes. It also identifies common information (contact information, financials, etc.) so that information only has to be entered once by the nonprofit organization, regardless of the number of proposals and reports it submits, thereby reducing the burden of preparing these repetitive reports. Resources not devoted to grants administration can then be redirected toward programming, ultimately increasing both the nonprofit's and the foundation's social impact.
(56) The grant administration system includes a software tool that facilitates the requesting, provision, and sharing of information between two or more parties. The system allows for a many-to-many relationship, wherein multiple grantor organizations and multiple grantee organizations can communicate with each other.
(57) The grant administration system includes a database that allows for reuse of previously-entered information. Grant administration primarily centers on preparing proposals and reports about the grant as well as tracking information about the grant. The reports are typically submitted on a regular basis, such as quarterly. Generally the questions and answers to these proposals and reports are repetitive. The grant administration system allows grantee users to reuse a portion or of all of an answer to a previously answered question that is the same as or similar to the currently presented question. This preferably is done for any question having relatively complex information, such as a prose discussion of goals or accomplishments in a reporting period or budget information. Some simple fields may be pre-populated without being linked to similar questions, such as a date of a questionnaire or the name and address of a grantee. It therefore reduces the burden on the grantee user of preparing these proposals and reports by being able to reuse responses to previously answered questions that are similar to questions in the report they are preparing. The same or similar questions stored in the database are identified by a database operator using tags. Alternately, grantees may be given access to add questions, search for and identify similar questions, and link similar questions similarly to the way a database operator would. The answers to these questions are linked respectively with the tagged questions and can be accessed by a grantee for reuse in completing reports to grantors. Alternately, users may be given an interface to update the database with links among similar questions. The database preferably may be updated in near real time so that answers may be added to the database before a grantee actually completes and submits a questionnaire to a grantor. Answers and links may be stored in other manner than a centralized database, such as in storage capacity at the grantee or grantor location or in an XML file.
(58) The grant administration system includes a grantee module where grantee organizations can view and manage grants made by grantor organizations. The grant administration system includes a grantor module where grantor organizations can view and manage grants made to grantee organizations.
(59) The various techniques, methods, and systems described above can be implemented in part or in whole using computer-based systems and methods. Additionally, computer-based systems and methods can be used to augment or enhance the functionality described above, increase the speed at which the functions can be performed, and provide additional features and aspects as a part of or in addition to those described elsewhere in this document. Various computer-based systems, methods and implementations in accordance with the above-described technology are presented below.
(60) In one implementation, a general-purpose computer may have an internal or external memory for storing data and programs such as an operating system (e.g., DOS, Windows 2000, Windows XP, Windows NT, OS/2, UNIX or Linux) and one or more application programs. Examples of application programs include computer programs implementing the techniques described herein, authoring applications (e.g., word processing programs, database programs, spreadsheet programs, or graphics programs) capable of generating documents or other electronic content; client applications (e.g., an Internet Service Provider (ISP) client, an e-mail client, or an instant messaging (IM) client) capable of communicating with other computer users, accessing various computer resources, and viewing, creating, or otherwise manipulating electronic content; and browser applications (e.g., Microsoft's Internet Explorer) capable of rendering standard Internet content and other content formatted according to standard protocols such as the Hypertext Transfer Protocol (HTTP).
(61) One or more of the application programs may be installed on the internal or external storage of the general-purpose computer. Alternatively, in another implementation, application programs may be externally stored in and/or performed by one or more device(s) external to the general-purpose computer.
(62) The general-purpose computer includes a central processing unit (CPU) for executing instructions in response to commands, and a communication device for sending and receiving data. One example of the communication device is a modem. Other examples include a transceiver, a communication card, a satellite dish, an antenna, a network adapter, or some other mechanism capable of transmitting and receiving data over a communications link through a wired or wireless data pathway.
(63) The general-purpose computer may include an input/output interface that enables wired or wireless connection to various peripheral devices. Examples of peripheral devices include, but are not limited to, a mouse, a mobile phone, a personal digital assistant (PDA), a keyboard, a display monitor with or without a touch screen input, and an audiovisual input device. In another implementation, the peripheral devices may themselves include the functionality of the general-purpose computer. For example, the mobile phone or the PDA may include computing and networking capabilities and function as a general purpose computer by accessing the delivery network and communicating with other computer systems. Examples of a delivery network include the Internet, the World Wide Web, WANs, LANs, analog or digital wired and wireless telephone networks (e.g., Public Switched Telephone Network (PSTN), Integrated Services Digital Network (ISDN), and Digital Subscriber Line (xDSL)), radio, television, cable, or satellite systems, and other delivery mechanisms for carrying data. A communications link may include communication pathways that enable communications through one or more delivery networks.
(64) In one implementation, a processor-based system (e.g., a general-purpose computer) can include a main memory, preferably random access memory (RAM), and can also include a secondary memory. The secondary memory can include, for example, a hard disk drive and/or a removable storage drive, representing a floppy disk drive, a magnetic tape drive, an optical disk drive, etc. The removable storage drive reads from and/or writes to a removable storage medium. A removable storage medium can include a floppy disk, magnetic tape, optical disk, etc., which can be removed from the storage drive used to perform read and write operations. As will be appreciated, the removable storage medium can include computer software and/or data.
(65) In alternative embodiments, the secondary memory may include other similar means for allowing computer programs or other instructions to be loaded into a computer system. Such means can include, for example, a removable storage unit and an interface. Examples of such can include a program cartridge and cartridge interface (such as the found in video game devices), a removable memory chip (such as an EPROM or PROM) and associated socket, and other removable storage units and interfaces, which allow software and data to be transferred from the removable storage unit to the computer system.
(66) In one embodiment, the computer system can also include a communications interface that allows software and data to be transferred between computer system and external devices. Examples of communications interfaces can include a modem, a network interface, (such as, for example, an Ethernet card), a communications port, and a PCMCIA slot and card. Software and data transferred via a communications interface are in the form of signals, which can be electronic, electromagnetic, optical or other signals capable of being received by a communications interface. These signals are provided to communications interface via a channel capable of carrying signals and can be implemented using a wireless medium, wire or cable, fiber optics or other communications medium. Some examples of a channel can include a phone line, a cellular phone link, an RF link, a network interface, and other suitable communications channels.
(67) In this document, the terms computer program medium and computer usable medium are generally used to refer to media such as a removable storage device, a disk capable of installation in a disk drive, and signals on a channel. These computer program products provide software or program instructions to a computer system.
(68) Computer programs (also called computer control logic) are stored in the main memory and/or secondary memory. Computer programs can also be received via a communications interface. Such computer programs, when executed, enable the computer system to perform the features as discussed herein. In particular, the computer programs, when executed, enable the processor to perform the described techniques. Accordingly, such computer programs represent controllers of the computer system.
(69) In an embodiment where the elements are implemented using software, the software may be stored in, or transmitted via, a computer program product and loaded into a computer system using, for example, a removable storage drive, hard drive or communications interface. The control logic (software), when executed by the processor, causes the processor to perform the functions of the techniques described herein.
(70) In another embodiment, the elements are implemented primarily in hardware using, for example, hardware components such as PAL (Programmable Array Logic) devices, application specific integrated circuits (ASICs), or other suitable hardware components. Implementation of a hardware state machine so as to perform the functions described herein will be apparent to a person skilled in the relevant art(s). In yet another embodiment, elements are implanted using a combination of both hardware and software.
(71) In another embodiment, the computer-based methods can be accessed or implemented over the World Wide Web by providing access via a Web page to the methods described herein. Accordingly, the Web page is identified by a Universal Resource Locator (URL). The URL denotes both the server and the particular file or page on the server. In this embodiment, it is envisioned that a client computer system interacts with a browser to select a particular URL, which in turn causes the browser to send a request for that URL or page to the server identified in the URL. Typically the server responds to the request by retrieving the requested page and transmitting the data for that page back to the requesting client computer system (the client/server interaction is typically performed in accordance with the hypertext transport protocol (HTTP)). The selected page is then displayed to the user on the client's display screen. The client may then cause the server containing a computer program to launch an application to, for example, perform an analysis according to the described techniques. In another implementation, the server may download an application to be run on the client to perform an analysis according to the described techniques.
(72) Referring to the figures by characters of reference,
(73) System 10 includes a Graphical User Interface (GUI) (not shown) allowing the grantor or grantee users to access a login software module 18 that directs them respectively to a grantor software module 22 or a grantee software module 20 illustrated in
(74)
(75) Grantee Module 20 includes a home screen 24, a funder screen 26, a grants screen 28, a proposals screen 30, a reports screen 32, a templates screen 34, and a document library 36. Home screen 24 provides a grantee user an overview of grant information. Funder screen 26 allows the grantee user to view and manage grantor organizations 16, which are also referred to as Funders. Grants screen 28 allows the grantee user to view and manage grant information. Proposals screen 30 allows a grantee user to generate a grant proposal to submit to a grantor organization 16. Reports screen 32 allows the grantee user to view and manage reports that are completed and sent to grantor organizations 16. Templates screen 34 allows the grantee user to create various documents, such as grant reports or grant proposals, from pre-made templates. Document library 36 stores documents created by the grantee user as well as documents sent to the grantee user by grantor organization 16. Grantee module 20 and the software that supports screens 24, 26, 28, 30, 32, 34 and 36 enable the grantee user to prepare and use computerized questionnaires that are the proposals and reports for the grantee organizations' 14 grant administration requirements.
(76) Grantor module 22 includes a home screen 38, an organizations screen 40, a proposals screen 42, a grant-reports screen 44, an internal reports screen 46, an analyze screen 48, and a templates screen 50. Home screen 38 provides a grantor user with an overview of the grants and grantee organizations 14 that the grantor user is funding and considering funding. Organizations screen 40 provides the grantor user with an overview and the ability to manage grantee organizations 14 that it is funding. Proposals screen 42 provides the grantor user the ability to view and manage proposals it has received from grantee and prospective grantee 14. Grant reports screen 44 provides the grantor user with the ability to view and manage grants that grantor organization 16 has made. Internal reports screen 46 provides the grantor user with the ability to generate and view internal reports regarding grants and grantee organizations 14 that it funds. Analyze screen 48 provides an analysis tool for the grantor user to financially analyze its grants portfolio. Templates screen 50, illustrated in
(77)
(78)
(79)
(80)
(81)
(82)
(83)
(84)
(85)
(86)
(87)
(88)
(89)
(90)
(91)
(92)
(93)
(94)
(95)
(96)
(97)
(98)
(99)
(100)
(101)
(102)
(103)
(104)
(105)
(106)
(107)
(108)
(109)
(110)
(111)
(112)
(113)
(114)
(115)
(116)
(117)
(118)
(119)
(120)
(121) Detailed Description of a Preferred Database
(122)
(123) Table users 1002 stores information about individuals that are users of the system. It connects users to organizations and to the functions they can perform within the application. Table users 1002 may, for example, include the following fields:
(124) userida unique identifier for an individual user.
(125) orgidthe identifier within the system for the organization with which a user is affiliated.
(126) usernamethe username selected by the user which serves, with the password, as part of the login function.
(127) passwordthe password associated with an individual username.
(128) password_questionthe question that the user sets up for a reminder in case the password is forgotten. This serves a security and privacy function.
(129) password_answerthe answer to the question that the user sets up for a reminder in case the password is forgotten.
(130) create_timestampthe date and time the user record is created.
(131) mod_timestampthe date and time the user record is modified.
(132) statusthe status of a user. A user can be, for example, active, inactive, deleted, or replaced. The status field references the status table.
(133) remindersstores an individual user's to-do list items.
(134) contactidthe identifier for contact information for a specific user. It relates to the table contacts which stores the specific contact information for a given user.
(135) roledetermines a user's role within the organizationdifferent user roles entitle users to access and interact with different parts of the application (e.g., some users cannot access some sections or perform some functions).
(136) calendar_private_urlthe URL for a users calendar information. PhilanTrack uses iCal to export calendar-related information (e.g., due dates). Each user can access a user-specific calendar through their private URL to be able to integrate calendar information with their calendaring software (e.g., Microsoft Outlook).
(137) Table organizations 1004 stores information about organizations that are using the database. Individuals in the users table 1002 are associated with organizations 1004. Table organizations 1004 may, for example, include the following fields:
(138) orgida unique identifier within the database for an organization. It relates to orgid in the following tables: users, program areas, funding areas, qrset-templates.
(139) org_einEIN stands for Employer Identification Number. It is a nine-digit number assigned by the IRS for businesses, estates, and trusts. The database may contain all tax exempt organizations. The org_ein field contains that organization's EIN.
(140) org_namethe name of the organization.
(141) org_long_namethe full name of the organization.
(142) is_askerthis field and is-respondent identify whether the organization is an asker organization or a respondent organization. An asker requests reports and proposals; e.g., the asker asks questions of the respondent. A respondent answers questions asked by askers, and submits reports and proposals in response to asker requests.
(143) is_respondentthis field and is_asker identify whether the organization is an asker organization or a respondent organization. An asker requests reports and proposals; e.g., the asker asks questions of the respondent. A respondent answers questions asked by askers, and submits reports and proposals in response to asker requests.
(144) create_timestampthe date and time the organization record is created.
(145) mod_timestampthe date and time the organization record is modified.
(146) websitethe organization's website.
(147) missiona text field for the organization's mission statement.
(148) directoridan identifier for the executive director of an organization to relate to contact information for the director of that organization. It references the contactid field in the table contacts. Whether the user is a director or not is identified in the contact_is_director field in the table asker_respondents or respondent_askers.
(149) addressidan identifier for the address of the organization. It references the addressid field the table addresses.
(150) statusthe status of a user. A user can be, for example, active, inactive, deleted, or replaced. The status field references the status table.
(151) is_philantrack_useridentifies whether an organization is in the database (i.e., a user) for two purposes: in order to easily associate multiple users within the same organization and to generate different notifications and set different editing permissions depending on whether or not an organization already has a record in the system. For example, when a new user registers with the system and looks up the user's organization, the system will be able to identify whether the new user should be associated with an existing organization, or whether a new organization record should be created. In another case, an asker can edit respondent contact information if the respondent is not a user. Once a respondent becomes a user, that respondent can edit the respondent's contact information, not the asker.
(152) accountingidentifies the respondent organization's accounting basistypically cash or accrual. This is set in the respondent organization's profile information and is used in the financial analysis tool.
(153) cashflowidentifies the respondent organization's cash flow statement methodologytypically direct or indirect. This is set in the respondent organization's profile information and is used in the financial analysis tool.
(154) Table contacts 1006 stores contact information for individual users within an organization. It is related to table users 1002, asker_respondents 1010, respondent_askers 1012 and grants 1014. Table contacts 1006 may include the following fields:
(155) contactidan identifier of the contact.
(156) namethe contact's name.
(157) titlethe contact's title.
(158) phonethe contact's phone number.
(159) faxthe contact's fax number.
(160) emailthe contact's email address.
(161) The table addresses 1008 stores information about addresses for organizations. It is related to table organizations 1004. The table addresses 1008 may include the following fields:
(162) addressidan identifier for the address information for a given record.
(163) in_care_of_nameif correspondence is sent in care of an individual or organization.
(164) address1first address line.
(165) address2second address line.
(166) citycity.
(167) statestate.
(168) postal_codepostal or zip code.
(169) countrycountry.
(170) The table asker_respondents 1010 stores relationships between an asker and its respondents. When an asker adds a respondent to its list, an entry is created in the asker_respondent table. The table asker_respondents 1010 is related to tables organizations 1004 and contacts 1006. The table asker_respondents 1010 may include the following fields:
(171) asker_orgidan identifier for an asker organization. It references the orgid field in the table organizations.
(172) respondent_orgidan identifier for a respondent organization. It references the orgid field in the table organizations.
(173) notesnotes that are specific to a respondent and an asker, but only visible to the asker.
(174) contact_is_directoridentifies whether a given contact in an organization is the director of that organization or a different type of user.
(175) contact_contactididentifier for a specific contact person (e.g. individual user within the asker organization).
(176) The table respondent_askers 1012 stores relationships between a respondent and its askers. When a respondent adds an asker to its list, an entry is created in the respondent_asker table 1012. The table respondent_askers 1012 is related to tables organizations 1004 and contacts 1006. The table respondent_askers 1012 may include the following fields:
(177) respondent_orgidan identifier for a respondent organization.
(178) asker_orgidan identifier for an asker organization.
(179) notesnotes that are specific to an asker and a respondent, but only visible to the respondent.
(180) contact_is_directoridentifies whether a given contact in an organization is the director of that organization or a different type of user.
(181) contact_contactididentifier for a specific contact person (e.g. individual user within the asker organization).
(182) The table grants 1014 stores information about grants in the database. It connects grants to asker and respondent organizations as well as funding and program areas (at the asker organization and respondent organization, respectively) along with relevant contact information. It is related to tables contacts 1006, grant_types 1016, proposal_status 1018, organizations 1004, program_areas 1022, and funding_areas 1020. The table grants 1014 may include the following fields:
(183) grantida unique identifier for an individual grant.
(184) proposal_idan identifier for a proposal associated with a given grant. It references orgid field in the table grants'.
(185) asker_orgidthe identifier of the asker organization with which a grant is associated. It references orgid field in the table organizations.
(186) fundingarea_idthe identifier of the asker funding area with which a grant is associated. It references funding_areaid in the table funding_areas.
(187) program_areaidthe identifier of the respondent program area with which a grant is associated. It references program_areaid field in the table program_areas.
(188) grant_identifiera user-entered identifier for an individual grant (can be a combination of letters and numbers that are meaningful to the organization).
(189) grant_namethe name of the grant entered by the asker or the respondent.
(190) grant_datethe date the grant is made.
(191) start_datethe date grant activities begin.
(192) end_datethe date grant activities end.
(193) descriptiona description of the grant.
(194) amountthe amount of the grant.
(195) grant_typeidthe type of grant. The grant_typeid field references the table grant_type.
(196) asker_alternate_contacta Boolean field identifying whether there is an alternate contact for the asker organization. Respondents and askers can designate a primary point of contact for a given grant. That contact may be different from the primary point of contact for the asker organization.
(197) asker_contactidan identifier for the primary point of contact for the asker organization.
(198) respondent_alternate_contacta Boolean field identifying whether there is an alternate contact for the respondent organization. Respondents and askers can designate a primary point of contact for a given grant. That contact may be different from the primary point of contact for the respondent organization.
(199) respondent_contactidan identifier for the primary point of contact for the respondent organization. It references orgid field in the table organizations.
(200) statusa grant can be active, inactive, deleted, or replaced. The status field references the status table.
(201) asker_notesnotes entered by the asker about the grant.
(202) is_proposalidentifies whether a grant is a proposal. Proposals in the system become grants when approved by the asker. Fields from the proposal become fields in the grant once a grant is approved.
(203) proposal_statusa proposal can be, for example, undecided, accepted, or declined. The proposal_status field references the table proposal_status.
(204) The table grant_types 1016 stores information about the different types of grants that can be tracked through the system. It is related to the table grants 1014. The table grant_types 1016 may include the following fields:
(205) grant_typeididentifies the grant type.
(206) grant_type_namethe name of the grant type.
(207) The table proposal_status 1018 stores information about the status of a proposal. It is related to the table grants 1014. The table proposal_status 1018 may include the following fields:
(208) statusidentifies the status of the proposal. The proposal status can be, for example, undecided, accepted or declined.
(209) status_namethe name of the proposal status.
(210) The table funding_areas 1020 stores information about an asker's funding areas. It is related to the table grants 1014, organizations 1004, and documents 1024. The table funding_areas 1020 may include, for example, the following fields:
(211) funding_areaididentifies the funding area in an asker organization.
(212) orgida unique identifier within the database for an organization. It relates to the orgid field in the table organizations.
(213) funding_area_namethe name of the funding area.
(214) statusthe status of a funding area. A funding area can be, for example, active, inactive, deleted, or replaced. The status field references the status table.
(215) The table program_areas 1022 stores information about a respondent's program areas. It is related to the tables grants 1014 and organizations 1004. The table program_areas 1022 may include the following fields:
(216) program_areaididentifies the program area in a respondent organization.
(217) orgida unique identifier within the database for an organization. It relates to the orgid field in the table organizations.
(218) program_area_namethe name of the program area.
(219) statusthe status of a program area. A program area can be, for example, active, inactive, deleted, or replaced. The status field references the status table.
(220) The table documents 1024 stores information about documents. It is related to the table organizations 1004. The table documents 1024 may include the following fields:
(221) docidan identifier for the document.
(222) orgida unique identifier within the database for an organization. It references the orgid field in the table organizations.
(223) filenamethe name of the file that has been uploaded.
(224) systemnamethe name generated by the system for the file that has been uploaded.
(225) summarysummary text about the document, entered by the user.
(226) bytesthe size of the document.
(227) added_datetimea date and time stamp for when the document was uploaded to the system.
(228) added_byidthe username of the user who uploaded the document to the system.
(229) mime_typefile mime type of the uploaded file.
(230) The table internal_report_type 1026 defines the type of internal reports. The combination of the irt_id and irt_name fields define for any given internal report the name and type of report (e.g., board book, grantee report). The table internal_report_type 1026 is related to the table internal_report 1028. The table internal_report_type 1026 may include the following fields:
(231) irt_idan identifier for the internal report type (e.g., 1=board book).
(232) irt_namethe name of the internal report type (e.g., board book)
(233) The table internal_report 1028 is an entity that stores information about internal reports. It is related to the tables internal_report_grantee 1030, organizations 1004, funding_areas 1020, users 1002, and internal_report_type 1026. The table internal_report 1028 may include the following fields:
(234) ir_idan identifier for the internal report.
(235) asker_orgidan identifier for the asker organization generating the internal report. It references the orgid field in the table organizations.
(236) funding_areaidan identifier for the funding area for which the internal report has been generated. It references the funding_areaid field in the table funding_areas.
(237) irt_idan identifier for the internal report type. It references the irt_id field in the table internal_report_type.
(238) run_byidan identifier for the user that has generated (run) the report. It references the userid field in the table users.
(239) report_namethe name of the internal report, entered by the asker user.
(240) date_createddate and time an internal report is created.
(241) start_datestart date of the period covered by the internal report.
(242) end_dateend date of the period covered by the internal report.
(243) resultsthe text of the results of the internal report.
(244) The table internal_report_grantee 1030 stores information about the grantees included in a given internal report. It is related to the tables internal_report 1028 and organizations 1004. The table internal_report_grantee 1030 may include the following fields:
(245) ir_idan identifier for the internal report. It references the ir_id field in the table internal_report.
(246) grantee_idan identifier for the grantee whose information is included in an internal report. It references the orgid field in the table organizations.
(247) The table states 1032 stores information about the names and abbreviations of states. The table states 1032 may include the following fields:
(248) statethe two-letter abbreviation for a state.
(249) namethe name of a state.
(250) The table geographic_type 1034 stores information about types of geographic areas on which reports can be run (e.g., state, city, zip code, congressional district, etc.). The table geographic_type 1034 is related to the table geographic_regions 1036. The table geographic_type 1034 may include the following fields:
(251) gt_idan identifier for the geographic type (e.g., 1 is state).
(252) gt_namethe name of the geographic type (e.g., state).
(253) The table geographic_regions 1036 stores information about geographic regions. With the table geographic_member, it is used to define which states are included in which geographic region (e.g., Northeast). The table geographic_regions 1036 is related to the table geographic_type 1034. The table geographic_regions 1036 may include the following fields:
(254) gr_idan identifier for the geographic region.
(255) namethe name of the geographic region.
(256) gt_idan identifier for the geographic type. It references gt_id field in the table geographic_type.
(257) descriptiona description of the geographic region.
(258) The table geographic_member 1038 stores information about which geographic entities comprise a specific geographic region. The table geographic_member is related to the table geographic_regions 1036. The table geographic_member 1038 may include the following fields:
(259) gm_idan identifier for the geographic member.
(260) gr_idan identifier for the geographic region. References gr_id field in the table geographic_regions.
(261) namethe name of the geographic member (e.g., Northeast).
(262) The table alerts 1040 stores information about alerts (notifications to users). There are two preferred types of alertsadmin-generated (e.g., system downtime) and system-generated (e.g., report due on a given date). The table alerts 1040 may include the following fields:
(263) alertidan identifier for the alert.
(264) descriptiona text description of the alert.
(265) linka link to the subject of the alert (e.g., a report that is due on a given day).
(266) alert_datethe date the alert is due.
(267) The table qrsets 1042 stores information about questions and responses in the database. A qrset is short for question/response set. A qrset is composed preferably of a number of qrinstances (each of which may consist of an individual question and its associated response). A qrset can be thought of as a request from an asker organization of a respondent organization and the information that the respondent organization completes and submits in response to the request. The table qrsets 1042 is related to the tables organizations 1004, qrset_templates 1044, qrset_types 1048, grants 1014, and states 1032. The table qrsets 1042 may include the following fields:
(268) qrsetidan identifier for the qrset.
(269) respondent_orgidthe identifier of the respondent organization with which a grant is associated. It references orgid field in the table organizations.
(270) asker_ordidthe identifier of the asker organization with which a grant is associated. It references orgid field in the table organizations.
(271) qrset_templateidan identifier of the qrset_template with which the qrset is associated. A qrset template is the basis for creating a qrset. It determines the questions and responses (qrset instances) that comprise a given qrset. A qrset template can be thought of as a qrset that has not been associated with a specific asker/respondent pair. In other words, a qrset template can be the basis for many qrsets. It references qrset_templateid field in table qrset_templates.
(272) qrset_typeidan identifier of the type of qrset. Qrsets can be reports or proposals, etc. It references qrset_templateid field in table qrset_templates.
(273) due_datethe date a given qrset is due.
(274) grantidan identifier for the grant with which the qrset is associated. It references grantid field in table grants.
(275) submitteddate and time qrset is submitted.
(276) create_timestampdate and time qrset is created.
(277) mod_timestampdate and time qrset is modified.
(278) statusthe status of a qrset. A qrset can be active, inactive, deleted, or replaced. The status field references the status table.
(279) original_qrsetidthe original id of the qrset. It references qrsetid in the table qrsets. It is used in the situation in which an asker modifies a QRSet that a respondent has started to answer but has not yet been submitted. In that situation, the modified QRSet becomes a new QRSet. This field links to the original QRSet so that responses already entered in the original QRSet can be copied into the modified QRSet. In most cases, this field will be empty.
(280) commentcomments on the qrset that are visible only to the asker.
(281) The table qrset_templates 1044 stores information about qrset templates. A qrset template is essentially a qrset that has not been associated with a specific asker/respondent pair. A qrset template can be the basis for many qrsets. The table qrset_templates 1044 is related to the tables organizations 1004, funding_areas 1020, program_areas 1022, qrset_template_types 1046, qrset_template_question_types 1060, and qrsets 1042. The table qrset_templates 1044 may include the following fields:
(282) qrset_templateidan identifier for the qrset template.
(283) template_namethe name of the template.
(284) qrset_template_typeidan identifier of the type of template for a given qrset. Qrset template types may include report, proposal, etc. It references qrset_template_typeid in the table qrset_template_types.
(285) orgida unique identifier within the database for an organization. It references the orgid field in the table organizations.
(286) fundingarea_idthe identifier of the asker funding area with which a grant is associated. It references funding_areaid in the table funding_areas, if the organization is an asker organization.
(287) program_areaidthe identifier of the respondent program area with which a grant is associated. It references program_areaid field in the table program_areas, if the organization is a respondent organization.
(288) create_timestampdate and time a qrset template is created.
(289) mod_timestampdate and time a qrset template is modified.
(290) statusthe status of a qrset template. A qrset template can be, for example, active, inactive, deleted, or replaced. The status field references the status table.
(291) descriptiona description of the qrset template.
(292) The table qrset_template_types 1046 stores information about the different types of qrset templates in the datebase. It is related to the tables qrset_templates 1044 and qrset_types 1048. The table qrset_template_types 1046 may include the following fields:
(293) qrset_template_typeidan identifier for the type of qrset template.
(294) namethe name of the qrset template type.
(295) labelthe label associated with the qrset template type.
(296) The table qrset_types 1048 stores information about the different types of qrsets in the database. It is related to the tables qrset_template_types 1046 and qrsets 1042. The table qrset_types 1048 may include the following fields:
(297) qrset_typeidan identifier for the type of qrset.
(298) qrset_template_typeidan identifier for the type of qrset template. It references qrset_template_typeid field in the table qrset_template_types.
(299) namethe name of the qrset type.
(300) labela label for the qrset type.
(301) The table qrset_template_members 1050 organizes groups of questions into qrsets. It is related to the tables qrset_templates 1044 and questions 1052. The table qrset_template_members 1050 may include the following fields:
(302) qrset_templateidan identifier for the qrset template. It references qrset_templateid field in the table qrset_templates.
(303) qidan identifier for an individual question. It references qid field in the table questions.
(304) sort_orderthe order of the questions in a qrset template.
(305) The table questions 1052 stores the questions in the database. It is related to the tables tags 1054, qrset_template_members 1050, question_xref 1062, and qrinstances 1064. The table questions 1052 may include the following fields:
(306) qidan identifier for an individual question.
(307) questionthe text of a question.
(308) question_type_tagidan identifier of the question type as referenced in the tag. It references tagid field in the table tags.
(309) definitionthe XML definition for the question.
(310) The table tags 1054 stores information about tags. Tags are like an option code selection or a lookup code value. They are used for lists of items (e.g., expense categories for a financial report). The table tags 1054 are related to the tables questions 1052, tag_tree 1058, qrset_template_question_types 1060. The table tags 1054 may include the following fields:
(311) tagidan identifier for a tag.
(312) tag_namethe name of the tag.
(313) statusthe status of a tag. A tag can be active, inactive, deleted, or replaced. The status field references the status table.
(314) tag_labelthe label for a given tag.
(315) The table tag_financial_attrs 1056 stores information that helps define rows in financial statements. It provides context for when given tags appear in financial statements (e.g., certain tags may only appear in rows of financial statements when the respondent organization is using accrual accounting). A record in the table tag_financial attrs 1056 relates to a specific tag and defines the context in which a given tag should appear. The table tag_financial_attrs 1056 is related to the table tags 1054. The table tag_financial_attrs 1056 may include the following fields:
(316) tagidan identifier for the tag. It references the tagid field in the table tags.
(317) cash_accountingidentifies whether the organization uses cash accounting.
(318) accrual_accountingidentifies whether the organization uses accrual accounting.
(319) direct_cashflowidentifies whether the organization uses direct cash flow statements.
(320) indirect_cashflowidentifies whether the organization uses indirect cash flow statements.
(321) The table tag_tree 1058 is an entity that is a way of organizing tags in a hierarchical manner, like a genus and a species. The tag tree can represent any number of levels of lists. The table tag_tree 1058 is related to the table tags 1054. The table tag_tree 1058 may include the following fields:
(322) parent_tagidan identifier for a tab at the top of the hierarchy. References the tagid field in the table tags.
(323) child_tagidan identifier for a tab further down the hierarchy. References the tagid field in the table tags.
(324) The table qrset_template_question_types 1060 keeps track of the order of question categories used within a qrset_template. It is related to the tables qrset_templates 1044 and tags 1054. The table qrset_template_question_types 1060 may include the following fields:
(325) qrset_templateidan identifier for the qrset_template. It references the qrset_templateid field in the table qrset_templates.
(326) question_type_tagidan identifier for the tag related to a specific question type. It references the tagid field in the table tags.
(327) sort_orderDefines the sort order of the question with respect to other questions within the same question type category (e.g., Goals/Objectives).
(328) The table question_xref 1062 defines the relationships between similar questions in the database. Questions that are identified as similar are not necessarily identical. They are identified as similar in this table. The table question_xref 1062 is related to the table question 1052. The table question_xref 1062 may include the following fields:
(329) qid1an identifier for the first question that is similar to another question. It references the qid field in the questions table.
(330) qid2an identifier for the second question that is similar to another question. It references the qid field in the questions table.
(331) The table qrinstances 1064 stores information about qrinstances. It associates a question with a response. The combination of responseid and response_typeid fields relate a given qrinstance to a single response within one of the response tables (e.g., narrative_responses, if_then_responses, dict_list_responses, and financial_grids). It is related to the tables questions 1052, qrsets 1042, and response_types 1066. The table qrinstances 1064 may include the following fields:
(332) qrinstanceidan identifier for an individual qrinstance.
(333) qrsetidan identifier for a qrset. Associates a qrinstance with a qrset. It references qrset field in the qrsets database.
(334) qidan identifier for a question. It references the qid field in the questions table.
(335) responseidan identifier for an individual response. In this table, the response preferably is associated with a specific question.
(336) response_typeidan identifier for a type of response. It references the response_typeid field in the table response_types.
(337) sort_orderdefines the sort order of qrinstances within a qrset.
(338) The table response_types 1066 is a registry of the response types/classes which exist. Response types can include, for example, narrative responses, financial grids, if-then responses, dict-list responses (see table dict_list_responses), etc. It is related to the table qrinstances 1064. The table response_types 1066 may include the following fields:
(339) response_typeidan identifier for an individual response types.
(340) table_namethe name of the table in which responses of a specific response type are stored.
(341) class_namethe name of the class of which the response type is a part.
(342) The table responses 1068 stores responses. It is used to define the common fields (e.g., respondent_orgid, submitted, create_timestamp, mod_userid, and mod_timestamp) which exist in all of the tables which inherit from it. The tables that inherit from the table responses are preferably the tables narrative_responses 1070, if_then_responses 1072, dict_list_responses 1084, and financial_grids 1074. The table responses 1068 may include the following fields:
(343) respondent_orgidthe identifier of the respondent organization. It references the orgid field in the table organizations.
(344) submittedBoolean; whether a qrset containing an individual response has been submitted.
(345) create_timestampdate and time a response is created.
(346) mod_useridthe user ID of the user to last modify the response.
(347) mod_timestampdate and time a response is modified.
(348) The table narrative_responses 1070 stores information about narrative responses. Narrative responses are textual responses. Narrative_responses inherits respondent_orgid, submitted, create_timestamp, mod_userid and mod_timestamp from the table responses 1068 and is related to the table organizations 1004. The table narrative_responses 1070 may include the following fields:
(349) respondent_orgidthe identifier of the respondent organization. It references the orgid field the in the table organizations.
(350) submittedBoolean; whether a qrset containing an individual response has been submitted.
(351) create_timestampdate and time a response is created.
(352) mod_useridthe user ID of the user to last modify the response.
(353) mod_timestampdate and time a response is modified.
(354) narrative_responseidan identifier of the narrative response.
(355) responsethe text of the response.
(356) The table if_then_responses 1072 stores information about if-then responses. If-then responses are two part questions; the first part generally consists of a Boolean response. The second part, when applicable, generally consists of simple text. If_then_responses preferably inherit respondent_orgid, submitted, create_timestamp, mod_userid and mod_timestamp from the table responses 1068 and is related to the table organizations 1004. The table if_then_responses 1072 may include the following fields:
(357) respondent_orgidthe identifier of the respondent organization. It references the orgid field the in the table organizations.
(358) submittedBoolean; whether a qrset containing an individual response has been submitted.
(359) create_timestampdate and time a response is created.
(360) mod_useridthe user ID of the user to last modify the response.
(361) mod_timestampdate and time a response is modified.
(362) if_then_responseidan identifier of the if-then response.
(363) boolean_responsethe response to part one of the if-then question.
(364) narrative_responseidthe response to part two of the if-then question.
(365) The table financial_grids 1074 stores information about financial responses. Financial responses are stored in grids of varying numbers of columns and rows. Financial_grids inherits respondent_orgid, submitted, create_timestamp, mod_userid and mod_timestamp from the table responses 1068 and is related to the table organizations 1004 and tags 1054. The table financial_grids 1074 may include the following fields:
(366) respondent_orgidthe identifier of the respondent organization. It references the orgid field the in the table organizations.
(367) submittedBoolean; whether a qrset containing an individual response has been submitted.
(368) create_timestampdate and time a response is created.
(369) mod_useridthe user ID of the user to last modify the response.
(370) mod_timestampdate and time a response is modified.
(371) financial_grididan identifier for the financial grid response.
(372) fiscal_yearan identifier for the fiscal year for which financial information is being submitted.
(373) fiscal_quarteran identifier for the fiscal quarter for which financial information is being submitted.
(374) org_levelan identifier of the level to which the financial information applies. Financial information can apply to an organization, a program/project, or a grant.
(375) accountingan identifier of the accounting basis followed by the respondent organization. The accounting basis can be, for example, cash or accrual.
(376) cashflowan identifier of the cash flow method followed by the respondent organization. The cash flow method can be, for example, direct or indirect.
(377) statement_tagidan identifier of the tag associated with a given financial statement. It references the tagid field in the table tags.
(378) The table financial_columns 1076 stores information about the columns in a financial grid. It is related to the table financial_cells 1078. The table financial_columns 1076 may include the following fields:
(379) financial_columnidan identifier for a column within a financial grid.
(380) financial_grididan identifier of a financial grid of which the financial column is part. It references the financial_gridid field in the table financial_grids.
(381) namethe name of the column in the financial grid.
(382) labelthe label visible to the user for the column in the financial grid.
(383) sort_orderthe order in which financial column appears.
(384) The table financial_cells 1078 stores information about cells within a financial grid. It is related to the tables financial_columns 1076, financial_grids 1074 and financial_rows 1080. The table financial_cells 1078 may include the following fields:
(385) financial_cellidan identifier for an individual cell within a financial grid.
(386) financial_grididan identifier for a financial grid. It references the financial_gridid field in the table financial_grids.
(387) financial_columnidan identifier for the column in the financial grid in which the financial cell resides. It references the financial_columnid field in the table financial_cells.
(388) financial_rowidan identifier for the row in the financial grid in which the financial cell resides. It references the financial_rowid field in the table financial_rows.
(389) valuethe value of the individual cell.
(390) The table financial_rows 1080 stores information about the rows in a financial grid. It is related to the tables financial_sections 1082 and financial_grids 1074. The table financial_rows 1080 may include the following fields:
(391) financial_rowidan identifier for a row within a financial grid.
(392) financial_grididan identifier for the financial grid of which the financial row is a part. It references the financial_gridid field in the table financial_grids.
(393) financial_sectionididentifier for the section in the financial grid of which the financial row is part (for example, whether it is an expense row or an income row in an income statement or statement of activities, or an asset or liability on a balance sheet or statement of financial condition). It references the financial_sectionid field in the table financial_sections.
(394) namethe name of the financial row.
(395) labelthe label visible to the user for the financial row.
(396) sort_orderthe order in which the financial row appears.
(397) The table financial_sections 1082 stores information about the sections within a financial grid. For example, a statement of activities might include an income section and an expenses section, or a statement of financial condition might include an assets section, a liabilities section, and a net assets section. The table financial_sections 1082 is related to the table financial_grids 1074. The table financial_sections 1082 may include the following fields:
(398) financial_sectionidan identifier for a section within a financial grid.
(399) financial_grididan identifier for a financial grid. It references the financial_gridid field in the table financial_grids.
(400) namethe name of the financial section.
(401) labelthe label visible to the user for the financial section.
(402) sort_orderthe order in which the financial section appears.
(403) The table dict_list_responses 1084 stores responses for a dict list. A dict list stores an ordered sequence of dicts. A dict is a set of tuples containing a name and a value. Each name is a text string. The types of values in a dict may be non-homogeneous (can be any type from the values_type table). The table dict_list_responses 1084 is the top level in managing dict list information. It is related to the tables organizations 1004, dict_list_entries 1090 and dict_list_types 1088. Dict_list_responses inherits respondent_orgid, submitted, create_timestamp, mod_userid and mod_timestamp from the table responses 1068. The table dict_list_responses 1084 may include the following fields:
(404) respondent_orgidthe identifier of the respondent organization. It references the orgid field in the table organizations.
(405) submittedBoolean; whether a qrset containing an individual response has been submitted.
(406) create_timestampdate and time a response is created.
(407) mod_useridthe user ID of the user to last modify the response.
(408) mod_timestampdate and time a response is modified.
(409) dict_list_responseidan identifier of the dict_list response. It references dict_list_responseid field in the table dict_list_types.
(410) The table value_types 1086 stores the different types of values that dict list responses can contain. It is referenced in determining the variant values of responses in a given dict list. It is related to the table dict_list_types 1088 and the variant_values tables 1092. The value types are intrinsic to the PostgreSQL database and may include: text, date, numeric, float, integer, Boolean, and tag. The table value_types 1086 may include the following fields:
(411) value_typeidthe identifier of the type of value (e.g., text is 1).
(412) value_typean internal name (i.e. text or date) for the type.
(413) The table dict_list_types 1088 defines each of the columns in tabular form for a dict list. For each column in a dict list, the table dict_list_types 1088 defines what type of value will be in that column. Each column then has a consistent value type (e.g., numeric). For example, a dict list showing funding sources might have two columns: source and amount. The source column will contain text values while the amount column will contain numeric values. The table dict_list_types 1088 is related to the tables dict_list_responses 1084, value_types 1086 and dict_list_entries 1090. The table dict_list_types 1088 may include the following fields:
(414) dict_list_typeidan identifier for the type of dict list.
(415) dict_list_responseidan identifier for the response to the dict list. It references dict_list_responseid field in the dict_list_responses table.
(416) namethe name of the dict list.
(417) value_typeidan identifier of the type of value (e.g., 1=text). It references value_typeid field in the table value_types.
(418) The table dict_list_entries 1090 stores specific entries into dict lists. It is related to the tables dict_list_responses 1084 and dict_list_types 1088. The table dict_list_entries 1090 may include the following fields:
(419) dict_list_entryidan identifier of an individual dict list entry.
(420) dict_list-responseidan identifier of the dict list response. It references dict_list_responseid field in the table dict_list_responses. This relates the individual response within a dict list to the overall response in a qrset.
(421) dict_list-typeidan identifier of the dict list type. It references dict_list_type field in the table dict_list_types.
(422) sequence_indexspecifies which dict in the list this entry is from.
(423) variant_valueidthe identifier of the type of value for this particular entry. The variant_valueid is passed through the table variant_values 1092 to the appropriate variant table (specific to the type of value, e.g., text).
(424) The table variant_values 1092 is an entity that tells the application which type of value is stored in a given variant in a dict list. It may be a table that passes information along to the appropriate table for a given value type. The table variant_values 1092 may have a single field that is inherited by the various variant_values_*tables. That field may be:
(425) variant_valueididentifies which type of data is stored in a given dict_list in order to determine what kind of data is in a given field. The variant_valueid may be a number that is assigned in series to the following types of fields as a non-limiting example: text, date, numeric, integer, float, Boolean, and tag.
(426) The table variant_values_text 1094 stores information about text values stored in a given dict list. It inherits the variants_valueid field from the table variant_values 1092. The table variant_values_text 1094 may include the following fields:
(427) variant_valueididentifies which type of data is stored in a given dict_list. It is inherited from variant_valueid field in the table variant_values 1092.
(428) variant_valuethe actual value of the given variant.
(429) The table variant_values_tag 1096 stores information about tag values stored in a given dict list. It is related to the table tags 1054. It inherits the variants_valueid field from the table variant_values 1092. The table variant_values_tag 1096 may include the following fields:
(430) variant_valueididentifies which type of data is stored in a given dict_list. It may be inherited from variant_valueid field in the table variant_values 1092.
(431) variant_valuethe actual value of the given variant.
(432) The table variant_values_numeric 1098 stores information about numeric values stored in a given dict list. Numeric values are used, for example, for dollar/financial figures in the database. It inherits the variants_valueid field from the table variant_values 1092. The table variant_values_numeric 1098 may include the following fields:
(433) variant_valueididentifies which type of data is stored in a given dict_list. It is inherited from variant_valueid field in the table variant_values 1092.
(434) variant_valuethe actual value of the given variant.
(435) The table variant_values_integer 1100 stores information about integer values stored in a given dict list. It inherits the variants_valueid field from the table variant_values 1092. The table variant_values_integer 1100 may include the following fields:
(436) variant_valueididentifies which type of data is stored in a given dict_list. Inherited from variant_valueid field in the table variant_values 1092.
(437) variant_valuethe actual value of the given variant.
(438) The table variant_values_float 1102 stores information about float values stored in a given dict list. Floating point values are a type of numeric value. It inherits the variants_valueid field from the table variant_values 1092. The table variant_values_float 1102 may include the following fields:
(439) variant_valueididentifies which type of data is stored in a given dict_list. It is inherited from variant_valueid field in the table variant_values.
(440) variant_valuethe actual value of the given variant.
(441) The table variant_values_date 1104 stores information about date values stored in a given dict list. It inherits the variants_valueid field from the table variant_values 1092. The table variant_values_date 1104 may include the following fields:
(442) variant_valueididentifies which type of data is stored in a given dict_list. It is inherited from variant_valueid field in the table variant_values 1092.
(443) variant_valuethe actual value of the given variant.
(444) The table variant_values_boolean 1106 stores information about Boolean values stored in a given dict list. It inherits the variants_valueid field from the table variant_values 1092. The table variant_values_boolean 1106 may include the following fields:
(445) variant_valueididentifies which type of data is stored in a given dict_list. It is inherited from variant_valueid field in the table variant_values 1092.
(446) variant_valuethe actual value of the given variant.
(447) Table: status 1108: The table status 1108 stores the status of entity in the database (e.g., a user, grant, organization, proposal, template, report, etc.). An entity can be, for example, active, inactive, deleted, or replaced. The status field references the status table. The table status 1108 may include the following field:
(448) statusthe status of an entity in the database (e.g., a user, grant, organization, proposal, template, report, etc.). An entity can be, for example, active, inactive, deleted, or replaced.
(449) It is noted that the foregoing examples have been provided merely for the purpose of explanation and are in no way to be construed as limiting of the present invention. While the present invention has been described with reference to certain embodiments, it is understood that the words which have been used herein are words of description and illustration, rather than words of limitation. Changes may be made, within the purview of the appended claims, as presently stated and as amended, without departing from the scope and spirit of the present invention in its aspects. Although the present invention has been described herein with reference to particular means, materials and embodiments, the present invention is not intended to be limited to the particulars disclosed herein; rather, the present invention extends to all functionally equivalent structures, methods and uses, such as are within the scope of the appended claims.