This is in part a follow on to my earlier question about linking text selected in a document to a row in a table programmatically. I have discovered that a control can can do almost everything I want, except it brings up a list of citations (from a table). In reality that list could be 100 items long, so I don’t want to do that.
I want to be able with a selection or a button in a text document page to select a citation and have that selection put into the control on a different page which will then execute and display the information about the citation. In my prior programing life i used variable for this, but I haven’t seen anything in my brief Coda experience like that. Thanks!
To be able to use variables, create a table, say called variables, and then store the info you want in that column. You could also do arrays that way.
But If I understood what you want to do correctly.:(Browse a table of citations, send that citation to a control.)
You could use a button on the source table, to use the formula setControlValue() to set the control on the destination page.
But why not just search/filter on the destination page for the citation you want?
You say the control returns a 100 citations. How do you select one from the 100? Manually?
I always hesitate to say this, because it can s easily be taken the worng way. So please take this in the most positive way possible - Since I dropped my programming, database and Excel knowledge, Coda has become a breeze. Coda is one of those situations where prior programming knowledge is a libility. Unless you want to go beyond the no-code aspects of Coda, of course.
Thanks – I understand about the liability of prior programming language…even among languages…
In my situation, there could be a paragraph of text in a document, where a statement is exemplified by a document citation, such as BATES12345. Like this:
“Mr. Jones emailed Mr. Black and said he had managed to bribe the executive in question (BATES12345) and there would be no further impediments to the project.” I need to be able to select/click on the BATES12345 reference and have Coda take the reader to a description of that BATES12345 document in a table called Document Inventory and then be able, by clicking on another field in Document Inventory, see the document pdf in question.
Currently, in the simple version, I can copy/paste the url link from the Document Inventory row describing BATES12345 to the BATES12345 reference url link in the document. Works Great. The problem comes when I have to deal with a real report that is subject to change and is 100 pages long with citations to 50 or 100 or more documents. Manually entering the url links over and over again would be egregious. So, I was trying to automate the process. Then I found that if I use a Select Control using the BATES12345, I could bring up a paragraph describing the BATES12345 document and the link to the BATES12345 pdf.
What I can’t figure out is how to select the BATES123435 reference in the report document and pass that BATES12345 text to the Select Control, so it can execute and display the BATES12345 document information.
I hope this explains my conundrum, and I’m sure Coda has a simple answer that I just can’t seem to find. Thanks for your help.
I don’t get all of what you are saying, because I don’t have all of the context needed.
I am fond of using a “dictionary” in some of my docs. For any term in the Coda doc that I would like to provide an explanation or definition, I then create an entry in the dictionary (Citation?) table.
Anywhere I want the reader to be able to get the definition, I prefix the word with @, e.g. @bates12xxxx, and then select the entry in the dictionary table.
I am not certain whether this helps, but it might generate some ideas.
How is this document created? If it is done inside Coda, the author can immediately cross reference to the citation.
My Document Inventory is like your dictionary. It is a table listing Doc IDs (BATES12345) and info about the type of document, its date, whom it was sent to and who by, a short synopsis of what it contains, and a link to the uploaded document, so the user can see the actual document, if necessary.
The Report document is a report, usually about 100 pages long, created and updated in Word with the 100+ citations already made. It is updated many times before it is done. Hence, we could receive a new report version every day and have to relink all the citations as well as upload any new ones. It is my belief that if I could pass the selected citation ID from the Report to my Select Control, my Select Control would handle the information display…and relinking would be unnecessary.
In reality, this is a case of where Coda really shines, because it can manage all this information in one document entity.
In the example I am trying to emulate to learn and show Coda to some of my legal types, we lawyers actually wrote the real report in Word. I wrote a macro that read the report and listed all the citations. The Excel Document Inventory was then updated to handle any new citations. And a separate folder was manually created that held actual copies of the citation files, so users could review them, if necessary. Very messy and prone to errors. All this then had to be forwarded to the users.
But, if I can get it to work, Coda would let it all happen in one document and one link. Fabulous!
Here is an idea. (I have not implemented this, the work involved is a bit beyond the scope of what I do in the forum.)
In the Document Inventory, include a linkColumn with the link/ URL(*) you want to jump to.
Once the 100 page has been copied into Coda, execute a “link update” button.
The link update button has the following functionality
use formulaMap() to cycle through the Doc Ids in the Document Inventory. In a loop, Find() every occurrence of that Doc id in the Report. Then Replace() 0 characters from Report, and replace it with the link in the linkColumn in the Document inventory.
The link can be anything, including a page or a row, where the BATES12345 is explained/ expanded.
Also have a look at Meeting Pack | Devpost that @Connor_McCormick1 has developed for the packathon. It solves the first half of the idea that I mentioned above.
We have a little story we tell back home. It is about this little boy running alongside his bicycle, pushing for all he’s worth. Gramps walks past him and asks “Sonny, why are you not getting on your bicycle and riding?”
As he passes the little boy shouts "I am late for school, I don’t have the time to stop to get on… "
Thanks very much! The Meeting Pack showed me what could be done, was you suggested, and I have emailed Connor about developing a regex style search capability in his pack. You have been a huge help, especially when advising me not to let coding experience get in the way of Coda capability.