The full interview lasted two hours. It was clear that he did not want to just turn over the project to me and walk away. That was what he tried with his website and the results were unsatisfactory. He wanted to collaborate and expand his vision. He not only wanted a website, he wanted a multi user database with transaction processing capabilities. He was extremely interested in generating invoices online, creating variable data print pdfs and much more. He could see that the value of his business was eroding.
He needed to take action ... now.
When you initially login, you will be greeted with a diverse menu. This video will help you to get oriented. ---- The Web System sports a feature rich environment. Said differently,Unicycle is not a toy. Prepare to be challenged now and rewarded in the near future. For the moment, we will only brush lightly on each section. Future videos will dig more deeply. ---- Whenever I mention the Top Menu, I will be referring to this area. Notes are very simple, internal bits of text that you may wish to save and retrieve without effort. These Notes also come with a Notes manager. ----- Bookmarks are Internal shortcuts to specific pages or Views that require frequent recall. These Bookmarks can be Global for all users or - specific to a User. Once again, a Bookmarks Manager is provided. ---- Settings is a suitable start point for your internal Administrator. This is where you would add or delete users, assign privileges, create Roles, edit Account information and generally maintain order within your Web office. Iama added her photo within settings. ---- Settings is a suitable start point for your internal Administrator. This is where you would add or delete users, assign privileges, create Roles, edit Account information and generally maintain order within your Web office. Iama added her photo within settings. ---- Tools include all of your Main Objects, along with focused applications designed for a specific purpose. An example is the Scheduler, which allows you to control kron jobs. --- S A A S will list your desired set of links to external websites. If those links are Google ID enabled, you will be able to log into the other site and work within the main frame of your browser. ---- This is the support area, where you can upgrade your Account, submit a bug ticket, request a quote for additional services or contact the Web System support group for other reasons. This is not important at the moment, but remember that at day 30, free test accounts along with all contents will be deleted unless you upgrade. ---- Please shift your eyes to the upper left and you will see the Y-tree. The Y-tree provides quick access to each of your major object categories. When expanded, you will see all relevant folders and inside of each folder, the objects for that category. Notice that Iama has 3 tables, a P G S Q L function, an internal website 5 files plus one in the dustbin. ---- Just above the Y-Tree is a handy global search feature. Iama does not need this yet, as she has only 10 objects but it is not unusual for accounts to have many thousands of different items and a quick search is often a necessity. You can stretch the Y-Tree to the right and also hide it from View, allowing you a bit more workspace in your main frame. ---- Statistics gives you information at a glance on your storage space, monthly traffic and quota used, along with additional data about email space, users and visitors. If you need more space or require additional gigs of traffic, go to this item. ---- The Web System's Chat was created in 2005 and - reflects the tech available at that time. There are many, advanced chat implementations now, but we have kept our original Chat feature as it is secure - it allows multiple users to view a complex project simultaneously - and most importantly - you can instantly and permanently delete a Chat session. If Iama has a private conversation, it can be gone with a click. Forever. ---- When you first login to your test account, you will be greeted with an array of Widgets. Notice that each widget includes a minus sign to minimize - a gear icon for additional options - and a X to remove it from your view. Some people like them, others are less enthusiastic - and I fall into the latter's camp. You can add and remove them at any time so I usually add one back in, when needed. I suggest you investigate their relative utility and make your own decision. ---- This is a small administrative note that we push into every account. We have decided quite recently to use this note as a means of directing you to helpful tips and tricks. We will do our best to attempt to change the note on a daily basis but in the words of Bart Simpson, " I can't promise that I will try, but I will try - to try." ---- Just above the Admin note and slightly obscured, is a Plus. Remember that we can remove widgets? Well, this is how we can add them back onto your workspace. Click the Plus and it will expand into a Widget Controller, allowing you to drag specific widgets back onto your workspace. ---- Our final area is where most of the Action will occur and we will always refer to it as - the Main Frame of your Browser. Once you start working, nearly everything will appear in this Main Frame. When you click an object from the YTree - or open a specific tool, it will be in this area and you will only view your current object. ---- Iama feels more comfortable now, so this concludes basic Navigation. Other videos will dig much deeper into every item. The possibilities are without limit. -----
The web system will help you extend the power of Google Apps. That's what we do.
--- Start the backup process ---- Iama only has 2 files. Some Accounts have many thousands of files. --- Click Settings ---- Two files were imported. They can be scheduled to sync to Google. ---- Let's take a look ---- Open your Google backup folder, then open Documents. ---- Iama's two items were imported. Let's look at the dock, first. ---- Excellent! It opened up in the main frame. Let's see if we can edit. --- Goodie! Changes were saved! ---- Let's take a look at that spreadsheet, but first, we'll refresh the Y-Tree so that the object count is accurate. ----- Click the x l s. Let's see what happens. ---- Life is good. It opened in the main frame. I am tickled and concurrently, pink. ----- Notice that the header is in the first row - and that the data begins on the second row. You should also inspect the data, paying particular attention to the type of data in each column. ----- Our goal in this exercise is to import the X L S into a Postgres-Q- L Table, so let's give it a go. ---- Select Google Apps Backup - Backup Google Docs ---- Move your mouse to the right, until it is under the green plus sign. Additional options will appear. ---- Select - Import to Table ----- Now watch closely - but do not be alarmed if you make a mistake. You are not altering your spreadsheet. You are merely importing the data from the spreadsheet into an SQL Table. This is all possible because we are integrated with Google. Well, that - plus a boat load of programming. ----- We will save it to Root. ----- The header was in row one and the data started in row two. ----- There was only one worksheet, but if we had more, well - no prob lem-o. ---- Select the S Q L datatypes most appropriate for the data in the columns in your x l s. If your data has numbers within a column that may have a mixed level of precision, use double precision. Note that I changed the type for e e class - to Text. Why? I made a trivial mistake, that's why. I can change it back to String from Text later, after it has been imported. Postgres Q L will allow certain - but not all - reassignments of datatypes. Text to string is o k. ---- We will show you a couple of assignments - enough for you to get the idea. ----- When you are ready, click OK. ---- Yacht Zee! Let's pause for a moment and review. So far we have backed up Iama's Google Docs. Next, we opened a Google doc within the main frame of our web system and then did the same with a Google spreadsheet. Finally, we assigned datatypes and simultaneously imported the data into a newly created S Q L Table. We believe this capability is unique to the web system. We have extended the power of Google Apps. ----- Now we will take a brief look at the Table - and the data. This vid is Part one of working with tables. There will be several additional videos for all of you data mavens. ----- Go to Tables - on the Y Tree. ----- Select your newly created Table. ---- There is no shock that once again, I am victorious. All of the data is present and properly assigned. ---- I can resize my column widths within the viewer. ----- I can do a quick, intra-page search. ---- I can also perform simple sorting within the page. Do not confuse this page-view-sort with sorting via a Query. This sort is pure javascript and is temporal. ---- As I said earlier, there will be ensuing video that will cover Tables in greater detail, to include table design, keys, indexes, defaults, table triggers, etcetera. Let's wrap up. ---
Iama wants to use the Web System to create a personal website as a way to practice for future projects. She does NOT want a pre-made, canned website. You should also note that Iama is not a developer. She is a Knowledge Worker that wants to expand her scope. ---- She wants to learn and enhance her skills so that she will be a more valuable employee. She wants to be unique. -- Select -- Sites. ---- Create new -- Site. ---- She named her site -- Iama - and then filled in the rest of the blanks for a simple, three page site. She can always add more pages or change her descriptions later. --- She started with looking at the Properties for her index page, made some fixes, then continued on to the other two pages.---- Iama added descriptions for her other two pages, but before we go further, let's pause for a bit and become more familiar with the menu. We can dig much deeper in future videos. ---- We are on the General Tab. S E O is an acronym for Search Engine Optimization and we will cover that in a future vid. The Analytics Tab gives an abbreviated summary of your Google Analytics account. Once again, more on that in a future vid. ---- Next, notice the row of development Tools, the first of which is 'Action's'. This button will take you to the Actions Editor which is the Developer tool for writing and editing P H P. ----- Access log will give you a list of who has visted your site by I P address, along with the date and time of the visit. This is also where you could add a Black list to block unruly visitors from reaching your site or to exclude entire countries from reaching your site. ----- If you want the website associated with a specific domain - as with a public website, then you will want to Publish to the Web. This button takes you to the Publish Wizard and its many options. ---- A simple website can be analyzed with a glance. A complex website with many 'moving parts', needs a professional level tool. This button will take you to the Analyzer - which can be a helpful debugging tool - for large sites or complex pages. ---- The Web System has taken the shroud off of installing a payment system - and e-cart solution. Look for the short vid - 'Add Google Wallet, Payment System'. ---- Clicking Pre-view allows you to see your site in a separate browser window. Even Experts preview their sites before publishing to the web. ---- The Web System has its own internal, tireless robot that methodically reindexes every one of your pages all day and every night of the year. Nevertheless, you can also reindex your site pages with the click of a button. ----- Your Web Project Name need not be the same as your Domain name. In fact, most sites are Private and Domain name can be irrelevant. --- Individual web pages can do special work - even before they load to your browser. These are P H P Actions and usually - are created and assigned by a Developer. ---- Manage Domains is an interesting feature as it allows you to create sub-domains, such as blog - dot -my-website- dot -com. Very useful!--- You can add a new domain to your cross domain X M L policy by clicking this button. ---- Think of themes as a master page that lies beneath your current page. Usually, you will want to have your persistent objects on your theme, with menus as an example. You can have many themes for each site and - optionally assign a Master, default theme. ---- Notice the checkbox in the left column. If you want to delete a page, you'd select specifically for that page and then - click Delete. --------- The Page I D is assigned by the system. You cannot change the ID, but there will be moments when knowing the I D is useful. ---- A site with three pages can be quickly eyeballed. A site with two hundred pages, cannot. This will search the name of pages plus any meta-tags for that page. ---- Actions allow you to preview an individual page, open the Editor, open and adjust the X M L, open and edit the auto-generated H T M L, all of your properties plus import or export the page X M L, all of which begs the question, "Have you signed up for the free trial yet? If not, why not?" --- Pub is short for 'Public'. If you want the rest of the world to see this page, then make it public. If you require log-in to to view the page, then leave it unchecked. ---- This displays the current theme for each page. You can sort all your pages by Theme. ----- Displays the last modification date for the page. You can sort all of your pages by this item. ---- Exclude sitemap, if checked, means that this page will not be included in your automatic sitemap X M L. Agreeable search engines should ignore - and not index this page. ---- As you may recall, Iama is eager to experiment, but she is not a Developer. Right now would be a good moment for her to learn how to upload an image which she can include on her very first Theme. -----
Let's upload a pic. -- Select Files from the Y-tree. -- Click Upload. -- Select files -- Select an Image - and then - Open -- Make it Public. -- Click - upload -- Let's take a look. -- Quick and easy, but let's backtrack and dig a bit deeper. -- We started to upload a pic, but let's look at the options. --- You can also upload to Google Docs or Picasa, designate as Public or Private - replace an existing file with the same name - or even upload a zip file and have it automatically unzipped. -- Change your mind about uploading a file. --- When you DO click the upload button, you will see progress is quite snappy. When it is complete, you can immediately share to social media sites. ----- Iama is now ready and eager to start working on her website Theme.
This is Part Two of - creating a website. In Part 1, Iama created a simple, 3 page site but without any page Content or an underlying Theme. Think of a theme as a bottom, stationery page that is useful for holding items that will remain consistent across individual pages, such as links and menu items. And away we go ... Expand Sites on the Y-Tree - and click Iama. Instead of starting from ground zero, we decided to create a simple theme, show you the objects on that theme and then - reproduce the steps. It's often easier to know your destination before you begin the trip. First, we will select our previously created theme. All of your future themes will appear from this list. Notice that on-click, a row of additional options appear. Click - content, and the editor will open. Click - New, and the Editor will also open, with a blank theme. Properties allows you to re-name your theme and supply a brief description. You can open and directly edit the theme x m l - but let's learn to walk before we attempt to run. Export is a useful feature - as it will allow you to share with other web system users. We will utilize this function, later in the vid. You can open and directly edit the theme xml - but let's learn to walk before we attempt to run. Export is a useful feature - as it will allow you to share with other web system users. We will utilize this function, later in the vid. We can also import xml that was exported from a different theme, which means that we can instantiate someone else's shared theme, with a click. This is a very powerful feature. Now would be a bad time to delete this particular theme. So back to Content, which will open the theme in the Editor. Iama wanted to start with something fairly simple - but with at least one challenging factor. We will go through each item, one by one. In a previous video, Iama uploaded a few images. Watch to see the properties and the tool we used to load this object to the Theme. We are about to click what appears to be an image - - or - an unknown object that is tan-colored. As with any graphical interface, you will have moments where you think one thing, but something else is true. In this case, we have clicked a filler that is blue - but transparent. It is a 1 pixel, tan border. Resize it to get it out of the way, then click the tan color. You will see a different result on the properties palette. The tan color was not an image. Instead, it is the background color for the Header, which is one of the three possible parts. Those parts are the Header, the Body - and the Footer. Notice that there is a CSS class, which is short for cascading style sheets. Iama wanted a challenge - and this will fulfill her need. More about CSS in this video. The background color of the header also has an option of transparent. A response of - What? Would be entirely appropriate. Patience, grasshopper. Let's move that transparent filler back to its original size and position. The ever loquacious Iama asked me - Yoh. What is that white - thang? ... to which I replied, it is a D H T M L Menu item. There are many ways that you can create menus and links in the web system. Here is one type. More, later in this vid. Iama is very, how shall we say it, color-aware. She wanted her menu and links for the d h t m l menu to have very specific colors. To help visualize these colors, she added text labels with her color choices, along with a few fillers. Additional info about this Filler is on the property palette. A list of all objects on our theme can be viewed by clicking the magnifying glass. There is no rigid limit for the number of objects that can be on a theme. But remember, more - is not necessarily better. We are currently looking at items on the Body. The Tool we used to enable the header is on the Tools palette and looks like an eyeball. We have clicked in a blank, white space on the body, which makes it the active object. Now look at the Properties palette and follow along. Linear display will allow you to display multiple rows of data on a page. Iama does not require data for this theme. Another minute before we get to Css. We can align so that the pages, when viewed in the browser, will appear on the left, center, or right. We have already attached a css file. We will show that file to you in a bit. We do not require any javascript file for this theme. This is a natural point for a break, so you may wish to pause. Next, we will look at the CSS and see how it works with the d h t m l menu. ---------- Note: CSS audio and vid creation file crashed during vid creation. Unrecoverable. Pick up after CSS. ---------------- Now we want to create a theme from scratch - and see if we can come reasonably close to our pre-made theme. It won't be exact, though that could easily be done by merely saving a copy. We want you to see the Tools in Action. Bear in mind that this is an emulation, not the real deal. The software that we use to make these vids can be very fussy. Once again, we are going to cheat a bit. We're going to copy some items from ourearlier theme, to the new theme we are about to create. Open the content editor. Select those fillers. Close this window. You are done using this theme. Create a new theme. It will be in your theme list. Click the navigation bar to the off position and go to Parts on the toolbar. Show the header. Select the header, change the background color and resize the height. Select images from the toolbar, then pick the correct image and reposition it in the header. Resize the header so that it will butt up against Iama. Pick a low value and it will go as far as it can until it touches her bottom. Now add a filler that we will adjust so that it will be a 1 pixel, tan frame for the header. Now change the stacking order and send to the bottom. Time to paste those fillers we copied to the server. Change the page alignment to center and attach your css Time for the menu We want all menu groups to be spaced, so we attach menu item here. Level 1 is the category - group. Level 2 are the sub-items. oh boy. To the menu tree. We may skip a few of these to hasten this video a bit. Finally, we will add the page links. Now we will reassign one of our pages from the original them to this theme, and test. Go to properties for one of the pages and reassign to this theme. Now preview it in your browser. Our colors work as expected and Iama is pleased. I am relieved. If I can do it, so can you! Come join me in the web system.
As you watch these vids, remember that part of their purpose is to acquaint you with a few of the capabilities of the Web System - plus - possibile methods you could use for a particular task. Minor mistakes can be educational, so let's get a bit of education. -------- In an earlier vid, Iama created a simple 3 page website that included a page called - Contact. She wants people to be able to contact her using a form on this page. She also wants to store basic info about those contacts, which is why we created a simple Post gress Q L table, also done in an earlier vid. We will quickly review those items. ---- We will preview her Contact page, then quickly glance at her table, which currently has no records ----- Iama remembered reading that a Datasource is a floating layer of data between your data and the webpage. She decided to experiment and see what would happen. ---- She clicked datasource on the Y Tree, new object, database object, then datasource. ----- Well, that was quick. So far, so good. She will do her best to fill in the form. ---- Iama is guessing correctly. She is on a roll. ---- Correct again. I am growing concerned. Does she even need me - at all? --- You are now looking at p h p that was automatically generated by the web system. Iama did not need to know a single bit of p h p. Not even the spelling. ---- Each tab shows the p h p for a different operation. You may not be able to write it, but when it is this simple, you can understand the intent. ---- Iama refreshes the Y Tree. She wants to see if there is more to the datasource than just these tabs. ----- She was right. There is more to see. Notice that the table has 5 columns, but the datasource shows 8. Those 3 columns are reserved for system use. ------ More goodies. ---- Now back to the editor for her webpage. She wants to see if there is a way she can use this datasource. ------ Open - Content ------ Scoot over to datasource. --- Select Iama - test - datasource. ----- Iama grabs an input - textfield. ----- Iama will lay down a few fields. She is guessing, but she's a good guesser. Watch. ---- Notice that she will select multi-line for this one. Most people will want to type more than one line of text in their message. ----- She uses the alignment tool to straighten out her form - and adds - text labels. We won't show that because you already know how, having watched the earlier videos. You have watched the other videos. haven't you? ----- She previews, then adds some data. She realizes that there is no submit button, but decides to finish up, and hit enter. She is confident that the world will not explode. ------ She wants to take a quick gander at her table - and also at her data source. Did the test data she entered on the form find its way into the data source? Into the Table? Is it on its way to Venus? ------ Iama is surprised. Yes, it is there. Now for the Table. ------ Iama pats herself on the back for a moment, but then realizes that something isn't quite right. There is no submit button. Also, she cannot sit and watch this table all day, waiting to see if she gets a response. She does have a life you know, so she would like to receive an e-mail if someone submits. Also, she is curious about a method that will prevent robot spam. There is more to be done - and she will need a developer. It turns out that Iama does indeed, need me. ------ Bridget - I need you! Please give me a hand! ------
Iama became stuck, and needs the help of a developer. In Part 1, Iama experimented with adding a data source to her contact page, adding text input fields, and assigning those fields to her data source. It was good learning experience, but the end result left much to be desired. She needed help.
In this vid, we will try to minimize mouse movement of click this - then click that, and focus more on the basic procedures. Let's take a brief look at where Iama stopped and asked for help. Iama had created a data source, and linked her page to that data source. Then she laid down text input fields, assigned those fields to specific columns in her data source, and added a few text labels. We will fix many items and add a few more. - Should I have a Submit button? - Using a data source just seems so wrong. - I don't want robots sending me messages. - How do I say thank you? - Can I get an email of their message? - After they send their message, I want the browser to go back to the home page. - Don't forget - I still want the data to go into the contact table. Iama's contact table has 5 columns, with an automatic i d, name, email, message and company. It's very simple, but adequate. She wants submitted messages stored in this table. The developer started by creating a new Action - which is php. Creating an empty php action is simple. We will stop here though, and go to the actual action. Teaching you php, which is usually created by a developer, is beyond the scope of this video. Nevertheless - an Action that has already been written by a developer may be able to be modified by a careful Knowledge worker. We will click word wrap, show you the properties for this action, then return and discuss the action a bit more. Clicking the wrench will pop up the properties for this Action. The Developer named it, gave it a brief description so that Iama would understand its purpose. This Action will run when called. It is not on a specific schedule. Toggle panel gives you a larger workspace. There is a simple, API for common tasks. With effort, a knowledge worker can gradually learn php. Our developer did not need the a p i and wrote the p h p from scratch. We will divide this php action into bite-sized pieces. The upper portion deals with the Kaptcha, which will prevent Iama from being buried in false messages. Notice i m g value, name and email. These exact names will also be added to the editor, later in this presentation. Matching names between the editor, the p h p script, and the table will help a Knowledge worker keep organized. In addition, your script may silently fail to work. Names are very important. In this case, it is matching a person's entered text with the Kaptcha code. If there is no match, they will be asked to try again. Also, if a person does not enter their name or their email address, they will be reminded. If they don't add them and resubmit, nothing will be entered into the Table. The expectation is that a developer would create this script, but a competent knowledge worker could at least edit the Alerts. Over time, perhaps more. The next chunk focuses on getting the submitted information into the Table - contacts. Once again, an exact match of item and column names is important. After insert, the user will be thanked by Iama and redirected away from the contact page and to the Home, index page. This isn't really necessary, but Iama insisted. Oh well. Iama cannot sit and watch this table all day, watching to see if someone sent her message. She has other things to do during the day, and given that we have been working on these videos for 3 weeks - and she is still wearing the same pants-suit, perhaps a trip to the laundrymat would be in order. The Web system has built-in email capability, so she will receive a formatted email after each response. Once again, note that the script is trying to send name, company, email and message. These must match the labels in the editor and the spelling must be precise. Even one keystroke error - and it will fail. By the way, even developers make mistakes. The next image shows what happened as a result of a simple syntax error, that was easily corrected. Now, let's look at the editor for the contact page. There is still work to be done. Select her site and open her contact page in the editor. Take notice of the name. Remember the php? Where did this Kaptcha come from? Up here. We only need 1, so we will cancel. This is an image she placed. You know how to do that. Right? She grabbed this button from up here. This text input field has a bit of javascript that is critical to the success of the Kaptcha - and also the php action. A developer wrote this snippet, but look and learn. The next time Iama needs to add a Kaptcha, she will have a much better idea of how to begin. This can be her working example. Interesting. The actual Kaptcha does not have a javascript event. ... but the image, does. Notice that Iama is not changing anything. She is inspecting. She is learning. And here is the meat, so to speak. When a person clicks the button - it sends all of the data plus it activates the php Action. double click to move. Iama cleaned up a couple of minor text items and will notice more in a minute, but right now - let's preview and do a quick test. So far, so good. Now she will check her table to see if the data from the form found its way correctly, and also check her email for a message. After submission, she was redirected to her home page, as requested. Hello, Joseph. There in a heartbeat. Yes, Iama had success, but needed the help of a developer. Now, she should go back to her page and try several submissions, including at least one that causes the Kaptcha to fail and another that does not submit required items. This testing is critically important. If she finds bugs, she should contact the developer for help - then watch carefully for the ensuing corrections. This is how she will learn and eventually, achieve a degree of independence. The web system has been designed for people that want to learn and improve their skills for todays high-tech world. We hope that you fall into that group.
In a previous video, Iama created a simple three page website. One of those pages was called Contact and will be the page that a user would enter some data on a form - and send to Iama. Iama wants to keep track of all the people so that 3 months from now, she can send a newsletter. To hold this information, Iama will need a Table. She does have a special request, though. ---- Please don't make your explanation complicated. I really don't need a headache - today. --- No problem Iama. It will take you less than a minute. Click Tables. ---- Select New - database object - then, Table. --- Build Table -- The Table Editor will open. --- Scroll down, and you will see a button for - New. That is used for creating a new Column in your Table. ---- We only need to create a few columns. Please watch closely Iama. It isn't difficult. ---- That is all you will need. You can always edit the Table structure later. ----- Click - Save, then name your Table. ------ We don't have any data yet, but we do have a structure. We will go to the data-viewer. ----- Iama, how is your head? ----- I feel fine, thank you. That was so easy! ----- We didn't try to explain the many possibilities that were available to Iama from within the Table Editor - and we also avoided droning on about the auto-generated S Q L. She has a Table, and she will able to increase its capabilities as she learns more about the web system. It is not necessary - or even possible - to learn everything, immediately. ----- If I can build a post-gres- q- l Table, so can you!
My name is Iama - and I am so glad to meet you! If you follow me - I'll follow you!
How to add a Youtube Video ---- We created a page first - without a video. Now, we will add the video. ---- Open content ----- Select Gear - and then - Youtube. --- Resize it. ---- Give it a description ---- Check hand - cursor ---- Check - Load in Background ---- Check play in High definition ----- Enhanced Privacy means - no you-tube cookies ----- Yes - for related videos ---- Show border ----- Get the video I D - and paste it here. Just the I D! ---- Click execute - and view in your browser. ----- Iama would be delighted if you followed her. ------
Find a web site feed you like and copy the URL. Next, open the Editor. Select Gears from the Tools menu Select Display feed Align and resize the object Watch closely for the orange arrow. The most important item is pasting the URL. Without it, you will fail. Change some colors. Click execute Each time you click Execute, your revised XML will be saved to the server and be instantly available for view. Easy. Real easy.
Create a History Table and more! ---- In a previous video - Extend the Power of Google Apps - we showed how you can create a new S Q L table - plus - import the data from that spreadsheet into the Table - all in one, fell swoop. In this vid, we will show you how to make a minor edit to the table, the Save - As, which will create a new table with a very similar structure. We will use this new table as a backup table that will record all data edits made to the original table. If someone makes a data entry mistake, we can fix it by looking at our history table. To do this, we will make a P G S Q L trigger function and add a Table trigger to the original Table. ---- Yes, it does sound a bit confusing, but inch by inch - everything is a cinch. --- We will locate the original Table and open the Table Editor. ---- Go to Actions, edit table structure. ---- Right now, our Table has nine columns. We are going to use the Save-As feature, to create our backup table. We want the backup table to have one additional column which we will call Operation. This column will hold one of the following entries: Insert - or Delete - or Update.---- So we will add a new column, then do a Save - As - to create our backup table. ----- Please watch closely. We will name our backup Table, then click Save As Copy. The original table will not be altered, but we will have our backup Table ready for future use. ----- The backup table was created and now, we are working on that table. No additional changes are required for the moment. ---- If we refresh the Y Tree, we will see the new table in the list. ----- We have completed Step 1 and created a backup table. Our next step is to create a P G S Q L Trigger Function. After that, we will apply the Trigger function to our original Table - then finally, we will test. Always, always, always, test. No, I did not stutter. ----- Create a new function, and call it: E E checker ------- This is a type of function called a trigger function. If an operation happens to a table, then this function will run. Otherwise, nothing will happen. ----- This function type is called - Volatile, because it will cause an actual change to be made to the database, in this case - our backup table. I type 7 words per minute, so In the interest of brevity, I will paste the text of the function. We will go through it in a minute. ------ We have not yet tried to save, but let's look at the S Q L right now, before we save. ------- You can see that the web system automatically names your trigger, but nevertheless, you are the one that will do most of the work. You may need a developer's assistance in writing your first few trigger functions. ----- Step by step. If something happens to our original table, then something happens to the backup table. The long-winded version is this: If a person tries to delete a row from the original table, then the data in that row will be first be inserted - or said differently, copied into our backup table. Next, if a New row is Inserted into our original table, then that new row will also be put into our backup table. Finally, if someone updates the information in a row of the original table, then the old values will first be put into the backup table, along with the word update. The word update will be put into the column in the backup table called Operation. Don't be alarmed if you do not immediately understand as it will make more sense after we test - and you can see what happens. Now click - Create. ----- Before I forget - the t g underscore o p - is part of the p g s q l trigger language. It is short for trigger operation. ----- Now that we have saved - let's look at the s q l and you will see that it is all there. By the way, if our trigger function had an error, we would not be able to Save. Instead, an error message would spit out. ---- We have completed our second step, create a trigger function. Now we need to go back to our original table and apply this function. This is called creating a - Table Trigger - which is separate from creating the actual trigger function, our just completed step. The Table trigger, will run our Trigger function. ---- Go to the Triggers - tab. ---- Click New. ----- give it a short name ----- This Trigger fires - After - someone inserts, deletes or updates.. ----- It will fire for each affected row ----- Now we must designate the trigger function that we wrote earlier. Our table trigger will run this specific, trigger function. ---- Let's check the auto-generated S Q L, then try to save the changes. ---- Wonderful ----- That concludes our third step. Now lets' test our Table trigger and trigger function. ----- This is the Table we imported from Iama's Google spreadsheet in a previous video. Let's test our new trigger function and table trigger. First, we will add a row, and save. Then we will update a row, and save. Finally, we will delete a row, and save. Then we will check our backup table to see if our various changes were properly recorded. ----- We will update her name. ----- To delete a row, move your cursor over the number, and right-click . More options will appear. ---- The row is highlighted as pink and will be deleted when you click - Save. So we have inserted a row - David Dingle. Then we updated a row - Beatrice Baker and finally, we about to delete a row - David Dingle. David failed to impress us during his 20 seconds as an employee, so we will terminate him. ------ We set up the backup table in a separate tab of our browser. We will go to it now - and use the Y-Tree to refresh its view. We should see our backup table - with an appropriate history of our changes made in this, our work table. ----- Let's refresh our view. We should see our changes. ---- Well isn't that super-sparkley! We have our history table and it is working quite well. Now I'll scroll to the right. I want to see the column - Operations. ----- This is exactly what I wanted to see. Our history has been recorded and, we know the type of change that was made, for each row. ----- Iama watched this video three times, then did it herself. ----- I'm not a geek - but - I did it! ---
The Web System includes a print design tool that we call, Templates. Templates were the very first web system tool and are used to create pee dee effs and also used for variable data printing. The template tool is now 9 years old and is being completely recoded. It will be a suitable tool for professionals that currently rely on Quark or In Design. Look for updates to begin in the first quarter of 2013. The revised version will be amazing. Bridget, I have a question. What is it little one? Why are we in here on a Saturday making videos about Templates, when we know the video will be placed in the dumpster in a couple of months? I mean, really. Believe it or not, they are still the best print design tool on the web, particularly for variable data printing. But I agree, I think we should go at ramming speed. A 5 year old child can make a template and would not want or need a series of tiny explanations. Does that mean we can forget about trying to fix all those infuriating mouse clicks and crazy mouse movements? Sometime Adobe Captivate makes me want to scream! Yes, I approve. When the revised Template tool is ready, we will make a grand series of vids That's it for this vid. The Template tool, though old, is still the best on the web. Extraordinary improvements are underway. We are about to raise the bar. The new Template tool will be hot. If you are an investor, you'd better contact us now. Later, will be too late.
In a previous video, a developer helped Iama set up a contact form on her website that would automatically enter data into a table, called - Contact. Iama wants to increase her available set of data and pull in a list of her existing customers, which she has saved from an excel spreadsheet into a C S V file. She has already set up a Table for her customers, but right now, there is no data. Her customer table has more columns than her web contact table and, she has added even 1 more column, called contact type. She wants to differentiate between web contacts and existing, customer contacts. She has decided a customer contact will be type 1, and a web contact will be type 2. She will try to use default values - so that she does not need to data enter a 1 or a 2. She hopes it will happen automatically. We will go to her new customer table, then look more closely at its structure in the Table Editor. This table has more columns than her web contact table. Focus on the column - contact type, and you will soon see the usefulness of using a default value. She has assigned contact type a datatype of integer, and made the default value a 1. She hopes that when she imports her c s v file, it will automatically enter a 1 into all of the rows of this column. This will save her time. She decides to add a note and save her changes, then go back to the view of her empty customer table, at which point she will begin to import her c s v file. She's ready to begin the import process. Select Import. Locate the c s v file on your local drive. c s v is a generic term. If your file has a delimiter other than comma, the web system won't falter. We don't want to import the column header. The real data starts on row 2. There. That's better. Iama pokes around a bit. The field mapping is not usually correct by default. It is this time, because Iama happened to create her table with the same field sequence as the c s v file. Usually, you will need to adjust the field mapping. Go ahead Iama. Let er rip. Terrific - and quick, too. I'm most inerested in the column contact type. Was a 1 automatically entered during import? Iama's idea worked, a 1 was auto-entered. Now it makes sense to go back to the original contact table and add a default value for web contacts. She will make the default a 2. We will zip through this and so you know, what you are about to see is much closer to normal work speed. A 2 was auto entered. Good stuff. The crowd begins to chant, "Go Iama!" Oh look, they are doing the wave. So far, I ama has accomplished 4 of her goals and now she has enough meaningful data to create a worthwhile query. I have said it before but it bears repetition; you cannot learn everything in 1 day. Iama is willing to experiment and learn. Let's follow her lead. Our goal in the next exercise is to write a query that will combine the essential elements of both of our tables, without disturbing the data or the underlying structure of those 2 Tables. This could be done manually, but what if there were several thousand rows in each Table? We created our query a few moments ago, so we will look at it, then reconstruct the steps. This is what Iama wants, a simple combined list, sorted so that she can see the type - 1 or 2, along with those items she initially considers to be most important. Now we will look at the query builder for this particular query. The Query Editor was created specifically for knowledge workers. An experienced postgresql developer will probably prefer direct access to P G, with all the bells and whistles. This editor has been slimmed down such that it should feel comfortable for anyone that has used access or filemaker. A true dev should inquire about installing our server software on their own box. We will open up some room by collapsing the top menu. As you can see, there are 9 tabs. Trying to digest the power of sql can be a daunting task. Breaking it down into tabs helps to make it more manageable. Since this query is complete, we will jump directly to the sql tab and show you the code that was generated with a few clicks and a nominal amount of keystroking. ouch What did you say Iama? Oh nothing. Sorry. Don't be intimidated. Minor pain, major gain. Click the green diamond and more options will appear. You can see that we have a full join. We can edit the join conditions. In this case, it was necessary. Editing the join conditions can make the query more efficient, and quicker. It's like walking in the front door of the mall, instead of walking around the entire mall. Now I get it! Yes, there are 2 diamonds, but they both reference the same condition. We will look at the expressions tab, which is what we will use to further select and manipulate the data. Double click to launch the expressions editor. There are many built-in functions. Coalesce is one of them. All of the columns of our 2 selected tables are available. Double click to spit them into the workspace. This one is useful. You may recall that our customer table did not have full name. It had first and last name. Here, we will once again use coalesce, but we will also concatenate first name and last name with a space, producing a full name. The double pipes connect one chunk of text to the next. Notice that this manipulation is nested within coalesce. Here we broke it apart at the comma. Makes it easier to see the logic. Watch. Any, where conditions? Nope. Nothing interesting until Order by, Expressions Order by, is another way of saying, sort order. A look at the sql tab. Does it make more sense Iama? Yes, but I think I will need to experiment. When you test a query, you are in your own sandbox. Nothing will happen on the server until you save. You can drag columns around and even change the sort order, without affecting the query. If you like what you see, you can go back and adjust your query accordingly. This makes for a very useful educational tool. Time to go back to our view of the query and then, redo the entire query from scratch. I will avoid typing where possible and use copy plus paste. I am a miserably slow typist. Now I'll reproduce the query that created this output, give or take a keystroke error. Notice that we have further simplified the query editor by breaking out the major type of operation. In each instance, the editor is virtually identical. Our query is a - select. We will not be altering the data in the tables. Away we go. We see the same results. What isn't necessarily intuitive is that this is live, real time data. If a person is on Iama's contact page and sends her a message, it will appear in this view immediately, upon refresh. In a future video, we will show how to lay this query down in the print editor, generate a pdf, put the pdf on a schedule, so that Iama will receive it every day in her email at a specific time. Today was a good day. I learned several new skills.
In this video, Iama will show you how to set up a template for variable data print. She will assign a datasource, merge datafields and quickly demonstrate how she layed out the objects. In addition, she will quickly show you how to create a QR barcode and how to place it on a Template. Finally, she will spool a pdf and display in the main frame of the browser. Variable data printing is a powerful method of marketing with a much higher success rate than traditional printing. The web system is already the best on the web for VDP. The upcoming Template Editor will raise the bar. Iama created a new template called - Simple. It took her about 30 minutes to do the layout, including bezier drawings. She will quickly review, but most important for this vid is the data. Focus on the data. This is how she selected her datasource, which is her customer list table. Click the lightning bolt and the columns of her table appear. If you double click a field, it will be placed onto the template. Iama will use a slightly different method, that will allow her to merge the data fields into text. Iama can apply data formatting right here, if needed. Let's say you wanted to display money in U S dollars, with cents. Trying to this in Postgresql is a bit messy and difficult, but applying formatting here is easy. Since it is only text in this template, she does not need to worry about formatting. She will show you how to lay down some normal text, then merge a data field into the text. The key is to use right click with your mouse. There it is. We don't want this on the template, so we will delete it. Iama used a variety of tools for this layout, including text, bezier draw, image, rectangle, line, oval and a chart, for the QR code. She will click a few items. Maybe pay attention to the properties palette. We will show you how she created this QR code, later in the vid. The QR Code loads onto the template as a type of chart. We set up the customer address fields for a number 10, window envelope. After tri-fold, the address should display through the window. We only eyeballed the position. You must print, fold and test by placing in an envelope. Print is less forgiving than a web page, particularly when postage is involved. Let's preview. We should see multiple pages generated. ... and indeed, we do. Back to the editor. Time to create a pdf. A pdf with images usually takes about 1 second per page. We will go to Reports and wait until it is ready, In progress. Let's take a look. Ginger peachy. We will check a few, then show you how Iama created the Q R Code that she placed on the template. To create a new, Q R code, you would go to the top menu, Tools, then select Q R code. However we will go directly to the code that Iama created earlier. This code is of Google, but if Iama was trying to sell a product, she would put the website address of the product. When a smart device was pointed at the code, it would go to the webpage. The rest is obvious, so I will stop chatting. Include variable data printing in your business processes. The best on the web is provided by the web system and soon, it will be much better. The founder of the web system has 25 years of experience in vdp. To put it gently, he is a fanatic.
Do not underestimate the power of personalization. It works.
This was almost too easy. Iama created a report for this video so we will go directly to the template and do a quick review. Iama did not need any assistance. Not a bit. The red area is the title header. It will only appear on the first page of the report. The page header will appear starting on page 2. The title header carries precedence for the very first page. You can add text labels to act as column identifiers for both the title page and the header. We did not bother, as there are only 3, obvious columns. The body has been assigned a datasource which is the result of Iama's query. This was also shown in previous videos. Laying down data fields was also covered in a previous vid. The page footer is trumped by the title footer for the first page and will be displayed beginning on page 2. This is a new item, called a Macro. Watch. Well, I botched this a bit and accidentally deleted a slide. Anyway, I am about to preview but you will be denied the excitement of seeing the mouse move to the preview button. Because there is only 1 page for the report, we will not see the page header or page footer. However, we correctly see the title header and title footer, along with the macro. Time to run the p d f. You know how to click that button, I hope. We began with a simple contact form and table, added an additional table and created a query, then a report. All that remains is to schedule the report to be sent to Iama's email by using the report scheduler, which will be in the next video. It all seems to be coming together. I am starting to - get it.
In this video, we will cover dealing with a large image. A huge image. An image of Iama. This is definitely my favorite video. Enjoy. Bridget, this is- not - over. pdf-x technology allows one pdf - to reference a different pdf. This can be very helpful and in this vid, we will give one usage example. Today's printing hardware can print with a very high resolution and as a result, an image that looks perfectly fine when viewed in a browser can look abysmal when printed. Images may be blurry or have a bad case of the jaggies. You don't want to waste money printing with low resolution images as the results can be costly and unpleasant. We have a large image of Iama. She is not particularly fond of this image and therefore, we will use that image in this video. We will create a 1 megabytes pdf of that image, then reference that pdf in a multiple page, variable data pdf. We want her image to be crisp, but we also want to reduce the file size. Using this reference method, we will reduce the total size of the generated pee dee eff by a significant factor, while maintaining quality. We will look at the large image in the file viewer. The image is a png, with no background. Iama, in her dark pants-suit with a dark background is nearly invisible. Later, we will see that she is enormous. Try to remember this object. Later in this vid, we will create a pdf of Iama, then export it to files. It will be our pdfx. As long as we are here, we may as well show you how to use the huge image of Iama to create a smaller image that could be used on the web. I'll be quiet. You can investigate and test on your own, later. You should have the idea. Now, to templates. We will look at a template of Iama, the huge. Look at her, she is gigantic. Like something out of a movie. She would be more than 20 inches high. I have seen smaller billboards. We created a pdf earlier, so there is no need to create another. Notice that if we click the page, then try to wander away, we will receive a reminder. There she is. The earth trembles at her approach. We will allow ourselves a quick look, then show you how we copied this pdf to files, an important step. We put this in files for a good reason. You can use this technique with a pdf that was created outside of the web system. You would upload any external pdf to files, and follow the same steps you see in the rest of the video. There it is. Now I'll show you how I added the pdfx to a variable data template. I set up a variable data template and wrote an informative note. Iama's friends will be pleased. A quick review, covered in a previous video. O K. Wake up again. Watch for how I added and assigned the pdfx. I chose the file, Iama is huge. I'll delete it. It's already at the top of the page. I created a pdf earlier, but as a reminder ... It should already be available in Reports. Notice that the image of Iama, the huge, is not visible. We must do a bit of work in Adobe Reader first, and this setup will be done on your desktop. Download the variable data pdf, with dependencies. It will snag both files, and create a zipped folder. Download the zip. Locate the zip. Unzip it. Both files are present. Good. Open the small, variable data pdf. Iama's image IS there, and suitably petite. When printed, she will be a very high resolution. However, if you do not follow the next set of procedures, you will be forlorn. Iama will not show - or print. In Adobe Reader - open preferences. Click on Page display. Select - Always. Click Browse for Location. Locate the folder that contains both of the files. Click Choose. Almost done. Click Security - Enhanced, then once again add the path to the folder. One last time, select the path and you are done. Security overkill in my mind, but you will now be able to print the variable data pdf, with the huge Iama image. If this VDP file had been 1 thousand pages - and you had used the clunky method, you would have a 1 gig pdf, eating up space. Generation would have taken a very, very long time. Please follow me to the next video.
One advantage of the Web System is being able to integrate and act as a SaaS Aggregator for other online Software Services within your Account. ---- If other online services have incorporated Google ID, then we are working on common ground. ---- If those other online services allow you to Save to Google Drive online - or to your desktop, then the Web System can pull those objects into your Account. ---- After you pull those objects into your Account, you will be able to re-purpose and expand upon their lonely usefulness. An image can be incorporated into other content, a csv file can be brought into an SQL Table, etc. ---- In this example, we demonstrate setting up the image editing software as a service called Pixeler. We log into Pixeler from within the Web System, work on an image and then Save to Picasa. ---- Since the Web System can sync with Picasa, the edited image is immediately available to include in a system Website or a Print Design. ---- As you move about the web in search of SaaS offerings, make sure that you also look for Google ID log in capability. ----- Mouse over Settings - Then click Manage Account --- Click details ---- Type the name here. ---- Type the URL here. ---- Click Add New ---- Click Save ----- Mouse over SaaS ---- Select pixeler --- Click pixeler Editor ---- Click Login ---- Click Login with Google ---- Click File ---- Click Open Image Library ---- Click New Folder ---- Click Simple ---- Click Open ---- Work in pixeler ----- Type text here. ---- Continue working in pixeler ---- Click File ----- Click Save ----- Select Picasa ------ Click OK ----- Now that the image has been Saved to your Picasa Account, it is immediately available from within the Web System. ---- Now you can instantly add the image to Website pages or include in Print Design projects. ---- Use the Web System as an SaaS Aggregator & when reviewing other sites capabilities, always look for Google ID login capability. Its presence will expand your capabilities. ----- Thank you for your time!
The Web System Audio Transcript There is no audio for ACL (Access Control List) or audio transcript. You must watch the video.
It only takes a few moments to set up a web payment system. You will need to get a Google Wallet Account. The web system does not keep credit card info. We leave that to Google.
In a previous video, we showed you how to make a report of live data of a postgresql query. In this short vid, we will show you how to schedule this report to be sent to your email, on a schedule. This is called a Cron job. Go to the report that you would like to schedule. The 2 relevant tabs are current schedule, and current jobs. Click report, which is Iama's contact report. Notice that schedule status. It is not currently scheduled, so click it. Click enable schedule. She wants to receive it on a weekly basis and attached to an email. She wants it to be sent only to herself, but could include other parties. Click change, to commit the instruction. Go to reports, to confirm. There it is. Done. Now a quick look at the scheduler. The scheduler is a separate tool which can be found from the top menu. It will display any queued Cron jobs, which may include your current settings for backing up GMail, Picasa, Google docs and calendar, along with any php action scripts that are running on a schedule. Iama set up her Google Docs backup in a previous vid called - extend the power of Google apps. This cron job has been silently backing up her docs, since that day. Don't forget that you can set a schedule for the execution of your php scripts, under the properties tab of the php actions editor. Since they actions editor includes postgresql commands to execute query, truncate table, etcetera, you can have control over your entire data and content management environment. When you schedule an action here, it will be also displayed in the scheduler. This concludes this video and in summation, the web system includes cron job capability. Tick - tock. Set the clock.