WelcomeWelcome| 00:00 | (music playing)
| | 00:04 | Hi! I am Gini Courter and I would like to welcome
you to InfoPath 2013 Essential Training.
| | 00:10 | In this course I will show you how to
use Microsoft InfoPath Designer to create
| | 00:15 | powerful forms that are easy to use.
| | 00:18 | We'll have templates that use rules,
to validate the data our users enter,
| | 00:23 | against schemas that we will
create as we build our forms.
| | 00:27 | Many organizations use InfoPath exclusively
with SharePoint, so you will learn
| | 00:32 | how to publish your form in a SharePoint library,
so users can complete it using a browser.
| | 00:39 | But we'll also create forms that can be
distributed using email or from a network share.
| | 00:46 | Whether you are new to InfoPath Forms,
I'm going to provide you with an
| | 00:49 | in-depth look at how to use Microsoft
InfoPath Designer 2013, to create forms
| | 00:55 | that build business solutions.
| | 00:57 | Let's get started.
| | Collapse this transcript |
| What you can do with InfoPath| 00:00 | In case you're relatively new to InfoPath
Form Development, I'd like to provide
| | 00:04 | an overview so you can think about
what InfoPath can do for you in the place
| | 00:09 | that it might have in your organization.
| | 00:12 | Well some of us create forms for our own use.
| | 00:14 | Many of us create most or all of the
InfoPath Forms, we create for others to use.
| | 00:20 | And even if you begin by thinking that
you're creating forms for your own use,
| | 00:24 | if they are grand looking forms and you
have other colleagues who have similar
| | 00:28 | work or similar functions they are
going to say, I wish I could do that and now
| | 00:32 | you're creating forms for your
whole department or your entire team.
| | 00:36 | So before I say what can InfoPath do for me,
it's helpful to think what can InfoPath do for my users?
| | 00:43 | What can InfoPath do for my colleagues?
| | 00:46 | What role does InfoPath have in my organization?
| | 00:49 | Now on screen you're seeing one of the
forms that we will create in this course.
| | 00:53 | This is called the Web Post Request Form.
| | 00:55 | We'll create other forms as well and
you don't need to know the details of this
| | 00:59 | one, but this form isn't even
finished, and even in its raw state, it's a
| | 01:04 | beautiful form compared to anything
you can quickly create in Word, Excel,
| | 01:08 | Acrobat or other tools that you use to create forms.
| | 01:12 | This is the user experience of the form.
If they're using the InfoPath filler
| | 01:16 | software, they have the ability to
go in and type text, they can use
| | 01:20 | dropdown list, they can select date, they can
insert hyperlinks, click buttons, insert ink drawings.
| | 01:31 | Whatever they would like to do
they can manage that right here.
| | 01:35 | So this is a powerful form that allows
users to insert not just text data but
| | 01:40 | other types of data and even attach entire files.
| | 01:43 | When your users want to provide data,
this form is a great mechanism for that.
| | 01:48 | But when we look at the organization,
or our user community as a whole, there's
| | 01:52 | even more functionality available
simply because we're using InfoPath here
| | 01:57 | rather than some other tool.
| | 01:59 | We already can see that users will be
able to fill out the form, but they could
| | 02:02 | do that with Word, or Excel, or a form
that they scribble information on, on a
| | 02:07 | tablet or the back of a napkin. So what's next?
| | 02:09 | Well, one of the most amazing things
is that they'll never have to print this
| | 02:13 | form and put it in an envelope
in most of our use scenarios.
| | 02:17 | They can simply click a button that
says Submit and send this form off on its
| | 02:22 | way to a distribution list or another
user, or to a folder in Microsoft Exchange
| | 02:27 | configured to receive posts.
| | 02:29 | They can submit this completed form to a
SharePoint library and if you provide a
| | 02:32 | connection they can send it to a database.
There are some other methods as well.
| | 02:37 | And then finally, if you're using
SharePoint as your form publishing location
| | 02:41 | your users will have the ability to
aggregate form data and do some analysis,
| | 02:46 | something that they can't easily do with data
collected from forms created in Excel or Word.
| | 02:51 | In fact, if you want to be able to
analyze aggregated data that was originally
| | 02:56 | entered in Word or Excel, you will begin by
writing some custom code to extract that data.
| | 03:02 | With InfoPath we don't have to do that,
and it creates lots of wins for our users.
| | 03:07 | So what users can do with InfoPath is
fill out form, in InfoPath Filler or in a
| | 03:13 | Browser, such as Internet Explorer.
| | 03:16 | They can submit the form by email,
or to SharePoint or to a database.
| | 03:20 | And then, if you're using SharePoint, they
can aggregate and view their form details.
| | 03:25 | And what can you look forward
to as an InfoPath Form Developer?
| | 03:29 | Well this is the preview of the form,
let's look at our Design View, here we see
| | 03:35 | all of the different controls that we
can use to create a rich user experience,
| | 03:40 | all of the formatting that's available.
| | 03:42 | The ability to insert different
types of Layout Tables, and Pictures to
| | 03:48 | Design our Pages, to connect to a
vast array of data sources either to pull
| | 03:54 | data into the form like a dropdown list, or to
send data back out of the form once it's done.
| | 04:00 | We can create rules to determine how
things are done automatically within our form.
| | 04:05 | And then, over here on the right we
have a Field list that we create as we
| | 04:10 | are creating this form.
| | 04:11 | InfoPath Forms capture data as XML,
extensible markup language.
| | 04:16 | XML is a standard that crosses many
different types of databases and many
| | 04:22 | different types of platforms.
| | 04:24 | It doesn't matter, if you're on a Mac,
or if you're on a Windows PC, if you're
| | 04:28 | running Linux, you have access to XML.
| | 04:31 | And so, XML is our generic standard
for exchanging data between different
| | 04:36 | organizations, between different individuals.
| | 04:39 | All of the controls here in InfoPath are
made to capture XML data and this Field
| | 04:45 | list is actually description of an XML file
called the schema that gets created
| | 04:49 | as you and I worked together.
| | 04:51 | Microsoft InfoPath Designer 2013,
which we see here, is a powerful Form Design
| | 04:56 | tool and it will allow you to connect
to a wide range of data sources to design
| | 05:01 | and theme your form documents to use
its rich array of controls to capture data
| | 05:07 | and to present choices and options to your users.
| | 05:11 | Microsoft InfoPath Designer isn't
just a tool to create the most amazing
| | 05:15 | forms you'll ever make.
| | 05:17 | It's a tool that will help you create business solutions.
| | Collapse this transcript |
| Using the exercise files| 00:00 | If you are a premium member of the
lynda.com training library or if you are
| | 00:05 | watching this session on DVD, you
have access to the exercise files used
| | 00:09 | throughout this title.
| | 00:11 | All of the exercise files are in one
folder called exercise files, I have it
| | 00:15 | here on my desktop and if you double-click
the exercise files folder you'll
| | 00:19 | notice that it contains a folder
for each chapter that we actually have
| | 00:23 | exercises in, followed by two folders
named Images and Source Files.
| | 00:29 | When we're working in a chapter,
you'll open up that Chapters folder, for
| | 00:33 | example Chapter 08, and you'll find
the template files that we are using,
| | 00:37 | 08_01, 08_02, 08_03, 08_04, and some chapters
have additional files we only use in that chapter.
| | 00:43 | For example, here a Sample Word File.
| | 00:46 | There are a couple of logos that we use
in different forms and so those Images
| | 00:51 | and a few others that you might
care to use are here in our Images folder.
| | 00:56 | You can also choose to use your own images
files if you wish, you don't need to use these.
| | 01:00 | Then we have a file folder called
Source Files, and you'll notice that the
| | 01:05 | Source Files folder is actually empty.
| | 01:07 | Later in the course will be taking the
source files that are used to create an
| | 01:11 | InfoPath template and unpacking them
out of the template. There are about a
| | 01:16 | dozen files for each and every one of these
templates that you see, like any one of these.
| | 01:21 | So when we unpack them we need a place
to put them, and that's what that Source
| | 01:25 | Files folder is for.
| | 01:26 | For any movie that includes exercise
files, a banner will scroll across the
| | 01:30 | screen to show you what file I
have opened for that particular movie.
| | 01:34 | And if you want to work along with me,
simply open the Chapter folder, and
| | 01:37 | open that same file.
| | 01:39 | If you don't have access to these
exercise files, don't worry, we are going to
| | 01:42 | build our InfoPath Forms from scratch.
| | 01:44 | So it's easy enough for you to begin
when I do and work through the course
| | 01:49 | creating the same form that I create.
| | 01:51 | At the start of some movies I'll tell
you that I've changed the form since the
| | 01:55 | last time you might have seen it, and
I'll point out what you need to do to have
| | 01:59 | your form be in the same starting point that mine is.
| | 02:02 | At the end of the course, I'll show
you how to convert Word and Excel forms
| | 02:05 | into InfoPath Forms.
| | 02:07 | You can use any Word or Excel form
you have on hand for this exercise
| | 02:10 | if you don't have accessto these exercise files.
| | 02:13 | And if you don't have a Word or Excel
form you want to convert now, no worries.
| | 02:17 | When you have one later that you do want
to convert, come back and view the steps
| | 02:21 | again, I'll still be here.
| | 02:23 | Now that we know where we're going, let's get started.
| | Collapse this transcript |
|
|
1. Introducing InfoPath 2013Understanding the InfoPath 2013 programs| 00:00 | With Microsoft Office 2013 there are
two separate InfoPath programs that do
| | 00:05 | two different things.
| | 00:07 | One is the InfoPath Filler the
other is the InfoPath Designer.
| | 00:12 | The InfoPath Filler, which we see
here, is simply used to fill in forms.
| | 00:16 | That's all it does.
| | 00:18 | We have three ribbons, a save button,
we have the ability to click and fill
| | 00:24 | items out, we have the ability to tab.
This particular form can be completed using inking.
| | 00:32 | So I can ink in different places, if I wish.
| | 00:36 | I have always familiar controls available
to me; text boxes and date pickers from
| | 00:41 | places like Outlook, dropdown list,
which we see throughout Windows and then
| | 00:45 | some other types of controls that we
aren't as used to, but we're going to
| | 00:50 | figure out how to use really quickly
right away, because we have like click to
| | 00:54 | attach a file, and we have buttons
that can expand our form, like an options
| | 00:59 | button, and then we have the
ability to insert pictures and so on.
| | 01:03 | So we can fill a form out, we can save
the form, we can check spelling on the
| | 01:08 | form, use basic, Find, Replace, Cut,
Copy, Paste, we can insert in some
| | 01:14 | particular areas of the form, things like
Tables, and Pictures, and Horizontal Lines.
| | 01:20 | And finally, when we all done with this
form we can click Submit and send it on
| | 01:24 | its way to whatever destination has
been baked into this forms design.
| | 01:27 | But the limit of what I can do in
InfoPath filler is exactly what I have shown
| | 01:31 | you, I can fill in the form.
| | 01:33 | Now let's switch to the same
form in the InfoPath Designer.
| | 01:37 | So here we're in Design view and we
have all of the tools here at our disposal
| | 01:42 | that were used to create
this form and many, many others.
| | 01:44 | On the right we have a Fields list, at
the top we have a Ribbon with not just
| | 01:49 | three tabs but an entire array of tools
that allow us to design, to connect
| | 01:54 | to data, to do everything else we would
need to do to create just a world-class form.
| | 02:00 | So when you go to your Start menu, or
if you begin typing InfoPath in Windows 8,
| | 02:05 | and you choose Microsoft Office, if
the only thing you see is InfoPath Filler
| | 02:11 | then, you need a little more under the hood
to be able to work in this course.
| | 02:15 | If you don't yet have InfoPath Designer,
speak with the folks in your information
| | 02:20 | technology, or information services
department, and make sure that it's
| | 02:24 | installed, so that you can join us as we
design powerful InfoPath Forms using
| | 02:30 | InfoPath Designer 2013.
| | Collapse this transcript |
| Opening InfoPath files| 00:00 | There are two different applications
that we can use to open an InfoPath Form.
| | 00:05 | One is the InfoPath Filler, which is
used to fill forms, and the other is the
| | 00:09 | InfoPath Designer that's used to design new forms.
| | 00:12 | Every single file extension that Windows
recognizes can be opened by one or
| | 00:17 | more different programs.
| | 00:19 | For example Microsoft Word documents
can be opened when you double-click them
| | 00:24 | with Microsoft Word, but WordPad documents
can also be opened with Word or with WordPad.
| | 00:29 | Microsoft Word can open Word documents,
Word templates a whole wide range of
| | 00:34 | other types of files.
| | 00:36 | Excel can open Excel files, but also
comma (,) separated values or CSV files
| | 00:40 | and for us the defaults file extension for
Microsoft InfoPath says open me in the form filler.
| | 00:46 | Now this makes sense when I double-click
on a file most of the people
| | 00:50 | double-clicking will want to open it to fill it in.
| | 00:53 | So this default behavior works very well.
| | 00:56 | Notice that Microsoft InfoPath creates a
new form, Form1, based on the template,
| | 01:00 | and my user can begin entering information.
| | 01:04 | What if we want to open in Design view?
| | 01:07 | Well if I want open in Design view
I have a couple of choices.
| | 01:10 | One choice is to right-click, and
because this actually has a designer
| | 01:15 | registered with Windows, I can
simply choose Design and open this form
| | 01:19 | in InfoPath Designer.
| | 01:21 | Here I am in Design view for my WebPostRequest.
| | 01:26 | The other choice I have is to actually launch
InfoPath Designer separately.
| | 01:31 | So we can go to Start, and I can begin
typing info, and notice that I just have
| | 01:37 | to get past the In and get one more
letter and my choices are two, here is the
| | 01:41 | Filler but if I want open Designer,
I can simply choose Designer.
| | 01:46 | Then I can say in the Designer, I would
like to open a particular file out of
| | 01:51 | my set of exercises in Chapter 01,
the WebPostRequest, and I'll be opening
| | 01:57 | this in Design view.
| | 01:58 | So this is the quick way to be able
to open InfoPath files; double-click any
| | 02:03 | file to open it in the Filler, right-click
and choose Design to open it in the
| | 02:07 | Designer if you're out in Windows, or
simply launch InfoPath Designer and then,
| | 02:12 | go open the files, you want open.
| | 02:14 | Once you've opened a file, the next
time you want to go in and see it, you can
| | 02:17 | simply choose Recent and you'll get a whole
list of the files that you have used recently.
| | 02:22 | Additionally, if you're working on one
or more of these files you can pin one to
| | 02:27 | your list, in the same way you can in other office applications.
| | 02:31 | So right here for example, I've pinned these two files.
| | 02:35 | So I can come back here now, just open the
designer, and access the files I wish to access.
| | 02:41 | When I'm done working on these files, I
can simply unpin them and let them drop
| | 02:45 | back into the list and ultimately drop
off the bottom when we're done with them.
| | 02:49 | Whether you're working from Windows,
or you've already open InfoPath
| | 02:53 | Designer, it's easy to open the files that you
need to work with in InfoPath Designer 2013.
| | Collapse this transcript |
| Starting InfoPath Designer 2013| 00:00 | We're ready to create a new form
template so let's start InfoPath Designer.
| | 00:04 | I'm here in Windows 8, so I can just
start typing InfoPath and there is the
| | 00:09 | InfoPath Filler, here is InfoPath Designer.
| | 00:11 | I'm going to be using the Designer a lot in this course.
| | 00:14 | So I'm going to right-click and pin it
to start, we get put over here by Windows.
| | 00:21 | I am just going to drag it down
here, and start InfoPath Designer.
| | 00:24 | When I start I'm backstage for InfoPath
and I have available to me the options
| | 00:30 | to open recently edited templates, to
open a template that somebody else gave
| | 00:35 | me, or that I saved somewhere else, but
I haven't opened recently, or to start
| | 00:39 | new, and we're going to look at
the new available form templates.
| | 00:42 | They are arranged in categories and the
first category are our popular form templates.
| | 00:48 | There are five types of these.
| | 00:49 | The first is for SharePoint list. I
want to talk to you about SharePoint list
| | 00:53 | and SharePoint Form library right away,
because they're very different, and
| | 00:57 | you'd think they would be the same.
| | 00:59 | Whenever you create a list in SharePoint,
SharePoint automatically creates a
| | 01:03 | form that users can access
to be able to enter information.
| | 01:07 | It creates another form that users can
use just to view information and you can
| | 01:11 | replace the forms that SharePoint
creates with forms that you create here.
| | 01:15 | If I double-click to say I would like to
be able to create a form for SharePoint list,
| | 01:20 | immediately I'm prompted to
provide the location of the SharePoint site.
| | 01:24 | So my list has to already exist before I can
actually come here and create a new form for it.
| | 01:32 | However, if I create a SharePoint Form
that I'm going to store in a library that
| | 01:38 | will serve as the form that users go
and fill out and save there, then I don't
| | 01:42 | want to create that library ahead of
time and it's important that I don't. So
| | 01:46 | when I say I want to create a form
for SharePoint library rather than a
| | 01:50 | SharePoint list, when I double-click I
am not asked at all about where it's
| | 01:54 | going, I'm simply taken into a form,
so I can begin designing it.
| | 01:58 | So I want to stress that, because
if you begin by creating a SharePoint
| | 02:01 | library, you will have problems later on.
| | 02:05 | With email it's the same as a SharePoint
Form library, I'm simply creating a new
| | 02:09 | form it looks very similar.
| | 02:11 | My last two choices are the most
popular of the popular form templates.
| | 02:16 | At the far right is a Blank Form to
create a form that would be filled out using
| | 02:21 | the InfoPath Filler.
| | 02:22 | If we start there I'll see a whole list
of controls that are available to me.
| | 02:27 | You don't need to know what all of
these are, but it's a long list. That's
| | 02:31 | because the InfoPath Filler can support
a lot of different types of controls but
| | 02:36 | your browser not so much.
| | 02:39 | If I go back and choose a blank form
that I'm filling out in a browser not
| | 02:44 | in the InfoPath Filler, you'll notice that
the available list of controls is much shorter.
| | 02:49 | So if know that I'm going to create
a form, that ultimately is going to be
| | 02:54 | completed using a browser or may even
possibly be completed using a browser,
| | 02:59 | then I'm going to choose to
create my form using Blank Form.
| | 03:03 | If I use InfoPath Filler, I will be using
controls that aren't supported by a browser.
| | 03:08 | So there is the distinction here.
| | 03:11 | The Advanced Form Templates allow us to
create some different types of templates
| | 03:15 | connecting to data sources or for different purposes.
| | 03:19 | So I can create a form and use it
to send data to or from SQL Server or
| | 03:25 | another database, or to or from a web
service like a SOAP web service, and in
| | 03:30 | both of these cases I'll probably
need some support for my information
| | 03:33 | technology or information services staff of my organization.
| | 03:36 | And it might be that rather than creating
a web service they want to send me a
| | 03:40 | data connection file to connect to SQL
or some other database; that's another
| | 03:44 | way that I can work with
the Advanced Form Templates.
| | 03:47 | So if I already have a database that
I either have login information for, a
| | 03:52 | data connection file for, or a web
service to connect to, then these are the
| | 03:56 | types of form templates that I would
use, because when I start with these I'm
| | 04:00 | asked to provide information about the
kind of connection that I'll be using.
| | 04:03 | If on the other hand, I have an XML file
or a Schema, which is a data definition
| | 04:10 | for an XML file, I can create a form
template based on that XML file or Schema.
| | 04:16 | I can create a document information
panel for use in the Microsoft Office
| | 04:20 | Applications. This is when you open
the panel at the top of a document in for
| | 04:25 | example Excel or Word, and you display
the custom properties and the built-In
| | 04:29 | properties of that document, that's
actually an InfoPath file that's been used there.
| | 04:35 | And it maybe that your organization
has a lot of templates that were built in
| | 04:39 | Microsoft Word or Microsoft Excel.
If you do then you can create a new
| | 04:43 | InfoPath formed by converting that
existing Excel or Microsoft Word template.
| | 04:49 | That works well some of the time not
so well more of the time, and you'll be
| | 04:53 | seeing how we convert Existing
Form Templates in the next chapter.
| | 04:58 | Two other choices now; we have the
ability to create Legacy Form Templates.
| | 05:03 | It's not unusual in an organization to
have some set of InfoPath Forms that have
| | 05:08 | migrated at one time and others that follow later.
| | 05:10 | And so if, like me, you are in a position
where you need to be able to create
| | 05:14 | some templates in InfoPath 2013 for
SharePoint 2013, but you'll also need to
| | 05:19 | create some InfoPath templates in 2010,
then you can do that right here by
| | 05:24 | choosing the two Blank Forms; Blank Form
for InfoPath Filler or for everything else.
| | 05:31 | And then finally, Template Parts.
Starting with an XML file or Schema, or
| | 05:36 | starting from scratch, I can create a
section of a template that I want to use
| | 05:41 | over and over again.
| | 05:42 | A great example of that would be a Form
Header that asks the person submitting
| | 05:45 | it for their name, and their phone
number, their email address and so on.
| | 05:49 | You don't need to re-create that each time.
It's actually great to create it
| | 05:52 | once really well, and save it as a template part.
| | 05:55 | I can put that template part right on
the Ribbon, so I can access it directly
| | 05:59 | from the list of controls and the benefits are two.
| | 06:01 | One is of course reusability saves
time when you and I are building forms.
| | 06:06 | But the second thing is the standardization
that reusability gives us makes it
| | 06:10 | easy for employees, or customers or
other users in our organization to quickly
| | 06:15 | and easily fill out forms,
because they're the same every time.
| | 06:18 | So one last thought; whenever you're
working with new templates, the SharePoint
| | 06:23 | list template actually requires you to
start right here. It's very difficult to
| | 06:26 | take a template and connect it later to a SharePoint list.
| | 06:30 | But if I'm creating a form for a
SharePoint Form library to distribute by email,
| | 06:35 | for InfoPath Filler even, I can always
start with this Blank Form template, this
| | 06:40 | popular Blank Form, which is my generic
form that I'll choose much of the time,
| | 06:45 | when I'm working in InfoPath Designer.
| | Collapse this transcript |
| Using the InfoPath Designer interface| 00:00 | Welcome to Microsoft InfoPath Designer 2013.
This designer is built with the
| | 00:05 | same interface that you've seen in
all the other Office 2013 Applications.
| | 00:09 | And if you worked with or even
lightly looked at InfoPath Designer 2010,
| | 00:15 | you'll find that the tools, and the
commands and everything except the look
| | 00:19 | here is eerily familiar.
| | 00:21 | We have our Ribbon across the top, on
the right we have a task pane that you'll
| | 00:25 | see far more often than you do
for example in Word or Excel.
| | 00:29 | This task pane is critical pieces of
the interface so don't get use to closing
| | 00:33 | it down all the time; you'll want leave it open.
| | 00:36 | Let's take a look at this entire user interface
and see what we've got going on.
| | 00:41 | Whenever we choose a new document template,
we drop into the Designer with a
| | 00:45 | Blank Form and it will have a little
something going on, in this case the
| | 00:49 | ability to click, to add a title, and a place to add tables.
| | 00:53 | We have the Ribbon tabs across the top
and these aren't necessarily in order.
| | 00:58 | The reason I say that is in Word
they actually are, but here we'll often
| | 01:01 | want to come right away to this third tab,
the Page Design tab, rather than the
| | 01:06 | Home tab, because this is where we'll find things
like other potential layouts, themes, and so on.
| | 01:11 | But aside from the order, what you find is a
really nice set of tools that you can use.
| | 01:15 | For example, here are our text
formatting tools that we'll use.
| | 01:18 | We don't have a huge set of styles,
but we have enough to get by and they're the
| | 01:23 | same types of styles that we would use if
we were publishing something for the web.
| | 01:27 | We also have controls here that we'll use,
Input controls that are places that
| | 01:33 | users will enter information, whether
they're entering regular text or Rich
| | 01:38 | Text. This is where we have check boxes
different kinds of dropdown lLists, all
| | 01:42 | that different rich user experience
controls that you'll find in great, great
| | 01:46 | forms; the ability to have combo
boxes, and date pickers and so on.
| | 01:51 | So if you've seen a control used somewhere
in Microsoft products the chances are
| | 01:55 | good that it's here.
| | 01:57 | We also have the ability to add objects
whether we're adding buttons or
| | 02:00 | calculated fields, allowing users to
enter hyperlinks or place ink drawings that
| | 02:05 | they would put together on their new
surface, or being able to capture and
| | 02:09 | insert a picture here.
| | 02:10 | You'll also find Containers, which are
sections that are used to group other
| | 02:16 | controls, whether we're looking at
something that's a strict section or
| | 02:19 | something like a repeating table or
detail that's driven off of one specific
| | 02:25 | section of our form.
| | 02:26 | On the Insert tab you'll find all of
the different things you would insert
| | 02:30 | particularly Tables.
| | 02:32 | Microsoft InfoPath is Table centric.
| | 02:34 | So we won't simply throw controls into
a section, we'll always use Tables to be
| | 02:39 | able to organize our content.
| | 02:41 | So here you see for example text boxes
with labels above them, here labels on
| | 02:46 | the left and text boxes on the right and so on.
| | 02:48 | But you'll want to use layout tables
all the time you're working here in
| | 02:52 | InfoPath and you can create your own
custom tables as well, just as you would if
| | 02:56 | you were designing a form in
Microsoft Word, or somewhere else.
| | 02:59 | We have the ability to add pictures
and hyperlinks to set page breaks, to add
| | 03:04 | symbols if we want, and to place a horizontal line.
| | 03:06 | This is the extent of our tools for being able to insert objects.
| | 03:11 | Under Page Design tab that we visited
earlier, we have the ability to apply a
| | 03:15 | theme, different colors, we have the
ability to choose different page layout
| | 03:21 | templates, but we also have
the ability here to create views.
| | 03:25 | So view is the way a user or group of users
looks at a form in a particular period in time.
| | 03:31 | So for example for an expense form I
might have the default view, this is view
| | 03:36 | that a user fills out to be able to say
here are my expenses; but then we could
| | 03:40 | create new views, a view for example
for the accounting department to use that
| | 03:44 | they would have different information
that the user never needs to see.
| | 03:47 | There's really no limit to the
number of views that I can provide.
| | 03:51 | One of the views I create will be a
Print View, and all of the other views then
| | 03:56 | our views that users can switch to
either using the Ribbon or using some
| | 03:59 | buttons that we provide.
| | 04:01 | The Data tab is an incredibly powerful tab,
because by default our form isn't
| | 04:06 | connected to anything yet, but we can
connect this form to get external data
| | 04:11 | from a wide range of places.
| | 04:13 | We can then send the data from this form
to different locations through email to
| | 04:17 | a SharePoint Library, or to other locations
that we specify using a connection
| | 04:22 | to a server including a web service.
| | 04:24 | Then we have the ability to assign rules
to our form that explain how the form
| | 04:29 | works, based on whether the form is
being submitted, or loaded, and the ability
| | 04:34 | to inspect our form to make sure that
the rules in the form are going to work.
| | 04:39 | Here we have the Developer tab, and
the Developer tab gives us the ability to
| | 04:44 | assign different kinds of
actions to events in the form.
| | 04:48 | We can also load ome COM Add-Ins. In
prior versions of InfoPath you had the
| | 04:52 | ability to specify a code language
and to actually write some light code
| | 04:57 | here, for example C#.
| | 04:59 | In InfoPath 2013 they've removed Visual
Studio tools for applications, which was
| | 05:05 | the code editor that was used by default in InfoPath.
| | 05:08 | So if you want to write or edit code
to go with your forms in InfoPath
| | 05:12 | Designer, you actually now need to have
Visual Studio 2012 installed on your machine.
| | 05:17 | So the programming experience is
basically the same, but you need to have
| | 05:21 | Visual Studio in order to code at all.
| | 05:23 | However in this course we're going to
create all kinds of forms that aren't
| | 05:27 | going to require code, so don't worry
about it, we're going to be just fine.
| | 05:31 | So if we go to our FILE tab we have
some other choices here backstage, this is
| | 05:37 | where we'll publish are completed form.
To say we're going to distribute this by
| | 05:40 | email, we are going to publish this to
a SharePoint Library we're going to save
| | 05:44 | this to a Network Share. This is
where we set options for how the form is
| | 05:48 | actually submitted. Submitting
is different from publishing.
| | 05:51 | Publishing determines how I'm going to distribute it.
| | 05:54 | Submission determines what happens
when someone fills out the form and then
| | 05:58 | wants to send that data, not the
form, but the data, somewhere else.
| | 06:02 | I have the ability to check the design.
| | 06:05 | And design checking here is not about
accessibility, as it is in the other
| | 06:10 | Microsoft Office Products.
| | 06:12 | This Design Checker is actually checking
to see if this form as it stands could
| | 06:16 | actually be published and then
opened, and completed, using a browser.
| | 06:21 | Then we have some Advanced form options
that we're going to use to configure the
| | 06:25 | user's experience with this form. We'll
talk about that later in this course.
| | 06:30 | So now let's go back. Now we've seen
how the tabs work, where the different
| | 06:34 | commands are, and how the
InfoPath Designer Interface works.
| | 06:38 | So now in our next movies, we're going
to take a look at the steps that we'll
| | 06:43 | use to use this interface to create a brand-new
form from scratch using InfoPath Designer.
| | 06:49 |
| | Collapse this transcript |
| Understanding the steps for creating a template| 00:00 | Before we begin designing our first
InfoPath template lets review the steps that
| | 00:05 | will be necessary whenever
we create a new template.
| | 00:08 | First we need to determine, if we
are connecting to a data source.
| | 00:11 | You'll recall that as soon as we launch
the InfoPath Designer, InfoPath started
| | 00:16 | asking us, what kind of
form do you want to create.
| | 00:19 | So if we want to create a form to put
data in a SharePoint List then we want to
| | 00:23 | choose that SharePoint List
Template right now at the start.
| | 00:26 | And the same is true, if we intend to
create a form that connects to a Database,
| | 00:31 | to a web Service, uses an XML file or
Schema to describe a particular Data set,
| | 00:39 | or uses a Data Connection file.
Now this should make perfect sense.
| | 00:43 | If we're creating a form that's going
to hit an existing set of data or connect
| | 00:47 | to it in any way then we're going to
begin by flashing InfoPath, hey here's what
| | 00:51 | our data looks like, here's how we hook up to it.
| | 00:54 | If we don't have any kind of a data
description, a Schema or a connection to a
| | 00:59 | database that's just fine, because when
we choose the other types of templates,
| | 01:04 | what we're doing is we're actually
creating a data specification as we build our
| | 01:08 | template, and then will create a data
source when we publish the template.
| | 01:12 | For example if we publish it to a
SharePoint Form Library we'll create a Data
| | 01:17 | Source in the act of publishing.
| | 01:19 | But if we have a Data Source, we want
to choose it up front, because it's a lot
| | 01:22 | easier than trying to match it up later on.
| | 01:25 | Once we have either a data source
or know that we'll be creating one,
| | 01:30 | through the active creating the form, then we
can begin to look at the layout of our form.
| | 01:35 | And the tools that we're going to use
to talk about layout are exactly the same
| | 01:40 | kinds of familiar table tools that
you've used if you've laid out web pages, or
| | 01:44 | if you've designed really good forms
in something like Microsoft Word.
| | 01:47 | So here we're on a Blank Form. We've
chosen the appropriate form for our data
| | 01:53 | source, and now we're ready to be able
to choose, for example Themes and this
| | 01:57 | says Page Layout Templates, but
these are actually different kinds of
| | 02:01 | arrangements of tables that we can
use for layout; this is a layout for
| | 02:05 | example the entire form.
| | 02:07 | We can also insert other tables
here that are created for layout.
| | 02:11 | If I wanted to add a table here that's how I do it.
| | 02:14 | So we're going to use these familiar
tables either under PAGE DESIGN, which
| | 02:19 | think of as entire form design or
specific tables for specific sections of
| | 02:24 | the form like that.
| | 02:25 | We use tables for layout, but inside of
these tables then, we're going to place controls.
| | 02:31 | So we have lots of different control
choices that we can use, and you might be
| | 02:36 | familiar with these already from the earlier movies.
| | 02:38 | We'll find these controls on the HOME
tab, an entire list of them here, but let's
| | 02:44 | see how these controls actually work.
| | 02:46 | We use Input controls to be able to
enter information, Object controls to be
| | 02:51 | able to add objects.
| | 02:52 | The Container controls are particularly
important, because they are someplace
| | 02:56 | between layout and the actual controls.
| | 03:00 | We use containers, to hold
different pieces of our form together.
| | 03:04 | For example if we use an Optional
Section control then we can say they're some
| | 03:08 | information that we don't need in
every form, but we needed in some forms.
| | 03:12 | Let me show you a form that uses optional sections.
| | 03:16 | So here we are in Office Supply
Requisition Form and this is what it looks like
| | 03:20 | in DESIGN View; here's our optional section.
| | 03:23 | But if I click Preview to see what
the user will see, it says Click here to
| | 03:27 | requisition an item.
| | 03:28 | So they can click and there's a
section that doesn't have to appear.
| | 03:32 | If only 10% of my users use this piece
of the form, I don't need to bother the
| | 03:36 | other 90% with them. There's
another type of container called a Repeating
| | 03:41 | Table; we have lots of things that can repeat.
| | 03:43 | Let's imagine for example that as we're
designing this form we're out talking to
| | 03:47 | people who use the form to requisition
office supplies, we're talking to a
| | 03:51 | people in the purchasing department,
who use this form to actually order the
| | 03:54 | supplies that people requisition.
| | 03:56 | And we say, okay how many lines do we need here?
| | 03:58 | Because if we create this form in Excel,
or Word, or Acrobat, we need to know that;
| | 04:02 | how many lines does this form need to have?
| | 04:05 | And I might find that on average people
have two or three things that they want
| | 04:09 | to place an order for at the same time,
but occasionally we have people who
| | 04:13 | order 20 or 50 things, it's the year-end, it's time to restock.
| | 04:17 | Whatever the reason is we have a wide
range and I have to make a choice if I'm
| | 04:22 | creating this form in most of the
tools I'd use, to say well let's have 20
| | 04:26 | then. That means that if I only want to
order one item, when I print this form
| | 04:31 | it will have 19 blank lines. But here
in InfoPath I can simply add the lines
| | 04:36 | that I need as they require.
| | 04:38 | I don't have to find out how many times,
a user needs to put 20 items on this page.
| | 04:44 | I just need to know that sometimes
they need more than one.
| | 04:47 | So these containers are very powerful
tools. We have tables that repeat, we
| | 04:52 | have sections that repeat, we have
sections that are optional, we can have
| | 04:56 | tables that are optional.
| | 04:57 | So once I've used all of these
different kinds of controls, and containers to
| | 05:02 | organize my information so
that it meets my business purpose,
| | 05:05 | I'm ready to determine how my
users will interact with this form in
| | 05:10 | different ways, not just entering
information, but printing information or
| | 05:14 | viewing information.
| | 05:15 | Views are very powerful, because
views let us have different ways, that
| | 05:20 | different groups of users can see a form,
or different ways that the same user
| | 05:24 | can see a form over time.
| | 05:25 | So for example I might have a form
that at the bottom has that area that says,
| | 05:30 | for Office Use Only, and every
time I print the form it shows up.
| | 05:33 | And the only people, who care about it,
are the office people the folks in
| | 05:37 | accounting who actually fill out that gray section.
| | 05:40 | So I wonder why does the person
filling it out even need to see that section.
| | 05:44 | So I can create a user view even make
it the default view that says here is the
| | 05:48 | information I need from a user, it
doesn't have to have for Office Use Only
| | 05:52 | section. Then we can create a
different view for the folks in accounting it
| | 05:56 | includes the controls that they need.
And because we're not bothering the
| | 06:00 | average user with that section, it
doesn't have to be grayed out, which saves the
| | 06:04 | eyes of the folks in the accounting area.
| | 06:06 | I can also create specialized Print
Views, so it might be that I want a user to
| | 06:10 | fill out 20 or 30 fields, but I want
them to print out four or five as proof
| | 06:15 | that they actually filled out the form.
| | 06:16 | So I can create a specific print view
that would allow my users to be able to print
| | 06:21 | heard of the screen, but not the entire screen.
| | 06:23 | When I'm all done creating as many
views as I need, I'm getting very close to
| | 06:27 | the end time for my form, and
I want to now check its design.
| | 06:30 | If I'm going to publish this form in
such a way that I intendit to be opened in
| | 06:35 | a browser, for example in SharePoint
or even on a shared network location,
| | 06:38 | I'm going to use the Design Checker to
make sure that all of the features I've
| | 06:42 | used are supported by browsers.
| | 06:43 | So in my form, I'll go to File, I'll
check the Design Checker, and it will give
| | 06:48 | me a report on how well this form
is going to hold up in a browser.
| | 06:52 | Some of the controls that I just showed
you can't be rendered by Google Chrome,
| | 06:57 | or by Safari, or by Internet Explorer.
| | 07:00 | If there's a control that you see in
InfoPath but you've never seen on the
| | 07:04 | internet, there's usually a reason for that.
| | 07:05 | So the Design Checker is going to
go through your form and it's going to
| | 07:09 | say, ah that control? Not so much,
you're going to need to replace it.
| | 07:13 | So when we're all done then, all we
have left are the set of steps that we
| | 07:17 | need to determine how our form is
going to be published and how our form is
| | 07:21 | going to be submitted.
| | 07:22 | So we'll need to determine our publishing,
and configure our submission method.
| | 07:26 | We'll need to tell InfoPath where the
data that's collected in this form will be
| | 07:30 | put when a user clicks submit;
those are our Submit options.
| | 07:34 | So we need to determine whether this
form will be sent back by email or whether
| | 07:39 | the results will be posted on SharePoint site.
| | 07:41 | And then, we're going to
determine a particular publishing method.
| | 07:44 | Are we going to publish this on a
network share, are we going to publish it in a
| | 07:48 | SharePoint Library, are we
going to send this form out by email?
| | 07:51 | So how this form comes and goes
are submit, in our publishing options.
| | 07:55 | These are the kind of choices that
we'll need to make before anybody else can
| | 07:59 | use our template; and this is the
series of steps that we're going to go
| | 08:02 | through every single time.
| | 08:04 | We began with our data source and we end
by publishing back to that same data source.
| | 08:09 | So from the beginning we start with a
data source, we put together a layout, we
| | 08:13 | add controls to that layout, we determine
what views are necessary for our users
| | 08:18 | when we create them.
| | 08:19 | If we're going to use this form in a
browser, we run through the Design Checker.
| | 08:23 | And then finally, to make this form
available to other users, we'll set our
| | 08:26 | options, and we will publish our form template.
| | 08:28 | You'll get used to this series of steps,
because we're going to do them over and
| | 08:32 | over again in this course, you're going
to do the same series of steps over and
| | 08:36 | over again in your development career for InfoPath 2013.
| | Collapse this transcript |
|
|
2. Template-Creation BasicsCreating a template from scratch| 00:00 | For earlier versions of InfoPath
Microsoft had a catalog of templates that were
| | 00:05 | available for download. There were a
number of templates for InfoPath 2003 even
| | 00:10 | more for 2007, very few for 2010
and no new templates for InfoPath 2013.
| | 00:16 | So if you don't have something to
start with you're going to be creating your
| | 00:19 | templates from Scratch.
| | 00:20 | So you'll simply open InfoPath Designer.
The form we're going to work with
| | 00:26 | ultimately is going to end up being in
a SharePoint Form Library, but it'll do
| | 00:30 | many other things before it gets there.
| | 00:32 | So we're going to use Blank Form and
simply click Design, or double-click Blank
| | 00:36 | Form and here we are ready to
start our form from Scratch.
| | 00:40 | So we're going to click to Add a title,
and this is a Web Post Request Form
| | 00:45 | that we will be creating first. Below
it says Add tables, so I can click here
| | 00:50 | to Add tables. I'll find those either
on the INSERT tab or the PAGE DESIGN tab,
| | 00:56 | and let's say that I wanted to be able to
enter information, basically across Four Columns.
| | 01:01 | We have Labels to the left, Text Boxes to
the right, that's what this will look like.
| | 01:06 | If I want to have a title up here at the top in
the large subtitle or simply the table itself.
| | 01:11 | You point to, whichever type of table
you want, you'll get information about it
| | 01:14 | so I am just going to say no heading,
drop in a table and here it is.
| | 01:19 | And then I can began to do the other
work that I would do on this form of adding
| | 01:23 | controls, and I'm going to simply add one
control to this form right now and we will
| | 01:28 | see later what that's going to look like.
| | 01:30 | But the control that I want to add to
this form is called the Date Picker.
| | 01:34 | I'm going at a date to this form.
| | 01:36 | Notice that when I do that it's called
field1, that field is automatically added
| | 01:40 | over here to my Data Specification, and
if I wanted to, I could put Today's Date
| | 01:46 | here by clicking on the Label
where it says Add label and typing.
| | 01:49 | So that's how this works, I can easily
add controls, I can easily add tables.
| | 01:55 | This is how you begin creating a form from Scratch.
| | Collapse this transcript |
| Previewing and printing a form| 00:00 | When you look at a form that you're
in the middle of designing, you have a
| | 00:04 | different experience of that form then
your user will have, because you see this
| | 00:08 | form along with the Design tools on the
Ribbon and your user will be seeing this
| | 00:12 | form in either InfoPath Filler or a Browser.
| | 00:16 | So for example I've added a dropdown
list here, and it doesn't dropdown in
| | 00:20 | this view, it just sits there.
| | 00:23 | I can do other things with that, I
can set its properties, I can affect its
| | 00:27 | layout, but it doesn't behave like it's
going to behave when users using the form.
| | 00:32 | The same thing is true with the Date Picker; it
just hangs around and lets me configure it
| | 00:36 | and set its properties, but it doesn't actually work.
| | 00:39 | So if I click on the HOME tab, I have
the ability to Preview this Form, and
| | 00:43 | that's one why that I can see
what the user experience looks like.
| | 00:46 | I mean another choice is, I could save
this form, open up InfoPath Filler and
| | 00:51 | see what it looks like but the
shortcut here is just to click on Preview and
| | 00:56 | InfoPath opens another window, and this
is what the form looks like for the user.
| | 01:01 | So I can click on the Date Picker
and it actually will display dates, I can
| | 01:05 | click on this dropdown list, and
it will actually allow me to choose a
| | 01:09 | Card Type from the list.
| | 01:10 | When I'm finished checking out the
functionality I can close the Preview.
| | 01:14 | So while I am in that Preview, I
get to checkout all the controls.
| | 01:18 | Click the Date Pickers, if I have
Repeating Tables, I can insert new Rows,
| | 01:21 | Checked and Unchecked Text Boxes and Checkboxes.
| | 01:25 | I can Type Information, I can tab from field
to field. This is how it will work for my user.
| | 01:30 | I hit the Tab key, I hit the Shift and
Tab, and move backwards, this is how it
| | 01:35 | works in the Preview.
| | 01:36 | So I can really find out how my users
will be able to interact with this form
| | 01:41 | using the InfoPath Form Filler.
They will have a similar experience in a
| | 01:44 | browser, but this is exactly what
it will feel like in the Form Filler.
| | 01:48 | When you're all done you simply close
Preview and you are back to the Designer.
| | 01:52 | Notice when you go back and then you
go back into Preview all of your data is
| | 01:56 | gone, this Preview simply grabs the
data and throws it away when it's done
| | 01:59 | nothing is kept at all, it's
just the Developers Preview space.
| | 02:03 | I might also want to print a form to
see what it looks like for my user.
| | 02:07 | So I have some choices here. I can
go to File, and we can choose Print. I
| | 02:13 | can choose Print Preview and kill
fewer trees, and a notable thing here is
| | 02:18 | that those labels that I haven't used
yet and those control areas I haven't
| | 02:21 | used don't show up at all either in
that Preview or here in Print Preview,
| | 02:25 | because they won't print.
| | 02:26 | This is unused space in the form so far,
and it's just not available when I print,
| | 02:31 | which is exactly how I wanted to behave.
| | 02:33 | If I want to actually print something,
you might wonder well why would I
| | 02:37 | actually print something, perhaps I'm
working on this form, and I'm going to
| | 02:40 | go meet with some the people who will be using it
and I want them to see my progress so far.
| | 02:44 | So I can choose print and I get the
print dialog box, and I get to choose
| | 02:48 | things like my number of copies, all
the standard things that you would see in
| | 02:51 | the Print dialog box in other applications.
| | 02:53 | Or if I'm in a hurry I can simply go to
Quick Print, this is going to send this
| | 02:58 | directly to my default printer one
copy and it's not going to ask me anything
| | 03:02 | about it before them.
| | 03:03 | So another words you will Print and
Preview in exactly the same way that you
| | 03:08 | would in Word and Excel. And you preview
the form from the user's point of view,
| | 03:12 | not back here in Print, but over here
in this Visual Preview
| | 03:16 | on the HOME tab of your RIBBON.
| | Collapse this transcript |
| Saving a template| 00:00 | So here we are in the middle of
creating a new template that our users will use
| | 00:04 | to create forms that they'll fill out.
We've just started, but we don't want
| | 00:08 | to lose our progress and so we'll do the
same thing here as we would do in Word,
| | 00:12 | Excel or PowerPoint or any other
application; we're going to save this.
| | 00:17 | So when I save my template,
I have a number of choices.
| | 00:20 | The first of course is where
I'm going to put this template.
| | 00:23 | And if you do a lot of form development
in your organization, you'll want to
| | 00:28 | have a place on a network share
that's regularly backed up that you are
| | 00:31 | saving your templates.
| | 00:33 | If you do this type of work for different
parts of your organization or for
| | 00:37 | different clients, make sure you give
each of them their own folder or form
| | 00:41 | space. The reason I say this is that
particularly later in the course when we
| | 00:45 | are working with SharePoint, every
single form you published to a SharePoint
| | 00:49 | library is renamed to Template, that's its new name.
| | 00:52 | And so, you'll have lots of opportunity
to overwrite forms when you don't mean to.
| | 00:57 | So first choose a space.
Second, choose the type.
| | 01:01 | Now the default type -- I chose blank form
when I began creating this form, it's an
| | 01:06 | InfoPath web Browser Form for
InfoPath 2013, but notice that I could say, I
| | 01:11 | actually know I'm going to use form
filler for this or, I could from here save
| | 01:16 | this in a format for InfoPath 2010,
InfoPath 2007 and InfoPath 2003, which didn't
| | 01:24 | have an ability to create web browser templates.
| | 01:27 | So these are InfoPath 2003 Form Templates
that are filled out using InfoPath itself.
| | 01:33 | So a whole wide range of ways that I can save this.
| | 01:36 | If I was going to choose InfoPath 2010
as my way to save, I would have chosen
| | 01:43 | that template to begin with, but if I
want to create in InfoPath 2007 template,
| | 01:47 | the only real way to do it is to start
with a blank template or a 2010 template
| | 01:51 | and then save it here by choosing a different file type.
| | 01:54 | But this default matches up with the
choice I made to begin with. And my form
| | 01:58 | name, I can use whatever name I'd
like that is going to make some sense.
| | 02:02 | So I want to be descriptive.
This is a Web Host Request.
| | 02:07 | I don't have to say form it's in InfoPath
so it is a form and I'm going to go
| | 02:11 | ahead and click Save.
| | 02:12 | That's all there is to it.
Notice at the top, it has a name.
| | 02:16 | It happens so quickly that you might
wonder did it even save at all.
| | 02:20 | Of course from this point forward to save
this again, I'll simply click the Save button.
| | 02:25 | This has nothing to do with
making this available to other users.
| | 02:29 | With InfoPath forms, unlike for example,
forms you create in Microsoft Word or
| | 02:33 | Excel, the act of saving a form doesn't
actually create anything people can use.
| | 02:38 | It saves the current state of your design effort.
| | 02:41 | Later on, we'll publish a form and that's
what will make it available to other users.
| | 02:46 | But right now, save and save frequently.
| | 02:48 | If you think that you want to look at
two different possible ways to work with
| | 02:52 | the form, you save as; create them both.
| | 02:54 | No worries, when you get closer to the
time that you're ready to publish, you
| | 02:58 | can decide where you want to put more of
your efforts, but do save frequently so
| | 03:02 | that you don't lose your work.
| | Collapse this transcript |
| Importing Word and Excel forms| 00:00 | InfoPath includes two different conversion
utilities to take existing forms in
| | 00:05 | Word or in Excel and convert them to InfoPath forms.
| | 00:09 | Now I would be negligent if I didn't
tell you about this early on because most
| | 00:13 | of our organizations that we work with
have lots and lots of existing forms.
| | 00:18 | You might wonder why don't I just convert those.
| | 00:20 | So I want to show you what that looks
like, but it's little more difficult than
| | 00:23 | it actually looks, so we'll talk more
about this at the end of the course.
| | 00:27 | Here is my form in Microsoft Word.
So it allows users to enter information.
| | 00:33 | This form was originally created in Office
2010 so it uses the nice little XML here.
| | 00:41 | You can see that it has fields and controls
to capture information and that they
| | 00:45 | are actually labeled.
| | 00:47 | It has checkboxes on it, has some
other information. The entire form isn't
| | 00:52 | here, but this will be enough to give
us a flavor. If you want to play along
| | 00:56 | with me, you can go ahead and open this
form because it's in your exercise set.
| | 00:59 | So I'm going to close the form in Word.
Here we are in InfoPath.
| | 01:06 | So in InfoPath when I choose new, one
of my choices is Convert Existing Form so
| | 01:10 | I'm just going to double-click.
| | 01:12 | The import wizard only wants to know one thing.
| | 01:14 | Is this an Excel Workbook form or is this a Word form?
| | 01:17 | This is a Word form and there's a
possibility if to out to the Office
| | 01:22 | Marketplace and search for other
converters that have been built as third-party
| | 01:25 | products, but these are the two that are built in here.
| | 01:28 | So InfoPath importer for Word documents, click Next.
| | 01:31 | Select the file to import. There's my file.
| | 01:35 | And then I'm going to click the Options
button so that you can take a look and
| | 01:39 | see what some of the options are here.
| | 01:41 | The default is to retain the layout that
that form has and also the form fields.
| | 01:47 | Notice that these choices here are
not enabled and the reason is if I want
| | 01:52 | to make some other choices here, I need
to say yep, I also want to specify some
| | 01:57 | custom conditions to configure this import.
| | 02:00 | So the default is to convert any
Word form field to InfoPath control.
| | 02:06 | If there's a text box in Word,
make it a text box there in InfoPath.
| | 02:10 | To find repeating tables, those places
where I put 20 rows so that people could
| | 02:15 | enter all of their expenses or all of their requests.
| | 02:18 | To detect rich text areas as different
from areas where we had somebody just
| | 02:23 | enter text in a plain text box in Word.
| | 02:26 | And then if there's an empty underlying,
turn it into a text box.
| | 02:29 | If there's a colon and a space afterwards,
assume that that's a place a user is
| | 02:34 | going to put information, turn that into a text box.
| | 02:37 | And then some choices that are turned off,
but you might imagine that the way
| | 02:41 | somebody created a form in Word was
they just left an empty table cell as a
| | 02:45 | place to put information.
| | 02:46 | So if you want to turn that on, you would
make this choice and you'd click the checkbox.
| | 02:52 | That if we had a table cell that had
label text in it, we might want that to
| | 02:57 | become a text box and if someone
simply put a set of brackets with space in
| | 03:02 | between them that that would be a
place to type information as well.
| | 03:05 | Okay, so any of those that are found,
you could convert to text boxes.
| | 03:10 | Some people when they design forms,
they use an open and close bracket set as
| | 03:14 | a place that you would type an x and
if those are detected those would be
| | 03:18 | turned into checkboxes.
| | 03:19 | So these are the default options right here.
| | 03:22 | If you like them click OK and then simply click Finish.
| | 03:28 | Okay so, InfoPath says this form was
imported successfully, but one or more
| | 03:33 | potential issues were identified and we
could find them in the Design Checker.
| | 03:37 | So I'm going to click OK.
| | 03:38 | The Design Checker comes on and it says,
there might be somethings that were
| | 03:43 | positioned incorrectly.
| | 03:44 | We'll find out what that means. How incorrectly?
| | 03:48 | Well, actually the incorrectly is there
is some stuff centered here and the rest
| | 03:52 | of our form is way over to left.
| | 03:55 | That's actually not so bad.
| | 03:56 | It could be much much worse.
| | 03:58 | We can arrange that.
| | 03:59 | But these are just labels, we can
delete these and we can type them in again
| | 04:03 | in a way that we would like to see them.
| | 04:05 | Here the things that I'm interested in.
The thing I'm concerned about here is
| | 04:09 | how did my data show up, because you'll
notice that it brought the form in and
| | 04:15 | there's really not a field here.
There is just text.
| | 04:18 | So if I go and click on data and I say
show fields, you'll notice not a single
| | 04:23 | data field came in here for Microsoft Word.
| | 04:25 | Again, that's not unusual. There are
some strategies that we can use to make
| | 04:30 | InfoPath do a little better
than it did in this particular case.
| | 04:34 | But it might be that all we really want
is the table, the structure, because
| | 04:39 | this gives us a great head start.
| | 04:41 | This is really well laid out. So, if I
decided that I mostly wanted the layout
| | 04:46 | and then I would go in here and say
okay, I'm going to delete that text.
| | 04:50 | I'm just going to throw in a text box.
| | 04:52 | Look at how well that works,
because the spacing is already here.
| | 04:55 | So let's take another swing at this.
| | 04:57 | I'm actually going to close this
version right here and not save it.
| | 05:02 | And just say, I want to convert an
existing Word document, our same document, and
| | 05:08 | in this case, I just want the Layout.
| | 05:15 | And I still have the same issue up at the top
that I need to do something with that.
| | 05:22 | But all I have is the layout and I
don't really expect to get the form fields.
| | 05:25 | It will focus really well on getting this layout
down as cleanly and as crisply as it can.
| | 05:32 | So two different possibilities; Word and Excel,
several options on how we would convert it.
| | 05:38 | And again, we'll return to this topic later in the course.
| | 05:41 | But if you really just want to grab
the design out of a form and have your
| | 05:45 | layout tables and go forward, this isn't
a bad way to do it and it will give you
| | 05:50 | a head start on creating your form in InfoPath.
| | Collapse this transcript |
|
|
3. Creating a Data SourceUnderstanding data sources| 00:00 | We use InfoPath to create forms to
capture what's called structured data.
| | 00:05 | Described and defined: data that can be
validated, because if you enter incorrect
| | 00:10 | data then a rule can say that data is wrong.
| | 00:13 | That's not what a phone number looks like.
Or if you have data that's missing, we
| | 00:18 | can have a rule in our form that says
well, wait a minute, we actually require
| | 00:22 | you to enter both your first and your last name.
| | 00:25 | So we have the ability to create a structure
that says we expect first names,
| | 00:29 | last names, email addresses and so on.
| | 00:31 | And we have the ability to enforce that structure.
| | 00:35 | If you want to simply type anything
you'd like in any order and omit data when
| | 00:39 | you wish, then you're better off with a
tool like Word. That's one of the reasons
| | 00:43 | that we use InfoPath as opposed to Word
when we want to create really structured
| | 00:48 | forms that help our users provide
the information we really need.
| | 00:52 | So this is a form here in InfoPath
and it has three simple fields.
| | 00:58 | We're asking the user to enter their
First name and their Last name and then to
| | 01:04 | choose a Department.
| | 01:05 | And that Department actually comes from
a list, because we don't want people to
| | 01:09 | make up their own department names.
| | 01:11 | We want them to choose from the
departments in our organization.
| | 01:14 | This data comes from another structured data source.
| | 01:18 | This dropdown list of data actually comes
from Microsoft SharePoint server.
| | 01:22 | So we're going to go over and look at
SharePoint and I want to tell you just a
| | 01:27 | little bit about it.
| | 01:28 | When Microsoft InfoPath was first developed,
it was developed to be the form
| | 01:31 | collection tool for a totally different
product that was called BizTalk Server
| | 01:36 | and BizTalk server was used for workflows
in our organization for helping a
| | 01:40 | piece of information move through an
organization from one desk to the next.
| | 01:44 | Much of functionality of BizTalk is now
included in SharePoint and InfoPath is
| | 01:49 | the tool for editing forms for SharePoint.
| | 01:52 | But what is SharePoint?
| | 01:53 | Well, SharePoint is a collaboration zone.
| | 01:55 | SharePoint is a place that you and I
can work together and can keep calendars
| | 01:59 | and share documents together, have
announcements list, manage tasks that we need
| | 02:05 | to manage together or keep a calendar,
post for examples some links to
| | 02:09 | particular documents.
| | 02:10 | And in our case, SharePoint is the
place to go to get some data to go get
| | 02:16 | department names, structured data,
that we can then use in our form.
| | 02:20 | One of the forms that we create in this
course will be designed to be published
| | 02:23 | right here in SharePoint so that
users can go here and fill the form out.
| | 02:28 | That's another use of SharePoint
is as a form's distribution center.
| | 02:33 | So the form that we saw a moment ago
is actually part of SharePoint it's been
| | 02:37 | published here in this library.
| | 02:39 | And if someone wants to add a new item
to it, they can click and they can open
| | 02:44 | up the same form that you just saw.
| | 02:46 | But now, it's opening here in the browser.
| | 02:48 | So SharePoint is one of the tools
that we can use to create a data source in
| | 02:52 | InfoPath, but this isn't where it
stops this is just where it begins.
| | 02:57 | So here's our form in InfoPath, a
sample of our form. And in this case, we're
| | 03:01 | pulling data out of the SharePoint list
that list of departments we saw a moment ago.
| | 03:06 | But I could also grab information from
any database and use it in a dropdown
| | 03:10 | or information could be typed into a list,
a small list Visa, MasterCard, Discover and so on.
| | 03:17 | Or, I can have a file of XML data that I
can even store right here with the form;
| | 03:21 | so I have a variety of sources that I
can use for information that we're going
| | 03:27 | to capture in our form.
| | 03:28 | So we could have our user fill out the
form and submit the information through
| | 03:33 | email or they could send it to SharePoint
like the form that I'm showing you
| | 03:37 | now or they could save it in a database.
| | 03:39 | So we have all of these different
structured data sources and structured data
| | 03:43 | repositories that we will send our submitted data to.
| | 03:47 | So with so much structure, there
also has to be some in InfoPath.
| | 03:51 | Let's see where that lives.
| | 03:53 | This is our user view of this form.
| | 03:55 | This is how it looks when we're filling it out.
| | 03:58 | But this is what it looks like under the hood.
| | 04:00 | This is the space where you and I will
spend time working with data sources.
| | 04:03 | So in addition to structured data
coming into this form for a dropdown and
| | 04:08 | leaving this form, we have a data source
right here in the form that it actually
| | 04:12 | describes what this data will look like
when it leaves and goes to SharePoint or
| | 04:17 | to email or somewhere else.
| | 04:18 | This is our main data source and this
kind of a data description has another
| | 04:22 | name and that's a schema.
| | 04:24 | So here in InfoPath, we have structured data
because we've described it in a schema.
| | 04:30 | We use structured data from other sources
and we write the data that our
| | 04:34 | users provide to yet another data source that
matches up with this definition or schema here.
| | 04:40 | So InfoPath is all about info, all about data.
| | 04:44 | We're going to spend a lot of time
working with data sources in InfoPath.
| | 04:49 | In the next movie, we'll start by creating
a schema from scratch as we develop our form.
| | Collapse this transcript |
| Automatically creating a data source| 00:00 | So if we begin by creating a
template using an existing data source for
| | 00:05 | example a database or a data connection file,
then we have a data source but
| | 00:10 | what happens when we don't. Well let's
create a new form using just a Blank
| | 00:14 | form and I'm going to create a form
that we'll be using for a while and that's
| | 00:18 | a Travel Request form.
| | 00:20 | I'm going to add some tables to provide
some structure because that's what we do.
| | 00:24 | So I'm going to choose one of our
rather plain four column tables here.
| | 00:31 | I've places to Add Controls, that would
be these here, and places to Add Labels,
| | 00:38 | which would involve my typing. Over
here I see myField list on the right. This
| | 00:41 | came up by default and in it I have no fields.
| | 00:44 | I gave a container for them called
myField, it's the beginning of an XML file.
| | 00:48 | This is what's actually called the
root node, it's at the very top of my file.
| | 00:53 | All of my fields are going to go in here.
| | 00:55 | I won't have two of these just one.
Everything else is going to fall underneath this.
| | 00:59 | So I have several choices about how I
can do this. Let me show you a couple of
| | 01:03 | different ways to attack this. One is,
I want to begin by entering labels for
| | 01:07 | example Today's Date, and then where I
want to place the Ctrl, I just click and
| | 01:11 | say I'd like a Date Picker here.
| | 01:13 | Notice when I do that, it's named
field 1, Microsoft wastes no creativity
| | 01:16 | whatsoever on this. It's not even
called Date field 1. It's just called field 1.
| | 01:20 | Here's the information about what
the control is bound to, connected to;
| | 01:25 | and its connected to this field over
here that just got created in the data
| | 01:29 | source; the field's type is a
Date because I chose a Date Picker.
| | 01:32 | Let's try another one; we're going to
have a user's First Name here, whoever is
| | 01:36 | going to travel; and I'm going to
click and -- this is a Text Box, all it does is
| | 01:42 | plain text. I don't need people to bold
their name or turn it different colors, so I
| | 01:46 | don't need a Rich Text Box,
just a Text Box; notice field 2.
| | 01:50 | And once more let's do a Last Name;
and click over here with the control
| | 01:55 | add another Text Box.
| | 01:57 | So every single time I drop a control
on the screen InfoPath reacts by creating
| | 02:03 | a connection for it by
creating a data container to hold it.
| | 02:08 | The reason we're in InfoPath to begin
with is, we want to collect some data and
| | 02:12 | do something; and so it's imperative
that there always be a place to put the
| | 02:16 | data that a user would type into this form.
| | 02:19 | So I've been showing you sort of a
straightforward way to do this; and I would
| | 02:22 | go back then and I would name myFields,
better names than this, because I don't
| | 02:26 | want to have field 1, field 2, field 3.
It makes no sense.
| | 02:30 | I'd actually like that to say something like Today's date.
| | 02:32 | So the name of this field is a property
of the field. I can right-click and go
| | 02:37 | to Properties and I can say this is
Today's Date. I don't want to use in this
| | 02:43 | particular context something like this,
because it's actually not allowed.
| | 02:50 | I can't use spaces. I can't use special
characters. I can use the underscore. I
| | 02:55 | can't ever start with a number, but I
can include numbers elsewhere as I go
| | 02:59 | along; and I can have hyphens and I can
use the period, but I don't really want
| | 03:03 | to do that much either. So what
I'm going to do -- there are really two
| | 03:07 | conventions for this. Some people
would tell you that because what we're
| | 03:09 | creating here is a data description in
XML that you should only use lower case
| | 03:14 | and it would look like this.
| | 03:15 | Some folks like it to be a little more
human readable than that, so they would
| | 03:19 | use what's called camel case, where the
first letter of each word is uppercase,
| | 03:23 | so it looks kind of like humps on a
camel. Either one of those is going to
| | 03:27 | work. We have some other properties here
that we could set, but we'll come back to that.
| | 03:31 | Another possibility is I can click here
on the arrow and choose
| | 03:35 | Properties and this then is first name.
If I'm not sure where I am notice
| | 03:39 | that it's selected out here in the form.
| | 03:41 | So there's no reason really for me
get this wrong. I could put FName if I
| | 03:46 | preferred instead of shorten it up, although
sometimes people think that's full name.
| | 03:50 | So let's put First Name and click OK.
| | 03:55 | And another possibility is I could go
to Control Tools Properties, and I have
| | 03:59 | the ability to click Control Properties
or to rename my field there. So if you'd
| | 04:06 | rather work with the ribbon, you can do
that. I sort of like keeping it closer
| | 04:09 | and right-click in working all on one
place, but that's a good way to do this.
| | 04:13 | Now I have some other fields that I'm
going to need as well. I'm going to click
| | 04:17 | on myFields and I'm going to Add a Field.
| | 04:20 | Now I'm not adding the control. I'm
actually adding a field to my list. I
| | 04:24 | would like to have the email address,
and it's simply text, so I'm going to
| | 04:27 | click Ok, notice it's been added to my list here.
| | 04:30 | Now watch what happens when I drag this
field out into the form. By default, if I
| | 04:35 | drag it right here notice how it lit
up both Add Label and Add Control right
| | 04:40 | here. If I do it here to light up these
two that's not what I want. There's the
| | 04:45 | label, and there's a control. Drop it,
and what InfoPath does is it actually
| | 04:49 | takes this email address, and
because I camel cased it, because I use an
| | 04:52 | uppercase for the e in email and
the a in address it actually understood
| | 04:56 | exactly where to put a space. It also
put up colon out here at the end. If I
| | 05:01 | want my form to look consistent, I'm
going to do this sometimes, it's really good
| | 05:04 | if I remember to put colons in as I'm going along.
| | 05:07 | So that's what I get, if I drag this out
here is that automatically manages this for me.
| | 05:12 | I can click on myFields again, and I
actually have another couple of fields that
| | 05:15 | I need to add as well. I need a Department.
| | 05:18 | If I want to type the entire word
department we already know what the benefit
| | 05:21 | will be as it will be here as a label exactly like that.
| | 05:24 | So I'm going to add a Department, I'm
going to add another field that's called
| | 05:28 | Location. At this point I'm done,
and I can drag department out here. I need
| | 05:33 | a new row in my table. Oh whatever shall I do?
| | 05:35 | Well I present them in Microsoft Word,
I'll go to the end of my table and I will
| | 05:39 | hit Tab and I'll get another whole
row, and I can drag Location out here.
| | 05:43 | And notice that it behaves the same way.
There's not even information here that
| | 05:47 | says click here or place control here,
but because it's a copy of this prior row
| | 05:52 | in the table, my behavior is exactly the same.
| | 05:55 | You may already have a form where all
the labels are there already, for example
| | 05:58 | a form that you import from Microsoft
Word. And you want to create your fields
| | 06:03 | and drag them in here, but you really
don't want to have the behavior where we
| | 06:08 | have the labels automatically created.
| | 06:10 | Let me take a quick second show you
where you're going to find that. If you want
| | 06:14 | to turn that off go backstage here,
click Options, under InfoPath Options choose
| | 06:21 | More Options and under Design tell
it Not to create labels for controls
| | 06:26 | automatically, and it will stop doing that.
| | 06:29 | When you drag your control it won't attempt to label it.
| | 06:32 | Another choice is, go ahead and create
the controls, but please use exactly the
| | 06:36 | names I provided. Don't try to convert
them into friendly names by adding spaces.
| | 06:42 | You can turn that off as well.
| | 06:43 | So those are your options if you already
have the labels in place, just come turn
| | 06:47 | this off; don't spend all your time
deleting labels.. I'm going to leave this as
| | 06:51 | it is, and that's how this works.
| | 06:52 | So if I place Controls into my form,
then automatically InfoPath is going in
| | 06:58 | and creating fields.
| | 06:59 | If I create Fields I can drag them and
place them in my form, very, very easily.
| | 07:04 | Two different ways that I can automatically begin
creating my data source here in Microsoft InfoPath.
| | Collapse this transcript |
| Setting field properties| 00:00 | Each one of these fields over on the
right has properties of its own. Each
| | 00:05 | one of these fields is what's called
a node, N O D E. That's a term for XML
| | 00:11 | because we're actually creating an
XML schema here that describes our data.
| | 00:15 | So this is our top node or our root node,
and underneath that we have a node for
| | 00:19 | TodaysDate, a node for FirstName, and so on.
| | 00:22 | So I have properties that I can change
here on my fields, if I select the field.
| | 00:30 | We've already changed the Name property
for one of our fields so we know how to
| | 00:35 | do that; we'll talk about type later on in this chapter.
| | 00:39 | Datatype is what do I expect the user to place in this field.
| | 00:43 | Now the broadest, the most general here, is to
allow someone to enter text or string of text.
| | 00:48 | But then I can be very specific. I can
say well they can format that text, that's
| | 00:53 | what Rich Text is; or I'm expecting a
whole number. You would use whole
| | 00:58 | number for things like how many children
in the family or how many pairs of
| | 01:02 | shoes do you want to order; things where
you really can't enter a decimal number,
| | 01:07 | as opposed to currency for example,
where you would definitely use a decimal.
| | 01:11 | So you want to be careful to
choose the right type of a number here.
| | 01:15 | True/False, also called a Boolean
variable, is a variable that can have only one
| | 01:20 | of two values True or False, zero or one, yes or no.
| | 01:24 | So you'd use this for something like,
will your family be staying for
| | 01:28 | Sunday's event, check. As a matter-of-fact
when everything True or False and
| | 01:32 | you choose this type you should
think, could I implement this using a
| | 01:35 | checkbox, that's a really good test.
| | 01:38 | A Hyperlink: any time you want to
include a link to email to, to go to a
| | 01:43 | specific URL, to go to a specific location
in your file share, you'll probably do
| | 01:48 | that as a Hyperlink.
| | 01:49 | We then have a Date and we've used
that for TodaysDate; Time which is time
| | 01:54 | only; and then Date and Time together,
which actually allows the user to choose
| | 01:59 | a Date and type a Time.
| | 02:01 | We also have the ability to have a
field that is expecting to have a picture
| | 02:05 | or file placed in it.
| | 02:07 | So these are our data types. Now you're
goint to use text and date over and over
| | 02:12 | again, Whole number and Decimal quite a bit,
True/False you may only rarely use
| | 02:18 | Hyperlink for example but
you'll see them all in this course.
| | 02:21 | The next Properties indicate whether
this is a field that's going to occur more
| | 02:25 | than once, and that would be a Repeating
field. If we were going to do that we'd
| | 02:30 | say well you could enter today's date
several times, clearly not true, we'll talk
| | 02:34 | more about Repeating fields in upcoming chapters.
| | 02:37 | Cannot be blank is the same as Required.
If we require there to be a date in
| | 02:43 | this field we'll do that by clicking
this checkbox. When we do, when a user looks
| | 02:48 | at this field, they'll actually see this small
red asterisk that means required in InfoPath forms.
| | 02:55 | We have the ability to enter a
Default Value and we'll do that later for
| | 02:58 | this field, because there's no reason
for a user to look up today's date, our
| | 03:02 | computer knows when it is.
| | 03:04 | On the Merge tab we'll find settings
that allow us to combine multiple values in
| | 03:09 | this field when we combine this form with other forms.
| | 03:13 | And finally these are Details.
The Details are exactly the information
| | 03:17 | that's kept for the XML.
| | 03:20 | So you'll see some of the things in
addition to the fields that we saw earlier.
| | 03:25 | For example in this case, Minimum
Occurrences is 0, Maximum Occurrences 1; we
| | 03:30 | can have exactly 1 and it's going to be a Date
field and there is no default value provided.
| | 03:37 | That's information from back here.
| | 03:39 | This is how it looks when it's rendered in XML.
So we don't make any choices
| | 03:43 | here, this is simply a summary of
choices we've made earlier in this
| | 03:47 | properties dialog box.
| | 03:49 | So I'm going to go ahead and click OK.
| | 03:51 | For every single field that we have,
we have the ability to set all of these
| | 03:55 | Properties. whether or not it's
required with the asterisk (*);
| | 03:59 | whether or not it repeats and if so
we can even say how many times it could
| | 04:03 | possibly repeat; whether or
not there's a default value.
| | 04:05 | Those are the types of properties
that we assign at the level of a field.
| | 04:10 | Now we could require for example, that
this control for today's date not be
| | 04:16 | blank, but there's no reason to do it in
the form when what's true is we are not
| | 04:21 | going to allow a record in our data
set that doesn't have a date in it.
| | 04:25 | So whenever we look at where we should
provide changes to Properties to dictate
| | 04:29 | how our information looks, this is the
best place to put them, right here in the
| | 04:34 | fields list the controls and describes our data source.
| | Collapse this transcript |
| Modifying a data source| 00:00 | So here we are in our Travel Request form.
On the right-hand side in the Fields pane,
| | 00:04 | we have lots and lots of fields one right after
another, Today's Date, First Name and so on.
| | 00:10 | If these were the only fields that we
were using in this form, we would be in
| | 00:14 | pretty good shape, but it's not.
| | 00:15 | We're going to have a lot
more fields than we have here.
| | 00:18 | So there's a design element to
what it is that we're doing now.
| | 00:22 | We're creating a data source, and we
don't simply want it to be a list of the
| | 00:27 | order in which we happen to drop fields
into this form. But that's what we have
| | 00:31 | right now; Today's date, First name,
Last name. I've actually placed spaces in
| | 00:36 | these, and punctuation to make them a
little more human readable. Email address,
| | 00:40 | and Department and Location, but there
will be more, because this is only the
| | 00:45 | information about the person who's
traveling and when this form was submitted.
| | 00:48 | We haven't even gotten to the center of
this proposition, which is where do you
| | 00:52 | want to go, when do they want to leave,
do they need a rental car, do they need a
| | 00:57 | hotel, do they need a flight?
Aall this information is coming.
| | 01:00 | And by the time we're done we're going
to have this long list of fields. Later
| | 01:04 | on we might say oh I wish we'd added
this field, and when we do we might want it
| | 01:09 | at the top of the form, but it
will be at the bottom of our list.
| | 01:11 | So we have a need to provide some
structure. Couple of reasons for that.
| | 01:17 | One reason is it just makes it easier to
look at the form when we've outlined it.
| | 01:20 | But there's an underlying
reason that's even more important.
| | 01:23 | When we create a set of controls and we
group them together, we connect them to
| | 01:27 | each other then we can do some
special things with that set of controls.
| | 01:31 | We can put them in a section of the form.
By creating special sections that encase
| | 01:36 | groups of controls, we can then
lock them off from particular users, we can
| | 01:42 | display or hide them.
| | 01:44 | So grouping fields has a similar function
to when we group design objects in a drawing.
| | 01:51 | It gives us control over all of them together.
| | 01:54 | So here's a better way to organize
these same fields into our data source.
| | 01:58 | We'll start with Today's date,
because it really does stand-alone, it's
| | 02:01 | information about the form. Then we
will create a group called Traveler, and
| | 02:06 | in that Traveler group we'll place the
fields we have already created; First
| | 02:10 | name, Last name, Email, Department, and Location.
| | 02:14 | Then we'll create another group called
Travel request and that group will have
| | 02:18 | fields in it like City, Travel date,
whether or not someone wants a hotel,
| | 02:22 | whether they're flying, whether they
need a rental car. All those types of
| | 02:26 | fields will be part of a Travel Request.
And you can tell that those are
| | 02:30 | different things, the date is different than
the Traveler information than the
| | 02:33 | Traveler request itself.
| | 02:34 | This Traveler information by the way
forms the core of what you might easily
| | 02:39 | want to save as a Template part,
because many of the forms in your organization
| | 02:43 | will start with what's today's date,
what's the first, last name of the person,
| | 02:47 | the email address, their Department and their Location.
| | 02:50 | This will be normative, and so it's a good
candidate for a template; more about that later.
| | 02:55 | Right now, let's just organize our Data
source, so that it starts to look like this.
| | 03:00 | Now before we go to InfoPath though,
one more thing; if I had to already
| | 03:04 | collect the data from users, the
things that I'm going to do next would
| | 03:07 | actually discard that data.
| | 03:10 | When we rearrange the Data source,
we're doing something really deep. Think of
| | 03:14 | it like deep tissue massage; there's
nothing at all that's decorative, or casual
| | 03:20 | about what we're doing.
| | 03:20 | We are actually changing the nature
of the data that we're hanging on to.
| | 03:24 | So this is the kind of work that you do
before you release your form for users.
| | 03:29 | It's early work, even though it seems
very abstract and philosophical, these are
| | 03:34 | the things that we do early in Form Design not later.
| | 03:38 | So I need to create a group and
that group is a group under myFields.
| | 03:44 | So I'm going to select myFields,
click Add Field, and I'm going to say we're
| | 03:49 | going to call this Traveler.
| | 03:53 | Now I choose Group; that's how I
created group for the traveler.
| | 03:58 | Now there are some conventions around this,
there are some folks would put grp
| | 04:03 | in front of that in lower case to show
that it's a group. I don't have a
| | 04:07 | problem with that at all, it
makes it really easy for you to see.
| | 04:11 | And we don't have a choice about
whether it's blank or not, but we do have a
| | 04:14 | choice about whether this repeats.
| | 04:16 | Would we allow multiple travelers in this form?
| | 04:19 | The answer in this case is no.
| | 04:21 | So we're simply going to click OK and
it will be dropped in at the bottom.
| | 04:25 | Now what I'm going to do is move
this field to the Traveler group.
| | 04:29 | I am going to click FirstName, I am
going to click Move>Traveler>OK.
| | 04:37 | Notice this change is going to modify
a field. If you have forms that are
| | 04:42 | already filled out they are going
to lose this data. Like I said deep
| | 04:45 | tissue massage, Yes.
| | 04:47 | LastName>Move, under Traveler,
OK, same warning, Yes.
| | 04:58 | By the way, there's no little checkbox
that says don't tell me this anymore,
| | 05:03 | because truly, if you ever didn't want
to do this, if you ever were making a
| | 05:08 | mistake, you wouldn't want to throw
away data from a hundreds or thousands of
| | 05:12 | forms, because you weren't warned,
so you always want to look this.
| | 05:16 | We are going to move EmailAddress,
it's an attribute of Traveler.
| | 05:19 | Department -- you see once you start to
get into a flow, it's really easy to do this,
| | 05:29 | it's also of course really easy
to make mistakes, so you want to watch
| | 05:33 | what we're doing, there we go.
| | 05:34 | Now what I would like to do is create
another group for my Travel Request.
| | 05:38 | It's not part of Travelers, so I don't
want to be here. I want to be back up in
| | 05:43 | myFields. I want to create a peer
for this Traveler group, Add Field,
| | 05:46 | TravelRequest, it's a Group.
| | 05:49 | All I had to do to do that was to hit
the letter G because these dropdown lists
| | 05:54 | actually work pretty well, by first letter.
| | 05:57 | I hit G once, it's Group, there's
another one called Choice Group, but notice
| | 06:00 | that all I need to do is hit the letter G.
If I wanted Field attribute, I could
| | 06:04 | do that, C would give me
Complete Schema, just want a group.
| | 06:08 | Now is this going to repeat?
| | 06:09 | Yeah, this group is going to repeat,
I'm going to allow people to put multiple
| | 06:13 | TravelRequest in one form.
| | 06:14 | So I am going to turn on Repeating,
click OK, and notice that we get a
| | 06:18 | different icon for a Repeating group. It
actually has a dropdown on it, this little arrow.
| | 06:25 | Now I can go ahead and add the
next few fields and I'm going to click
| | 06:28 | TravelRequest. Let me show you what
happens when I don't. Let's say I forget and
| | 06:32 | I'm up here in myFields and I add the
first field and that is City; and I add
| | 06:38 | another field, Departure date cannot be blank.
| | 06:44 | I'll see those aren't indented. So what do I
need to do here? Same thing I did a minute ago.
| | 06:51 | We are going to move this, put it
under TravelRequest, move this one, put it
| | 06:56 | under TravelRequest, notice how that works.
| | 07:01 | Now they are two other choices
here's as well; Move Up, Move Down.
| | 07:05 | Move is used to move from one group to
another, or into a group, or out of a group,
| | 07:11 | which is still putting you in the group myFields
if we move these out of a group.
| | 07:15 | If I simply want to rearrange items within a
group, then I can use Move Up, or Move Down.
| | 07:19 | So if I decide I'm actually want the
Departure date first, click here to move it up.
| | 07:24 | Or if I want City first, click here
to move it up, or click here to move it down.
| | 07:29 | So that's how we use groups to be
able to organize our data source, and the
| | 07:34 | Move, Move Up, and Move Down commands on
the Context menu to be able to organize
| | 07:40 | this in a way that makes sense.
| | 07:42 | When you add a new field to the
bottom of this list, because you can't add a
| | 07:46 | field for example here at the top,
you'll spend a lot of time going Move Up,
| | 07:51 | Move Up, Move Up to move it up.
| | 07:53 | But you always want this Data source
to be human readable and understandable.
| | 07:57 | And part of what makes it understandable
is that it is organized in the same way your form is.
| | Collapse this transcript |
|
|
4. Formatting a TemplateSelecting a page layout template| 00:00 | Whenever we create a new template in
InfoPath 2013, there is a page layout
| | 00:06 | template that's assigned to it.
| | 00:07 | So when I choose for example Blank
form, I automatically get a page layout
| | 00:13 | template here that has a space for a
heading across the top and tables down below.
| | 00:17 | Now if I want to change the layout
template for this entire page, I go to the
| | 00:21 | Page Design tab and I can choose a different one.
| | 00:24 | But it's a little more complex than that.
| | 00:26 | These are peers that I get to swap out
one for another like I would if I chose a
| | 00:30 | different chart layout in Excel or a
different style layout in Microsoft Word or
| | 00:36 | different design in PowerPoint.
| | 00:37 | This is actually an opportunity to stamp
a new table right here where I am.
| | 00:42 | So if I for example click down below
the table I have already and choose
| | 00:48 | another table, I get another table
just like the one I had. I just did undo.
| | 00:52 | What Microsoft would like us to do is
to select this entire table and delete it
| | 00:57 | and then choose the page layout
template you would like to use.
| | 01:00 | So if I wanted to have a Title
and Body that's what I would select.
| | 01:04 | So I'd have a row to place my title in,
a row where I could click and add body
| | 01:08 | text and another row where I could add some tables.
| | 01:11 | So what happens when I've already
started creating things here in my table?
| | 01:16 | What happens when I already have a form?
| | 01:18 | Well, actually we do.
| | 01:20 | So let's go back to our form we've been working on.
| | 01:23 | It looks like this right now. If I want to
change the layout of this, I'm
| | 01:28 | really well advised not to simply
choose another template, because if I do, all
| | 01:32 | I'm going to do is stamp another table right here.
| | 01:35 | Instead, it makes a lot of sense for me
to use the tools that I have that are table
| | 01:41 | tools, because for example, if I
wanted to have this Title and Body space,
| | 01:44 | that's really similar to what I have now.
| | 01:47 | All I need to do is go in and insert
another row, just like that and make
| | 01:52 | whatever size I need it to be.
| | 01:54 | So I don't have to choose
from the templates that are here.
| | 01:57 | I can create many of these looks simply
by modifying the table that I have already.
| | 02:02 | Another thought, these are page layout
templates, but they're layout templates.
| | 02:07 | So if I decide that I'd like to have
for example a Title and Body or just some
| | 02:13 | body text and a space for this type of
column underneath, I can click at the
| | 02:17 | end of the page layout template I already
have and insert another one just like that.
| | 02:23 | I can select this row,
| | 02:25 | delete it because I don't want another title.
| | 02:28 | And now, what I've done is I've added
another page layout table that allows me
| | 02:31 | to continue to work with my layout.
| | 02:34 | If I wished, I could select this entire
table that I have here and I could move
| | 02:39 | it down here. I have that choice.
| | 02:41 | Often when I do, what will happen is
I'll have to spend some time reformatting
| | 02:46 | the table, readjusting the height of
the rows for example; but that's another
| | 02:50 | thing that I can do if I really want
to switch to a different layout template
| | 02:53 | and I've already moved along my project.
| | 02:55 | So if you want to change page layout
templates, you're best to do it before
| | 03:00 | you've added any content to your form.
| | 03:02 | If you want to do it later, I advise
you to try to determine how much you
| | 03:06 | really want to switch to another template
and how much you simply want to adjust
| | 03:10 | the columns and rows that you have
already using the Table tools>Layout tab.
| | Collapse this transcript |
| Adding and formatting a layout table| 00:00 | Every good form is based on layout
tables. Layout tables allow us to position
| | 00:05 | and in InfoPath size the
controls we place in a form.
| | 00:10 | For example all of these controls with
the same size, because they're in the
| | 00:13 | same column. By using layout table
we get a very regular standardized
| | 00:17 | appearance to our forms.
| | 00:19 | We also ensure that it's very easy
for us to position controls on the page.
| | 00:24 | If I simply start dropping controls
into a space that doesn't have tables in
| | 00:29 | it, then I'll spend a lot of time trying to
ensure the controls are lined up with each other.
| | 00:34 | By using tables my controls are left
aligned, my labels are left aligned,
| | 00:39 | everything looks really good.
| | 00:40 | So if I want to I have additional
layout tables, I simply choose INSERT and
| | 00:46 | select one of the tables that
are here or create a Custom Table.
| | 00:49 | So let's talk about each of these little bit.
| | 00:51 | When you point to a table and hover
you'll get a description of the tables.
| | 00:56 | This is a Two-Column table with
both a heading and a subheading.
| | 01:00 | Now when you see two columns that's
not for Two-Columns of data; a Two-Column
| | 01:04 | table is for a column of labels and a column of data.
| | 01:08 | When you use a Two Column table anywhere,
it takes up a lot of space. However
| | 01:13 | they very easy for users to fill out,
because all of your data is in a one
| | 01:18 | field after another in the same column; there's
no tabbing back and forth from column to column.
| | 01:22 | So two column tables are tables that
users love. If you think about many the
| | 01:27 | forms that you might fill out on a
mobile device you'll find almost all of them
| | 01:31 | are two column forms.
| | 01:33 | Single Column places the label slightly
above the Information and that's another
| | 01:38 | look and also very, very effective, on
smaller laptops, very effective, on net
| | 01:44 | books very effective on mobile devices.
| | 01:46 | Four Columns assume that you have a
little bit more real estate. We've used a
| | 01:51 | Four Column Layout here in our form;
Two Columns of labels, Two Columns of data.
| | 01:56 | For each of the types: Two Columns,
Single Columns, and Four Column; we have a
| | 02:00 | wide range of layouts then. We have
layouts that include Headings, layouts that include
| | 02:05 | Headings and Subheadings; we have some
layouts that include Shading, some that
| | 02:11 | include No Shading, and some that include No Heading.
| | 02:14 | So you simply determine what it is you want next.
| | 02:17 | If I place a Two Column table here,
for example this Two Column table.
| | 02:24 | I can be assured that the center point
of my Two Column table will be the
| | 02:28 | same as the center point of my Four
Column table, because they're built
| | 02:31 | exactly the same way.
| | 02:32 | I am going to undo this. Let's
take a look instead at a Two Column table
| | 02:39 | it has some shading.
| | 02:40 | Now this Two Column table gets some
colors from somewhere, you might wonder where
| | 02:44 | that is; in the next movie will be
looking at themes, because themes determine
| | 02:48 | the colors that are used here in our form.
| | 02:52 | Let's take a look at that Single Column
then, where we're adding both the label,
| | 02:56 | and the control, and I'm simply going
to pull a control that we've already using
| | 03:00 | out here, so you can see how that looks.
| | 03:02 | Notice that we have the label
above and the control below.
| | 03:06 | So another nice look. But what if I
want something different. What if I don't
| | 03:11 | want all this real estate taken up with
labels and information? I want smaller
| | 03:16 | boxes to put things and smaller
controls. Well then I create a custom table.
| | 03:21 | And this works exactly like it works in Microsoft Word.
| | 03:24 | If I wanted to have for example, seven
columns across, I would simply choose 7
| | 03:29 | and drag down as many rows as I wanted.
| | 03:31 | The rows aren't really consequential,
because if I drag even one row, when I
| | 03:35 | need another I simply tab and the second
row will automatically be created for me.
| | 03:41 | I'm going to undo those two steps.
| | 03:44 | Other ways that I can create Custom
Tables; as I can in Word, I can choose
| | 03:48 | to Draw Table. When I draw a table,
I get a pencil so that I have the
| | 03:52 | ability to actually drag.
| | 03:54 | I can draw in the table I have already,
to break up cells. This often the sort
| | 04:00 | of thing that people still use drawing
to split cells. There are some other
| | 04:05 | tools as well that you can use.
| | 04:07 | I can also choose to say I just
simply want a layout table, and I want to
| | 04:11 | specify rather than by dragging 7x2 or
6x5, or whatever -- I'm right here, having
| | 04:19 | turned Draw Table off, and I'd like
to create a Layout Table that's 5x5.
| | 04:27 | Notice that all of my rows and
columns will be evenly spaced.
| | 04:30 | So those are all the different ways I
can create layout tables here; all the
| | 04:35 | same ways that I can create layout
tables when I'm working in Microsoft Word.
| | 04:39 | After that then I'll simply drag and
drop fields to create controls, or I'll
| | 04:44 | drag controls directly here to be able
to create fields; whatever method I've
| | 04:49 | chosen to be able to work with
creating my form in my data source.
| | 04:53 | But layout tables are the centerpiece
of how we're going to organize the
| | 04:58 | controls in the form;
| | 04:59 | myField list is how I am organizing my
data my tables provide the same kind of
| | 05:04 | structure for my controls.
| | Collapse this transcript |
| Choosing a theme| 00:00 | In InfoPath 2013 we have a series of
Themes that we can assign to our forms.
| | 00:05 | Now these Themes are not the same
Themes that you're used to seeing in the
| | 00:10 | office applications like Word, Excel, and PowerPoint.
| | 00:13 | They're not built on the same designs.
While they have names, the names
| | 00:17 | are very different. They are names that you
wouldn't normally associate with the office Themes.
| | 00:22 | So if you want to use a core set of
Themes, then what you'll want to do is know
| | 00:26 | which ones you're using. These
actually match up with some of the Themes
| | 00:31 | that are used in SharePoint 2010 for example;
and they come in five different categories.
| | 00:36 | We have these Default Themes, then we
have Professional Themes, they are built on
| | 00:41 | the same set of colors.
| | 00:42 | So if I look here, I see a blue, blue,
blue, blue, and so on. Here's more of
| | 00:47 | a gray green. We moved here to the
berry colors, and you'll see those on the
| | 00:52 | top row of each one.
| | 00:53 | So we have these Defaults that have
lots of white in them, then we have a set
| | 00:58 | of Professional Themes.
| | 01:00 | Industrial have a gray back scale to them,
but it's often many the same kinds of colors.
| | 01:05 | Playgrounds are meant to be more
fiesta-like a little bit more fun, and then
| | 01:10 | modern Themes, many of which
have a bar on the left-hand side.
| | 01:13 | So when I want to change my theme, I
simply click on the PAGE DESIGN tab, click
| | 01:19 | on the dropdown list, and choose a New Theme.
| | 01:24 | Now with my New Theme, I have not just a
new gray back scale, but I also lost my
| | 01:30 | centering, because in this particular
theme our text is left justified. This one
| | 01:36 | has a lemon yellow back scale and
notice that might text for my labels is gold.
| | 01:42 | We make another choice like Playground, and
change in our font, and a change in our alignment.
| | 01:48 | So like the theme you find an office,
it's not simply a set of colors you're
| | 01:51 | choosing. You are choosing fonts, and
your choosing alignments, you're choosing
| | 01:55 | different styles, you are choosing colors altogether.
| | 01:59 | And when you find a set that you like
for your forms, again I encourage you to
| | 02:04 | know which one it is and to make note of
it so that you can use it over and over
| | 02:09 | again for forms that should be similar.
| | 02:10 | In most organizations there is going to
be some standardization, some branding.
| | 02:14 | So another alternative is for you
to have a conversation with the folks in
| | 02:19 | your organization who are in charge of
branding and color schemes and say, which
| | 02:23 | of these do you feel is actually a
best instance of the types of palettes that
| | 02:28 | we're trying to use here in my organization.
| | 02:31 | Do we want use this for some particular
uses, the professional classic in this
| | 02:36 | set, it's like orange, and then perhaps
for others and this would be allowed as well.
| | 02:40 | So if you're not a design person yourself,
consider spending some time taken a
| | 02:44 | design person out for coffee, and
getting a consult on what would be the best
| | 02:48 | uses of the particular types of templates,
and Themes that are available to
| | 02:53 | you here in InfoPath.
| | Collapse this transcript |
| Inserting a logo or other picture| 00:00 | Part of branding a template that you're
going to use is to insert your logo for
| | 00:05 | your project, or for your organization,
and there are several ways to think
| | 00:09 | about how we do this.
| | 00:11 | In InfoPath an imag is treated like a word in-line image.
| | 00:14 | So if I click somewhere and put an
image there its right where it's going to go.
| | 00:19 | I am going to go to the INSERT tab, and
go to my images folder. You have the same
| | 00:25 | images as well, if you have the exercise files.
| | 00:28 | So if I'm right in front of the T and
Travel Request, and I go to Pictures, and
| | 00:32 | I choose a Picture it's going
to come into whatever size it is.
| | 00:35 | Now when we started this exercise with
this form I actually started with this
| | 00:39 | particular image and as you can tell
this just way too big.
| | 00:43 | And so one of the alternatives that
do you've is to talk to your folks
| | 00:46 | in branding and to tell them that you're
going to need some images that are smaller.
| | 00:50 | But another opportunity for you is
simply to take this image into Microsoft
| | 00:54 | Paint and make it smaller, or any
other good editing program that you have.
| | 00:59 | So we have several choices now of different logo sizes.
| | 01:03 | Let's look at this 25x21. it's really
kind a cute. That might be all we want,
| | 01:08 | that might simply be enough.
| | 01:09 | I just hit the spacebar and it moved it over little bit.
| | 01:12 | If I have a larger image I actually
might want to create a small table here to
| | 01:16 | be able to put the title and the image in.
| | 01:18 | Let me show you how that
works when you think about this.
| | 01:21 | So I'm going INSERT a Custom Table
just like that. I'm going to slide
| | 01:26 | my column divider over and take my Travel
Request Text, and actually drop it in there.
| | 01:33 | Now it gets resized, but that's okay,
I can make it bigger I can make this
| | 01:37 | larger if I wish and that would be a really good idea.
| | 01:42 | So let's make that a nice 18 point
again. Then I can put this image here.
| | 01:46 | I have the ability then to move this
as close to the image as I want.
| | 01:51 | That creates a really nice look for my
image, because I have a lot of control
| | 01:55 | over it. I can center the image here, if I wish.
I can center up and down as well, change my spacing.
| | 02:02 | So if I want to be able to deal with
where this image lies, just as with
| | 02:07 | everything else my form, I am
going to wrap a table around this.
| | 02:10 | But I am going to hit Undo a few times,
because I'm perfectly content with the
| | 02:14 | way this looked right here. And our
public relations department actually says
| | 02:18 | this is a fine use of this branding,
that this logo in front of a form name
| | 02:21 | works really well. And we're going to
see this throughout all of the other forms
| | 02:26 | that we're going to create.
| | 02:27 | You have access to lots of
different image sizes, there in the image
| | 02:30 | folders that's provided.
| | 02:31 | But if you are creating forms for your
organization, you want to make sure that
| | 02:35 | you're getting the images that you need to use.
| | 02:37 | Don't simply go crop them off the
website. Get really good versions of the
| | 02:41 | images, so that they hold up not just on
screen but when you print them as well.
| | Collapse this transcript |
| Inserting an online image| 00:00 | There's a new feature in InfoPath
Designer 2013 that's related to how we source
| | 00:05 | the images that we want to use
when we design form templates.
| | 00:09 | And on the Insert tab, under Illustrations,
you'll find this button for Online Pictures.
| | 00:13 | So, I have a small order form here,
and what I would like to do is to be able
| | 00:18 | place some images of items here, and
then we would put some controls over on the
| | 00:21 | right that said, you know what size
do you want, and how many do you want of each of these items.
| | 00:27 | So, I'm simply going to create a little
more or less room over here, and go to
| | 00:32 | Online Pictures, and here are the
kinds of places I can go get images from.
| | 00:36 | I can go get images from a SharePoint
Library, I can get images from Office.com
| | 00:42 | Clip Art, and this is a search box. These are
royalty-free illustrations that you can use.
| | 00:46 | So, if I was searching for a picture for
example of bananas, I can enter bananas
| | 00:51 | and go search and find
pictures of bananas that I can use.
| | 00:54 | I can search the web for images,
remembering now that some of the images you
| | 00:59 | find are images that belong to people.
You can't simply go grab whatever image
| | 01:02 | you want user it royalty-free; there's
a difference right here royalty-free,
| | 01:06 | and search the web.
| | 01:07 | But there are places that you can look
and find images that are available for
| | 01:11 | use with attribution
sometimes or sometimes just freely.
| | 01:15 | I can look on my SkyDrive. If you have
more than one SkyDrive on your machine
| | 01:19 | because you're working in a SharePoint
environment, this is my SkyDrive that is
| | 01:25 | part of Windows, not my SkyDrive
that is my SharePoint SkyDrive.
| | 01:29 | So, if I have stored stuff in my Windows
SkyDrive, it's right here and available
| | 01:33 | to me, and I'll be right back there in a second.
| | 01:35 | And I can also connect a Flickr
account here and go look for items there as
| | 01:39 | well if that's where store my pictures.
| | 01:41 | But I'm going to go browse my SkyDrive.
And in my Pictures library I have images
| | 01:47 | of these products I want use.
| | 01:48 | So, here's my image. I can tell what
size the images in the lower left-hand
| | 01:53 | corner, and I'm going to choose this
raincoat and insert it. And I'd also like
| | 01:59 | to go get those hiking boots, back
again to online images, go right back to the
| | 02:04 | same place, and these
are our funky hiking boots.
| | 02:08 | Now, some of these images are really
big. We will go do one of those in the
| | 02:12 | second so you can see the
difference. Even this one is cut off.
| | 02:15 | So, there's a lot to be said here in
form design for having a set of images are
| | 02:20 | standardized to the same size.
Because when I go insert an image that's the
| | 02:23 | wrong size, it doesn't
really matter where I get it from.
| | 02:26 | If it's too big, it's too big,= and so
here is this huge image of this pink
| | 02:31 | raincoat. I love to include it.
Unfortunately, all I'm begin is the end of the sleeve.
| | 02:36 | But you get the idea that if you're
using Clip Art from Office, if you're using
| | 02:41 | images that are saved in a
Synchronized Library from SharePoint.
| | 02:43 | If you want to just look on Bing and
see what's there, if you know photo
| | 02:47 | collection in Flickr, or if you've
place pictures in your SkyDrive, this is a
| | 02:50 | great way to be able to insert
them in our forms here in InfoPath.
| | Collapse this transcript |
|
|
5. Using Controls to Collect DataUnderstanding the use of form controls| 00:00 | There are three basic types of
controls that we're going to use in InfoPath,
| | 00:04 | Input controls, used to capture text-
based information from users; Object
| | 00:09 | controls, used to capture things like
Hyperlinks, and Pictures, and Items that
| | 00:14 | users would Browse to; and Containers,
used to group, Input and Object controls
| | 00:19 | into useful organizational forms.
| | 00:21 | I've created a simple form that we can
use to illustrate how we work with all
| | 00:26 | these different types of controls.
| | 00:28 | So on the right I have a Field list.
This is information that I want to
| | 00:32 | capture from users.
| | 00:33 | So I'm going to use either Object
controls, ore Input controls to be able to
| | 00:37 | grab it. Remember that I can take a field
like FirstName, drag it over here and drop it.
| | 00:43 | And if I highlight right here in the
center so I get both the Add label, and Add
| | 00:48 | control cells, I'll actually get a Label
Custom made for me, the InfoPath making
| | 00:54 | it a little more friendly, inserting
a space, and adding a colon (:) here.
| | 00:59 | And in the same way I can go ahead
and add my LastName control, both of
| | 01:04 | those work just fine.
| | 01:06 | Now the controls that are placed to your
are text controls, they are text boxes;
| | 01:10 | this control right here. There are
other controls I could use to capture text,
| | 01:14 | but by default when I take a field that
I've said contains Text and drag it out
| | 01:19 | here on form I'm going to get a text box.
| | 01:22 | I can point to a field over here to
see what it says it is, and when we set
| | 01:26 | the properties of this field originally,
I actually chose text but (string) up
| | 01:31 | here in parentheses ().
| | 01:32 | So when you see the word (string), it means text.
| | 01:35 | If I want to be able to see them all
the time I simply turn on Show details
| | 01:39 | here, and I'll be able to see that this
is a date that this field is string, and
| | 01:43 | so are the other two here.
| | 01:45 | When the control appears it has
handles around it that allows me to move the
| | 01:50 | control, or to change its size.
| | 01:52 | If I want to move a control I simply
select it, so if it's not selected already
| | 01:57 | click once on it, and move my mouse so I
have a four headed arrow and then I can
| | 02:01 | go ahead and move this control somewhere else.
| | 02:03 | Notice the label doesn't go with it
it's created at the time I dragged this
| | 02:07 | field onto the form, but
they are not grouped together.
| | 02:10 | Remember you can use Undo, Ctrl+Z, or
you have a button up here to undo many of
| | 02:15 | the changes you'l making InfoPath,
but not all. And also because it has
| | 02:19 | handles, I can resize it.
| | 02:21 | So I can drag to change its size, but I
can't make it bigger than the cell it lives in.
| | 02:26 | So if I wanted to make this name longer,
I would actually have to create more
| | 02:30 | space here for it by moving the column
boundary between this column and the next column.
| | 02:35 | Now I have another string field called
Gender and I would actually like to be
| | 02:40 | able to provide some guidance for my users.
| | 02:42 | You would think that this would be a
short and predictable list, but if I throw
| | 02:46 | a gender field into a form and
simply leave a blank, I'll get a lot of
| | 02:50 | different information from folks, I will get man,
and woman, male-female, and M, F, boy, girl.
| | 02:56 | So what I'd like to do is, I'd like in
this case to not use the Existing Text
| | 03:02 | Box that I'm going to get, the default
for a (string), I'd actually like to use a
| | 03:06 | DropDown list here.
| | 03:07 | I have a couple of different ways to do
that, one way is actually to click and
| | 03:11 | to say I'd like to use a dropdown list.
| | 03:14 | When I do that I get a new field here.
I can change the way this control
| | 03:20 | relates to this field, and say no look
it up here, but that's not actually the
| | 03:25 | easiest way to do this.
| | 03:26 | The easiest way to get the outcome that
I want is to select the gender field and
| | 03:32 | right drag it here into my form.
| | 03:34 | When I do I release the mouse button,
and I get a choice and there is my
| | 03:38 | DropDown list box and I'll show you
in a movie later in this chapter, how we
| | 03:41 | would configure this list box
to provide choices for users.
| | 03:45 | If I want to remove control, all I have
to do is select it and press Delete or
| | 03:49 | Backspace on my keyboard and there it goes.
| | 03:53 | Now I also have a Date field here, and
I'm going to drag the Date field out into
| | 03:58 | my form. Because it's a date rather
than a (string) I am not getting the text
| | 04:03 | box by default, I'm getting a Date Picker by default.
| | 04:07 | There might be times that I'd want to
use a text box instead, or I would want to
| | 04:12 | use a dropdown list, but the default
for dates, is the Date Picker control.
| | 04:15 | There is a relationship between the
field here, and the control over here.
| | 04:20 | So right now you'll notice that Today
is highlighted, and so is the control I
| | 04:26 | am using for Today. There's a
little information box here with a blue
| | 04:30 | highlight around it, and a small (=)
equal sign in it; this is actually the
| | 04:35 | binding setting for this control.
| | 04:37 | This control is bound to this field of data.
| | 04:41 | LastName is bound to this field of data.
| | 04:44 | So when I select something in the
field list, it'll automatically select any
| | 04:48 | control bound to it in the form. When I
select in the form a particular control,
| | 04:53 | the field that it's bound to
its highlighted here in the list.
| | 04:56 | So if I click here on field1 (string)
you'll notice it's not bound to anything.
| | 05:00 | Nothing lights up here. Insertion
Point just hangs around someplace.
| | 05:05 | So I'm going to delete this.
| | 05:06 | When I do I'm prompted to be attentive
to the fact that if I had a control,
| | 05:11 | I am kind of making it an orphan,
I am abandoning it in the form.
| | 05:15 | This is a Standard dialog you're going
to see every time you delete a field, and
| | 05:18 | we'll be deleting lots of them.
| | 05:20 | So get used to it. You do one look
and make sure that it's what you want to
| | 05:24 | delete, because if you delete a field here
you'll do some things that we can't undo.
| | 05:28 | So I am going to simply click Yes,
go ahead and get rid of that for me.
| | 05:33 | One more thought: all of these fields
have properties and we actually looked at
| | 05:36 | those when we created the fields earlier.
| | 05:38 | If I want to see the Properties for a
field I can simply choose Properties
| | 05:42 | and here's its name and its type,
and its Data type, it's a date rather
| | 05:47 | than for example text. I have certain set of
Properties that are associated with the field.
| | 05:53 | I also have Properties associated with the control.
| | 05:55 | So when I right-click for example
on the Date Picker, notice Date Picker
| | 05:59 | Properties, specific to this type
of control. I have properties that
| | 06:03 | dictate not just the data type but the
format for that data type; how would I
| | 06:07 | like this date to appear.
| | 06:08 | I've Properties that influence the display.
I can put a placeholder in that says
| | 06:13 | choose a date for example.
| | 06:15 | I can drag the handles to change the
size of field, but I can also set it here.
| | 06:20 | I can set padding within the
cell that I would like to have.
| | 06:23 | I can provide some accessibility
information, a screen tip so that if I have
| | 06:26 | someone with visual disabilities
working with this form, when their screen
| | 06:30 | reader gets to this control it can provide
some help information. And then some
| | 06:35 | settings for browser forms that we
will talk about later in the course.
| | 06:39 | So we have Properties not just for fields,
but also for controls as you'll find
| | 06:44 | out later we have Properties for the form as well.
| | 06:47 | If we're setting Properties in the
Data field we're going to be doing things
| | 06:50 | like Setting the Fields name, choosing
a data type, determining whether its
| | 06:53 | required, setting whether or not that
particular field of data can repeat over
| | 06:57 | and over again in the form, and
determining how that data should be merged
| | 07:02 | if we have multiple items and then we're
sending that information back to the Data source.
| | 07:08 | Form controls on the other hand are
where we determine binding, how the control
| | 07:13 | is related to a particular field of
data. Only one field of data can be
| | 07:17 | bound to one control.
| | 07:19 | The Format for the data: it's not just a
date, it's a date where we're going to
| | 07:23 | use the full name of the month spelled out.
| | 07:26 | What's the default value for this field,
if there is one? How do we validate
| | 07:30 | this data if it's required in the
data field? We also want to make sure in
| | 07:34 | the control that we're saying we
actually have to supply this information here
| | 07:37 | in the control. How was it displayed,
where is it, what size is it? And finally
| | 07:42 | some Accessibility settings,
and some web Browser settings.
| | 07:45 | So two different sets of Properties
that we'll use to be able to setup our data
| | 07:50 | and to be able to create a form that
will be easy for users to use, and it
| | 07:55 | provides validation as well
as good access to our data.
| | 07:59 | A lot to think about, lots of Properties.
But as you work with InfoPath you will
| | 08:05 | get really slick at creating the right
settings in the right place to be able
| | 08:09 | provide the user experience you want to provide.
| | Collapse this transcript |
| Organizing a template with sections| 00:00 | Earlier in this course we talked about
how to create a data source and in the
| | 00:04 | task pane on the right in myFields
list you see a well-designed data source.
| | 00:10 | We have here to top the ability to
enter Today's date, but then we have
| | 00:13 | Information about a Requestor and it's all in one group.
| | 00:16 | We have information about posts,
including some categories and whether or not
| | 00:21 | it's news. We'll talk a little bit
more about this particular set of data,
| | 00:26 | because we're going to use this lot in this course.
| | 00:29 | But it's well structured. We used Tables
here and InfoPath to make sure that our
| | 00:35 | data looks good, that's visually
appealing and easy to work through.
| | 00:40 | However, when we want to reinforce the
structure that we have created in our
| | 00:44 | data, we don't just trust that to
tables, we actually use containers for that;
| | 00:49 | Sections, Optional Sections,
Repeating Sections and so on.
| | 00:52 | So let's review this field list real quickly.
This is a web Post Request.
| | 00:57 | How this works is, if I want to request
something be put on our intranet or on
| | 01:03 | our internet site I send a request.
| | 01:05 | Now what I used to do is simply
type up an email and send it off to our
| | 01:09 | communications folks and say hey I've
attached this file, I'd like you to post
| | 01:12 | this, I think it's great. That
usually meant they had to reply my email, and
| | 01:16 | say well that's all well and good, but
could you tell us a little bit more about
| | 01:20 | it, could you categorize it for us?
I'll write back and say sure, and then they
| | 01:24 | would send me some more
information, or they would call me.
| | 01:26 | So at some point in time they said
why don't, we create a form that makes it
| | 01:30 | easy for us to tell users everything
they need to say to us, so that we can get
| | 01:35 | out of the business of having
this back-and-forth conversation.
| | 01:38 | We could actually make it easy for
users to get stuff to our website.
| | 01:41 | So that's what this form is going to do.
| | 01:43 | The fields then that we see on the
right were actually developed through
| | 01:46 | business analysis by talking
with the folks in that department.
| | 01:49 | We didn't make this up because we needed
to meet their needs, not their needs as
| | 01:53 | we imagine them to be.
| | 01:55 | And so how this works is, I'm going to
fill out if I am the user, my personal
| | 01:58 | information. I'm going to fill out a
title and description for the post. I'm
| | 02:03 | going to provide some information about
what category I believe it goes in, and
| | 02:07 | perhaps more than one category;
this will be a set of repeating data.
| | 02:12 | I want to indicate whether in my
opinion this is news worthy data, and then
| | 02:17 | I'm going to be able to attach a file and
say what type of a post this is going to be.
| | 02:22 | So rather than me sending an email
and trying to capture all of this
| | 02:26 | information, I'll simply fill out a form.
| | 02:28 | And we're thinking about the organization
then we have first some information
| | 02:32 | about Requestors here,
that's this group of information.
| | 02:35 | And whenever you see that kind of
information, this type of data structure that
| | 02:40 | you've created, I want you to
think automatically, section.
| | 02:43 | When you see groups in your data source
think the one have a section in your form.
| | 02:48 | So what I am going to do is I am
going to click in my form and I'm actually
| | 02:52 | going to Insert Section.
| | 02:53 | Now there are different types of
sections so let's just take a moment and think
| | 02:57 | about these. First I have a plain
section all that it is, is a container for
| | 03:02 | other controls. Then I have what's
called an Optional Section, and Optional
| | 03:06 | Section is a section that either a user
can say I don't need this in my form or
| | 03:10 | it doesn't appear to begin with and they
click link to insert it in their form.
| | 03:14 | So let's say for example that we have a
form where you are filling out Insurance
| | 03:18 | Information and one of the
questions is, is the patient a minor.
| | 03:21 | And if you say Yes, an Optional Section opens
so that you can you we can more
| | 03:25 | information; but we don't need
all the time only in this instance.
| | 03:28 | And then we have Sections that will
repeat, a section that has a set of controls
| | 03:33 | it comes up over and over and over again.
| | 03:35 | So in our Travel Request form that
we were talking about, someone might say
| | 03:39 | I have a Travel Request and the Travel
Request involves five different airline flights.
| | 03:42 | So we need to have an airline flight
section that repeated over and over again.
| | 03:46 | There's one more type of container and
that is a Choice Group. In a Choice Group
| | 03:51 | you have two possibilities. So
let's go back to our Insurance example.
| | 03:54 | One possibility is that the patient
is filling this information out for
| | 03:58 | themselves, another is that they're
filling it out for dependent minor, and a
| | 04:01 | third possibility is they are filling
it out for dependent who is not a minor,
| | 04:05 | their partner or spouse.
| | 04:06 | In that case we could setup three
different sections and put them on a Choice
| | 04:10 | Group. The trick with a Choice Group is
the user gets to choose one of a set of
| | 04:14 | parallel choices; they can't choose two, just one.
| | 04:17 | So those are the different types of containers.
Which do we choose? It depends
| | 04:21 | on our business purpose.
| | 04:22 | So I want to insert a Regular Section.
I am clicking here in my Form Section.
| | 04:29 | Now remember what I said, when you see
a group, think Section. When we create a
| | 04:33 | Section, InfoPath thinks group.
| | 04:37 | Now I would like to be able to say
I want you to tie that back to this
| | 04:41 | Requestor, right here and we will see
how to do that actually in the next movie.
| | 04:45 | Another way I could have done this is
I actually could've taken Requestor and
| | 04:50 | dragged it, and dropped it, and I would
get automatically, a section with all of
| | 04:55 | the Requestor controls in it.
| | 04:57 | I'm going to undo that. Show you a
third alternative to placing a section.
| | 05:01 | I'm going to right-drag and when I drop
I have a choice: a section with controls,
| | 05:08 | just give me a section but tie it to
request or let me put the controls in
| | 05:12 | later; all the controls in a Layout
Table; just the controls but no Section; and
| | 05:17 | Optional Section with Controls, the same
as this but it would be Optional; or an
| | 05:21 | Optional Section the same as this choice but Optional.
| | 05:24 | So let's take a look at what happens
when we ask for controls in layout table.
| | 05:29 | Notice they are nicely laid
out but I don't have a section.
| | 05:35 | But I do like this choice that automatically
ties this section right here.
| | 05:41 | They are bound together.
| | 05:43 | So we have a different way of looking
at this depending on how you'd like to
| | 05:47 | work next. Are you more comfortable
placing a table next, are you more
| | 05:50 | comfortable dragging the form, fields,
one at a time from the field list?
| | 05:54 | It's up to you really.
| | 05:56 | So as you think about how your data
is organized, first make sure your data
| | 06:00 | source is broken down in a way that's
very, very useful and then second make
| | 06:04 | sure that everytime you're
using groups, you're using sections.
| | 06:08 | I am going to need one more section here
for Posts, so I am going to go ahead and
| | 06:12 | just add that and I know I have
another group down here at the bottom, but we'll
| | 06:16 | talk about that in a moment.
| | 06:18 | And then inside this Post Group, I'm
actually going to have two other sections
| | 06:21 | for Categories and for News and that
will look like this Sections within a
| | 06:26 | section, as you see down here.
| | 06:28 | So this form is a little bit of a
mess; don't worry about it we're going to
| | 06:31 | clean it up in the next movie.
| | 06:33 | But I want to say one more important
thing about Sections before we leave here.
| | 06:37 | I have the ability to be able to sign
a form with a digital signature.
| | 06:41 | What that does when I have a user do that is
it locks down the forms so it can't be changed.
| | 06:45 | So for example once the requestor has
filled some information out they have the
| | 06:49 | ability to say I am going to sign this,
this is how it was when it left me
| | 06:54 | and I'm going to lock this down.
| | 06:56 | When I sign forms in InfoPath, I
have two choices of what I want to sign;
| | 07:00 | I can sign a whole form or I can
sign one or more specific sections.
| | 07:03 | So if I have a group of data that
only one group in my organization is going
| | 07:08 | to use, I want to make sure to put in
a separate section, that way I can sign
| | 07:12 | the rest of the form and allow my users then
to have access to the parts that they need.
| | 07:17 | So two different groups of users in
the form, two different sections. Use
| | 07:21 | Sections then to organize not just in
terms of how your data is laid out, but
| | 07:25 | also how your data is used by
different groups of users in the enterprise.
| | 07:30 | So as you think about your data and
how your form will be used, make sure that
| | 07:34 | you're using sections to enforce the
data structure that you've provided over
| | 07:39 | here in your field list.
| | Collapse this transcript |
| Changing data binding for a control| 00:00 | In the previous movie, we inserted
some sections in our Web Post Request form.
| | 00:05 | It's not in great shape right now,
but it's perfect for what we need
| | 00:10 | to learn next, which is
how to change data binding.
| | 00:12 | You may recall that I inserted a section here
and I showed you that if I drag a
| | 00:17 | group I actually automatically have
the data binding that I might want.
| | 00:21 | So that's one way that we can think about this.
| | 00:24 | Then what we want to do is put a table in here.
| | 00:27 | For example, a table like this and rearrange these fields.
| | 00:30 | But our binding is fine right here.
| | 00:32 | When I click on text boxes, they know where they belong.
| | 00:35 | Now I need to have a section for posts,
and that's actually this section right
| | 00:39 | here that includes these other two groups.
| | 00:42 | So when you want to select a section,
the easiest thing to do is to click its tab.
| | 00:47 | Here is the group1 section I've created earlier,
no longer bound to anything,
| | 00:52 | because I deleted it.
| | 00:53 | So I'm going to go ahead and delete this
group as well, make life a little easier.
| | 00:58 | Here is group2.
| | 00:59 | I click here and then group3 and
group4, the two sections inside of it.
| | 01:04 | group2 is actually going to be bound to Posts.
| | 01:07 | So I have a variety of ways that I can
do this, but the easiest way is once this
| | 01:12 | is selected, entire thing, either right-click
and choose Change Binding or,
| | 01:18 | I can double-click the section.
| | 01:19 | What that does is it actually moves
the Properties tab of the ribbon for
| | 01:23 | this control out to the front. When I've
done that I can change binding here as well.
| | 01:30 | Either of these is going to open up
the Binding dialog box for sections.
| | 01:34 | And it says to set the binding, select a group
or field in which to store the controls data.
| | 01:38 | Now right now, we only have one data source here.
| | 01:42 | The main data source is our only data source,
but it's possible that we would be
| | 01:45 | feeding data from a form into two or
more data sources. If so, make sure you've
| | 01:49 | chosen the correct one here, so
that you see the right group of fields.
| | 01:53 | And I'm going to say that this
section's information is going to go into
| | 01:57 | Posts and I click OK.
| | 01:59 | Now the section is directed to Posts.
| | 02:02 | Inside that section, I have this next
section here, group3 and I actually want it
| | 02:07 | not to be here in group3, which is
nothing, but I wanted it to be my Posts
| | 02:12 | Category, so it's exactly the same.
| | 02:14 | Change the binding and choose Post Categories, OK.
| | 02:19 | Notice that's taken care of.
| | 02:21 | Notice that it made this an optional section
and we can talk more about that later.
| | 02:24 | I'm going to change the binding for
group4, says it's unbound; it
| | 02:29 | can't store data and that's because
it has no place over here to put it.
| | 02:33 | We're going to change our binding again here,
and this is for our News group.
| | 02:38 | And I'm going to say OK and we
have another optional section.
| | 02:40 | So now when I click on group2, group3
or group4, none of them are bound to
| | 02:44 | anything any longer; no controls, no
sections. I can simply go in and say
| | 02:50 | I'd like to delete group2 and in doing so,
I'm going to get group3 and group4 as well.
| | 02:55 | Everything in it has gone.
| | 02:56 | What if I wanted to undo that?
| | 02:58 | I was wrong, too bad.
| | 02:59 | When I delete groups or fields, I don't have
the ability to undo that change.
| | 03:05 | So at this point, we should feel pretty
comfortable about changing binding,
| | 03:09 | whether it's for sections or I decide
that the department requires a dropdown
| | 03:14 | list rather than a text box. So, I
could just jump right in here and say oh!
| | 03:18 | Give me a dropdown list.
| | 03:20 | There it is and I can delete this
control, because I don't need it anymore.
| | 03:25 | And change the binding on this
control from field1 to requester's
| | 03:33 | department, just like that.
| | 03:34 | And once again, right away then, go in
and clean up your extra fields or groups
| | 03:39 | so that they don't clutter up your form.
| | 03:42 | So I told you I would show you about optional sections.
| | 03:46 | When I created these sections here in
this form, they were originally sections.
| | 03:50 | But when I bound them to some data,
all of a sudden they're optional sections;
| | 03:55 | doesn't really matter why.
| | 03:56 | When I right-click and go to Properties
of the section, what makes something
| | 04:00 | optional is either that it's not in
the section by default or that we allow
| | 04:06 | users to delete the section.
| | 04:07 | If I don't want users to delete these sections,
I simply turn that off and apply
| | 04:12 | it and it's no longer optional.
| | 04:14 | And I can do the same thing with my other section as well.
| | 04:17 | Simply change the Section Properties
and say, no, I didn't mean users
| | 04:20 | could delete that, OK.
| | 04:22 | And now, they're no longer optional,
because the user can't remove them and
| | 04:26 | they're in the form by default.
| | 04:27 | So at this point, you should feel very
comfortable changing bindings, whether
| | 04:31 | you're changing the binding of a
particular field or you're changing the
| | 04:35 | binding for section.
| | 04:37 | This is how it works, so that every
group is represented in your form by a
| | 04:41 | section and every data field is represented by a control.
| | Collapse this transcript |
| Using text controls| 00:00 | If you just watched the prior movie,
you'll notice I did some clean up on the form.
| | 00:04 | I removed some controls that we'd
already replaced and we're showing the
| | 00:08 | details down here as well.
| | 00:10 | There are two basic types of text controls.
| | 00:12 | The first is called a Text Box and the
Text Box is used when we want to enter
| | 00:16 | plain text; and you're going to use
this more than you might imagine.
| | 00:20 | The second control, the Rich Text Box
control, we'll look at in the next movie.
| | 00:24 | The Rich Text Box control is used
when you want to allow formatting.
| | 00:28 | Now it's true that you might wish
that when you entered your name in a form
| | 00:31 | that you could select it and bold it
and you could highlight your phone number
| | 00:35 | and change its font.
| | 00:36 | But the truth is, if you're spending
your time that way, you have way too
| | 00:39 | much time on your hands.
| | 00:40 | We don't want our users formatting
the text in most of the fields that
| | 00:44 | they're going to enter.
| | 00:45 | So for example, my email address and my
name and so on, all of those controls I
| | 00:51 | just want people to type.
| | 00:53 | So I'm going to drag this first name,
field here and when I drop it, it will
| | 00:58 | create a Text Box, because
that's the default for string.
| | 01:02 | I'm simply going to clean this up a little bit.
| | 01:06 | Here's my Last Name, the E-Mail Address.
| | 01:12 | Notice I don't have to place these in the
same order that they appear in my field list.
| | 01:18 | Department, we're going use a dropdown
list for, but Phone, we're going to want.
| | 01:23 | So let's go ahead and take this
field and drop it here as well.
| | 01:27 | And one more that we'll place right
now which is the Title of our Post.
| | 01:33 | And it's down here in the
Posts section, I'll click on Posts.
| | 01:36 | It's not in Post Categories;
| | 01:38 | it actually is a freestanding
field here in the Posts group.
| | 01:43 | So here's our Post Title.
| | 01:45 | Notice that I already have the words
Post Title in there, so if I drop it here,
| | 01:49 | it will still create a label, but I don't need it.
| | 01:52 | So that's all the harder it is
to be able to drop text boxes in.
| | 01:56 | Now let's take a look at their properties.
| | 01:58 | For example, if you are going to
submit this form, I need your First Name.
| | 02:03 | So I'm going to right-click, choose
Text Box Properties and say, this
| | 02:07 | field can't be blank.
| | 02:09 | Let's take a look at some other
choices that are here as well.
| | 02:11 | I can provide a default value for text.
Doesn't make a lot of sense with name,
| | 02:16 | but it will in other areas of this form.
| | 02:18 | I can change the data type if I wish.
Not something I want to do here.
| | 02:22 | If I'm going to change the data type, I
should actually do that over here in my fields.
| | 02:27 | I can provide a Placeholder.
| | 02:28 | It could say Click and type your name.
| | 02:31 | If I do that here, I'm going to do that
on every single control that I have, so,
| | 02:37 | unless you're really dedicated and you
believe that your users don't understand
| | 02:41 | that this would be a first name.
| | 02:43 | That's probably not a great
way to spend your time either.
| | 02:46 | I can say that I want to make this Read-only.
| | 02:49 | That would be a field that in this
particular view of the form, I want to only
| | 02:53 | display and not allow user to edit.
| | 02:56 | We'll work more with that later in this course.
| | 02:59 | I want Spell Check Enabled.
| | 03:00 | I want AutoComplete Enabled.
| | 03:02 | In other words, if the user is entering
a form, then another, then another,
| | 03:06 | windows will keep track of what they
entered and will auto complete for them.
| | 03:09 | In the Text Box, I also have a
choice to make this Multi-line.
| | 03:13 | When I make it multi-line, then as the
user keeps typing, they will get more
| | 03:17 | lines to type in; not necessary here for a first name.
| | 03:21 | And I have another property that's
actually very valuable and that's the ability
| | 03:25 | to limit the Text Box to particular number of characters.
| | 03:28 | Imagine for example, you're having
someone enter their Social Security number.
| | 03:32 | It won't take more than 11 characters
even with the hyphens; or a telephone
| | 03:36 | number even with the country code, you know,
the maximum that that should look like.
| | 03:41 | My Post Title, I'm going to want to
do some limiting, so we'll come back.
| | 03:45 | Here's our Size and our Position within the cell.
| | 03:48 | Accessibility, Browser forms, but
I've set everything I wanted to set and
| | 03:54 | I'm going to click OK.
| | 03:57 | I want to make this field required as well.
| | 03:59 | This happens very quickly as you go through,
and notice that when I'm changing
| | 04:03 | that setting here, it's changing it
over here in my field list as well.
| | 04:06 | I might decide that I also absolutely
have to have your email address.
| | 04:13 | There it is, Required in the Field list as well,
but I'm going to leave the Phone number.
| | 04:18 | If you're asking for a Post, I need to
have a Title and I've actually already
| | 04:22 | made these two fields Required in the Field list.
| | 04:26 | So when I right-click and check the
Text Box Properties, this was already
| | 04:31 | set to Cannot be blank.
| | 04:33 | But I want to provide a Placeholder here
and the reason is that later on, when
| | 04:38 | we publish this form, we're going to
use the Post Title as part of file name.
| | 04:42 | So I'm going to say Title is used
as file name - no punctuation.
| | 04:51 | And I'm going to limit this to 50 characters.
| | 04:55 | There is a check box that allows you to
move to the next control automatically
| | 05:00 | when somebody hits 50 characters.
| | 05:02 | What that looks like is when I hit the
51st character, I automatically move to
| | 05:06 | the next control, which in this case
will be the Description.
| | 05:09 | In most settings all that means is that
you will annoy your users that they will
| | 05:12 | still be typing more characters that
they believe are in the title, when it
| | 05:15 | bounces them over here to the Description.
| | 05:18 | But there are times that this is exactly what you want.
| | 05:21 | You see these in industrial forms where
you have a product number that's exactly
| | 05:25 | 12 digits and that's followed by an
account that has a specific number of digits
| | 05:30 | and people get in the habit of simply
typing in the numbers or the letters and
| | 05:34 | it flies to the next field for them.
| | 05:36 | But if you're going to use this, it's
not going to be because you use it in
| | 05:41 | isolation, but because in your business case,
it makes sense to have people
| | 05:44 | enter without having to Tab or press Enter.
This looks good. Let's say OK.
| | 05:49 | So as Placeholder, text will not be displayed
when the form is edited in a web
| | 05:53 | browser, that's good to know.
| | 05:56 | And notice that it cuts it off
here in my form filler preview.
| | 06:01 | So I need either a bigger area
for Title or a briefer Placeholder.
| | 06:08 | I think what I prefer to do is to provide
a little more space, so let's just go
| | 06:12 | ahead and I'm going to move
the description down here.
| | 06:18 | Make this a little larger and we're going to merge
these cells here to provide a longer space.
| | 06:29 | That looks good.
| | 06:31 | We'll merge these as well, but we're
not going to enter a description yet.
| | 06:37 | We're going to enter this control in the next movie.
| | Collapse this transcript |
| Using rich text controls| 00:00 | In this movie, we're going to find out
how to use and set properties for the
| | 00:05 | Rich Text Box control.
| | 00:06 | So first, we can only use the Rich
Text Box control if the data type that we
| | 00:12 | have for our fields supports it.
| | 00:14 | So if I go take a look at the
Properties of my Post description,
| | 00:18 | you'll find it's rich text.
| | 00:19 | If it's not Rich Text, if it's simply text,
I can't use a rich text control for it.
| | 00:25 | So rich text stored as XHTML corresponds
to the Rich Text Box that we find
| | 00:32 | here. That makes sense, because if
somebody is entering rich text, which
| | 00:35 | means they're formatting it and
they're changing fonts and things, I need a
| | 00:39 | container here at the other end that
can actually grab that rich text that
| | 00:42 | isn't expecting a simple string.
| | 00:44 | The other thing is I'm not allowed to
use the rich text control in many cases
| | 00:49 | where I have repeating data.
| | 00:50 | So we'll talk about that a little
more later when we work with repeating
| | 00:54 | tables, but don't let that surprise you.
| | 00:56 | So why do I want to use rich text at all?
| | 01:00 | I want my user to be able to format the text
they're providing to me and it's important.
| | 01:04 | So I don't want them formatting their
first name or a title that's going to be
| | 01:08 | used as a file name.
| | 01:10 | But when I say give me a vivid description,
paint a story for me, I need to give
| | 01:14 | them the tools to do that.
| | 01:16 | So let's go ahead and take our Post
Description, which is required field, and I'm
| | 01:21 | going to drag and drop that here and
the label comes long, but I don't need it,
| | 01:25 | I've already created it.
| | 01:26 | And let's now right-click and set its properties.
| | 01:31 | In our Rich Text Box, we have many
of the same properties that we have in
| | 01:35 | a regular text box.
| | 01:37 | On the second page however, this is where it's different.
| | 01:40 | I have the ability in my text box control
to say only 50 characters or
| | 01:46 | Multi-line, but here what InfoPath
wants to know is how should this control
| | 01:51 | behave when somebody begins typing and you
haven't provided as much space as they could use.
| | 01:57 | So for example, if I have someone who
begins entering text here and they fill
| | 02:02 | the box and keep going, what
should happen here in the form?
| | 02:06 | The default is Expand to show all text
and so what will happen is we'll just get
| | 02:10 | more and more and more text visible here.
| | 02:13 | The second choice or the second most
popular choice, and first on the list is if
| | 02:18 | it's necessary, Show Scrollbar.
| | 02:19 | Don't grow this box, simply allow it to scroll.
| | 02:23 | You might wonder, well, why would you choose that?
| | 02:25 | The reason as I have a form that when I
print it, it fits to a page and I would
| | 02:30 | rather truncate some text here, not
print it normally, but allow the user to
| | 02:35 | open the form and scroll to it, than I
would to allow a user to force the form
| | 02:40 | on to another page accidentally.
| | 02:42 | The second option is, Scroll automatically
while you're typing, so as I begin
| | 02:46 | typing, the scrollbar will come on, but only if I need it.
| | 02:50 | And then the third choice is, Show the
scrollbars from the very beginning even
| | 02:54 | when this box is empty.
| | 02:56 | So again, this is what's normal.
If you're creating a number of forms for an
| | 03:00 | organization, you don't want to choose
different scrolling styles each time.
| | 03:04 | The default works very well for us here.
| | 03:07 | The other choices are things like
Size and Position, all of our Advanced
| | 03:12 | property settings and the Browser Form settings.
| | 03:15 | But the biggest changes are here on the
Display tab where we're Enabling Basic
| | 03:20 | Font and Paragraph Formatting, but also by
default, a user could put in a table an
| | 03:25 | image or a hyperlink.
| | 03:26 | If that's not part of your imagination here,
if you think I want them to be able
| | 03:31 | format text, but no, not pictures, just turn that off.
| | 03:35 | But by default, rich text allows rich content
including images, hyperlinks and tables.
| | 03:43 | And then we're going to see what
this control looks like in preview.
| | 03:49 | So I'm going to click Preview and I'm
going to click and I can paste in any of
| | 03:55 | these text boxes if I wish, so I've
already have some text that I've entered.
| | 03:59 | And notice that this box grows just as
it was intended to when I paste this text.
| | 04:07 | I'm going to right-click and go back
to our Rich Text Box Properties and on
| | 04:11 | the Display tab, I'm actually going to choose,
Show scrollbar when necessary and click OK.
| | 04:17 | And let's go look at that as a Preview,
because this is the choice that's
| | 04:20 | probably second most popular.
| | 04:22 | Notice when I do this, the text box doesn't grow at all.
| | 04:27 | I can scroll in it, but I've preserved
the length of my field and the length of
| | 04:32 | my form for printing.
| | 04:37 | I'm going to change this back to the
default to Expand to show all Text.
| | 04:44 | So let's go back to the Preview one more time.
| | 04:47 | Let's enter some text again and what
makes it rich text of course is that I have
| | 04:52 | access to all of these different formatting choices.
| | 04:56 | So if I decide I'd like to Underline or
Bold or change the Colors of particular
| | 05:01 | words, all of these tools are available
to me here in this rich text control.
| | 05:06 | I can choose to put in bulleted lists,
numbered lists, everything is turned on is available.
| | 05:11 | When I click in a regular text
control, all of it is turned off.
| | 05:15 | So Rich Text Box, Regular Text Box
depending on your business need
| | 05:20 | with InfoPath 2013.
| | Collapse this transcript |
| Using date pickers| 00:00 | In this movie, we're going to take a
look at the Date Picker and Date and Time
| | 00:04 | controls that we can use to enter dates in our form.
| | 00:07 | We have two different fields in our
field list that we will want to provide date
| | 00:12 | controls for in our form.
| | 00:14 | The first is the Today field, that is the date
in which this particular form was submitted.
| | 00:19 | And the second possibility here is the date on
which this post should expire if it was News.
| | 00:26 | In other words, it was put on
the front page of the website.
| | 00:29 | I've used two different data
types for these two fields.
| | 00:33 | Today is simply a date.
| | 00:35 | However, our NewsExpiry date is a
dateTime field, a little bit different.
| | 00:42 | And when we show details,
we can actually see that.
| | 00:45 | So here we have dateTime as opposed to date.
| | 00:49 | Let's go ahead and drag our Today field
out here into our form and you'll see
| | 00:54 | that we get a Date Picker automatically
from a date field and we have our label.
| | 00:58 | Let's right-click and change
that Date Picker's Properties.
| | 01:01 | So one of the choices that we have
is the ability to format this date.
| | 01:07 | We have three choices at the top with
asterisks (*) and those choices are tied
| | 01:12 | to the date settings that Windows is using.
| | 01:14 | But when you view this form in a
browser, then it will use whatever date
| | 01:19 | settings are available from
the forms language settings.
| | 01:22 | You might wonder what are
the form's language settings.
| | 01:24 | Well, if for example we have a form
that the language is English, then we'll
| | 01:28 | see Month, Day, Year.
| | 01:30 | If we have a form where the language
of the form is German, it will be Day,
| | 01:34 | Month, Year and so on.
| | 01:36 | If you don't want these settings to
change based on localization, and how a
| | 01:42 | user's language is interpreted by the form,
simply go choose a choice in the list
| | 01:47 | that doesn't have an asterisk (*).
I'm going to make this choice and the
| | 01:50 | reason is that it makes it clearer
what's the day and what's the month by
| | 01:54 | partially spelling out the month name.
| | 01:56 | It's a favorite choice of mine,
so I'm going to say OK.
| | 01:59 | So that's the first thing,
is I've changed the format.
| | 02:01 | The second thing is I actually
want a default value in here of Today.
| | 02:05 | We're going to be talking more about
setting default values later and creating
| | 02:09 | formulas; but I want to show you
how easy this is to do because this is
| | 02:13 | something you'll do frequently.
| | 02:14 | When a user opens the form, I want
InfoPath to go grab the date from Windows
| | 02:18 | and simply stuff the date in here for the user,
so they don't have to ask, what day is today.
| | 02:23 | To do that, we're going to
click the Function button here.
| | 02:26 | We're going to insert a function and
that function is called Today and it will
| | 02:29 | return the current system date.
| | 02:32 | Later on, when I want to publish this to
a SharePoint list, SharePoint actually
| | 02:35 | wants dates and times, so we would choose Now.
| | 02:38 | These are the same two functions
defined in Microsoft Excel, but I'm going to
| | 02:42 | choose Today and say OK.
| | 02:44 | Verifying the formula is always a good idea.
| | 02:46 | I'm going to click OK, click OK.
| | 02:49 | I have some choices about Display.
I could put in a Placeholder.
| | 02:53 | For example, if I didn't choose a default,
I could say choose today's date.
| | 02:57 | Somehow default seems better, and
then I have my standard choices about the
| | 03:01 | Position and the Size of this control
in my Advanced and Browser Form settings.
| | 03:05 | Here, what the changes that we made
look like, and I'm going to say OK.
| | 03:10 | Now let's drop over and
preview this real quickly.
| | 03:13 | There's Today's date in the format I chose.
| | 03:16 | Can the user choose a different date?
Certainly, they can.
| | 03:19 | It's a date picker, but there is a
default date placed in this form for them.
| | 03:24 | Now let's go take a look at this combination
of date and time that we have in our News area.
| | 03:29 | I have a number of sections down here,
so I'm going to choose the News section,
| | 03:33 | because it will help me find where
I need to be, which is right here.
| | 03:37 | We have two different fields that
we're going to place controls for here.
| | 03:40 | The NewsExpiration Date and Time is the second.
| | 03:43 | I'm going to take this field and drag
it and drop it into my table, and I get
| | 03:48 | two different controls.
| | 03:50 | Notice that they're taking up the space
that's provided in this particular cell.
| | 03:54 | So here's a date, here is the time.
| | 03:57 | I dragged one field, I got two controls.
| | 04:00 | So let's set the properties for the date.
| | 04:02 | I'm going to right-click, choose Date
Picker Properties, click the Format and
| | 04:08 | I want to display the date.
| | 04:10 | Now this control is my date control, so
I'm simply going to make the same choice
| | 04:15 | that I made earlier.
| | 04:16 | I don't want it to make a lot of
different choices about formatting dates,
| | 04:19 | that's going to confuse my user,
and I'm not going to display the time in
| | 04:24 | this particular control.
| | 04:25 | Just go ahead and say OK and OK again.
| | 04:30 | Now I'm going to choose my other
control, which is my Time control.
| | 04:34 | Right-click and it's a Text Box.
Let's set its Properties.
| | 04:38 | And even though I'm on a Text Box,
I get dates and times again.
| | 04:41 | I don't want to display the date
and I do want to display the time.
| | 04:45 | These are the same kinds of choices
that you'll see in Excel, but we don't have
| | 04:49 | the explanations here.
| | 04:50 | The first two vary in a browser based
on the localization settings for the form,
| | 04:54 | but other than that they'll pick
up the settings from Windows, so they
| | 04:58 | are localized choices.
| | 04:59 | If I want the choice not to change based on the user,
then I'll make one of the choices below.
| | 05:05 | Here they are.
| | 05:06 | The first two are a 12 hour clock and
it includes hours, minutes and seconds.
| | 05:12 | The only difference being that for this
one my user needs to know to type 09 or
| | 05:17 | if they're typing 9, it will add the 0.
| | 05:19 | This is more easily read by
human beings than this is.
| | 05:22 | My second two choices here also
include hours, minutes and seconds.
| | 05:27 | But here, I have a 24-hour clock and
I know that because there is no a.m. or
| | 05:31 | p.m., so, one in the afternoon is 13:00.
| | 05:35 | I have then clocks with only hours
and minutes, no seconds, and 12-hour
| | 05:39 | clocks and 24-hour clocks.
| | 05:42 | I would like to make this choice here,
which is going to give me a 12-hour clock,
| | 05:46 | but it won't require a user to
type seconds, really easy to read time.
| | 05:51 | Let's go ahead and say OK, say OK again, and
now let's preview this portion of our form.
| | 05:58 | So when my user chooses a date, it's
displayed, the time is automatically
| | 06:03 | thrown in here, but then they can choose to
edit the time and say actually it's 9:30 a.m.
| | 06:09 | Each of these parts is separate,
so if they double-click here, they can type
| | 06:14 | p.m. or a.m. and it will let them do that.
| | 06:17 | I want to make one change to this format.
| | 06:19 | I'd actually like my user to be able to know
what day of the week it is they're choosing.
| | 06:24 | So they actually see it, kind of as a piece of feedback.
| | 06:26 | So let's just quickly go change, the
format that we're using here in our Date
| | 06:31 | Picker and choose one that
includes a weekday; just like that.
| | 06:39 | Now when a user chooses a date, they'll
actually see what day of the week it is.
| | 06:43 | I need to provide a little more space
for these controls, but that's how we add
| | 06:47 | a Date Picker or a Date and Time
control to our form, in InfoPath 2013.
| | Collapse this transcript |
| Using lists boxes| 00:00 | One of the pieces of information we
want from our users is what department does
| | 00:05 | the requester work in, and if we leave
this as a blank text box, you will get
| | 00:09 | wild and crazy information.
| | 00:12 | For example, if you simply ask people in
the Accounting department to enter in a
| | 00:15 | form the name of their department, some
people will type Accounting, some will
| | 00:19 | type Accounting Department, some
people will type ACCT, perhaps, the person
| | 00:24 | works on payrolls says, well, I do payroll.
| | 00:26 | I'll put payroll in here.
| | 00:27 | I've worked with the database about a
decade ago where people were asked to
| | 00:31 | write down the name of the
company they worked for, and we found 22
| | 00:35 | different ways that people would indicate that
they worked for a particular car manufacturer.
| | 00:39 | They all worked for the same place,
but 22 different ways to talk about it.
| | 00:43 | So when we turn around, we want to
report on this information, whether it's
| | 00:46 | what manufacturer you work for, what
department you work in, we want the
| | 00:50 | information to be the same.
| | 00:51 | And if we want to be able to report on
the contents of our data, it behooves us
| | 00:56 | to provide really easy choices that
make it drop dead easy for our users to do
| | 01:01 | the right thing when they enter data.
| | 01:03 | So we want to create a list.
| | 01:05 | There are four different ways that we
could create a list for our department.
| | 01:09 | Let's go take a look at them real quickly.
| | 01:12 | So the four types of lists are Drop-
Down lists, List Boxes, Combo Boxes and
| | 01:17 | Multiple Selection List. I have the
same information in all four of these.
| | 01:21 | The Drop-Down List Box does
exactly what its name implies.
| | 01:25 | I click, it drops down and I choose one thing.
| | 01:28 | I can't choose more than one thing, only one.
| | 01:31 | A List Box is also for a single selection,
but here I can scroll to go to the proper item.
| | 01:37 | Now normally when you use a List
Box, you expose all the items in it.
| | 01:42 | You make this List Box large enough
that people don't have to scroll, but
| | 01:45 | imagine now the real estate that that
takes up as the list of departments grows.
| | 01:50 | So often, you will see a List Box where
there are only two or three choices and
| | 01:54 | you want people to be able to see
easily what they all are, but as soon as you
| | 01:59 | get more than seven or eight items,
you don't want the List Box any longer.
| | 02:03 | A Combo Box is used when a user can
choose from a list or type a value
| | 02:07 | that's not here already.
| | 02:09 | So this works with people who will
actually look at the list, a limited list of
| | 02:13 | choices so that it's possible
for them to review it to say, oh!
| | 02:16 | my choice isn't here, so, I want enter
something else and they can indeed type
| | 02:22 | something different if they
wish in this combo box right here.
| | 02:25 | They just click again and it's called
the Combo because it's the combination of
| | 02:28 | a Drop-Down list and a regular Text Box.
| | 02:31 | So if I work in InfoTech, which I
could also say as IT or Information
| | 02:36 | Technology or Information Technology
Services, you begin to see the problem.
| | 02:40 | And then finally, a Multiple Selection List
which says, well, I actually do two things here.
| | 02:45 | I spend most of my time in Marketing,
but from time to time, I work in Sales.
| | 02:49 | So the checkboxes allow me to do
exactly what the name of the control implies,
| | 02:53 | make more than one selection.
| | 02:55 | Let's go back now to our form.
| | 02:58 | I have a list of six departments and
I'm going to simply place them in a
| | 03:03 | Drop-Down List and ask people to choose the
department that this information is relevant to.
| | 03:08 | So if I am that person who works in
both Marketing and Sales, it doesn't
| | 03:12 | really matter because I filled out this
Web Post Request based on one of those
| | 03:16 | two things that I do.
| | 03:17 | So let's go ahead and drag
this over here and drop it.
| | 03:20 | We'll make this look a little better.
| | 03:25 | Currently what I have is a Text Box,
but I can right-click, change the control
| | 03:30 | and say I want a Drop-Down
List Box. That's not hard.
| | 03:33 | Now I can right-click the Drop-
Down List box, change its Properties.
| | 03:36 | And I'm going to provide information.
| | 03:39 | There are three different ways to do this.
| | 03:41 | The first way is to say I'm
going to type in my choices.
| | 03:45 | The second is to say there are fields on
this form that already have information
| | 03:49 | and choose from those fields.
| | 03:50 | For example, I could even say, let me choose
anything that anyone else has ever chosen here.
| | 03:57 | And the third possibility is to get my
choices from an external data source,
| | 04:00 | which could be an XML file, an Excel
spreadsheet, frequently a SharePoint list,
| | 04:05 | perhaps, a table in SQL Server.
| | 04:07 | If you have a long list or list that changes
that someone needs to maintain, you
| | 04:12 | would far rather get those choices
from an external data source, than have to
| | 04:16 | update your fields manually all the time.
| | 04:19 | So when you begin to create this List
Box, ask does this data source belong to
| | 04:23 | somebody else who owns it, who needs
to maintain it, and if so, wait till
| | 04:27 | further along in this course when you
can find out how we can get these choices
| | 04:30 | from an external data source.
| | 04:32 | But right now, we're going
to enter some manual choices.
| | 04:34 | I click the Add button.
| | 04:36 | The Add Choice dialog opens and I'm going to
type Accounting and I'm going to press Enter.
| | 04:41 | Notice that the OK button has
focused right now, so when I press Enter;
| | 04:45 | it automatically closes, but when it does,
notice that the Add button also has focus.
| | 04:50 | I just press Enter again to add another one.
| | 04:52 | I don't even need to touch my mouse.
| | 04:58 | Now I'm allowed to store both
the value and the display name.
| | 05:03 | In this case, I might want to store for
example shorter values that would show
| | 05:08 | up wherever I publish this later on.
| | 05:10 | So if I want to do that, I can
edit the value and make it shorter.
| | 05:14 | But as soon as I provide a larger value,
the display name will change.
| | 05:19 | So type the whole thing first, then
go back and edit the value if you wish.
| | 05:24 | And I'm typing all of these, but through
the magic of editing, you're going to
| | 05:28 | see them all pop in at one time.
| | 05:31 | I have all of my departments in here.
| | 05:32 | They don't change often so, I'm not worried
about using this list in a form manually.
| | 05:36 | I'm going to click OK.
| | 05:38 | Let's go take a look and see what
this form control looks like in preview.
| | 05:41 | When I click, there's my list.
| | 05:46 | I can choose an item from a list.
| | 05:48 | I can't type anything else, because
it's a regular Drop-Down List Box.
| | 05:51 | It's not a Combo Box, and
I'm going to close my preview.
| | 05:55 | Let's right -click and go back and look at
those List Box Properties one more time.
| | 05:59 | The top one says, Select. I never changed it.
I just left it there.
| | 06:04 | And the reason is this is really pretty slick.
| | 06:06 | I can say this can't be Blank.
You have to make a choice.
| | 06:10 | You might say well, wait a second.
There's already something here, yes.
| | 06:14 | But there's no value and when InfoPath
decides whether this is blank or not, it
| | 06:18 | doesn't look at the Display Name.
| | 06:20 | It looks at the Value.
| | 06:22 | So if I simply turn on, Cannot be blank
and leave our top choice that has no
| | 06:26 | value, this is going to work just fine,
just as you would expect it to.
| | 06:31 | Other things you might want to know;
to move these items around, I have move up
| | 06:35 | and move down buttons.
| | 06:36 | If I decide that I actually
don't want to have Select in there.
| | 06:40 | Let's say that the majority of people
filling this out are filling it out in the
| | 06:44 | Customer Service area.
| | 06:45 | So what I'll do then is I can remove Select.
| | 06:48 | I can say Customer Service is the new default.
| | 06:51 | Click the Set Default button, and if I do that,
I'm going to move it up to the top.
| | 06:55 | Whatever is the default
should be at the top of the list.
| | 06:57 | Now normally the items in this
list should not be in random order.
| | 07:00 | You want this list to be in alphabetical
order or chronological or numerical order.
| | 07:05 | With this as the exception, if you
pull an item from the list and make it the
| | 07:09 | default, you should always put it up at the top.
| | 07:11 | There are other settings for this List Box,
but they are exactly what you would
| | 07:15 | imagine they are, the same as we find
in Text Boxes and in our Date Picker.
| | 07:19 | This is how we create a Drop-Down List Box.
| | 07:22 | You'll follow exactly these same steps
if you're going to enter a Multiple
| | 07:26 | Selection List Box, a Combo Box or a Regular List Box.
| | 07:30 | You'll notice three other things
with list in their name here.
| | 07:32 | These are actually different types of
Rich Text controls for the kind of list
| | 07:36 | you would put in a Word form.
| | 07:37 | So again, our controls that allow users
to select from a list are the Drop-Down
| | 07:42 | List Box, the Combo Box, the List Box
and the Multiple Selection List Box;
| | 07:48 | a great set of controls for being able
to constrain and capture data from our
| | 07:52 | users in our InfoPath forms.
| | Collapse this transcript |
| Using bulleted and numbered list controls| 00:00 | In the previous movie, we looked at
controls that provide lists to our users
| | 00:05 | that they are then allowed to choose from.
| | 00:07 | But there are some other controls that
also have the word list in their name
| | 00:10 | and these are controls that don't present
lists to users, but allow users to enter lists.
| | 00:15 | The Plain List, Bulleted List and Numbered List controls.
| | 00:20 | Now all of these are simply forms of
that Rich Text Control, because if I drop
| | 00:26 | a Rich Text Box into a form like this one,
I'm allowed to use that Text Box to
| | 00:30 | enter formatted text.
| | 00:32 | So if we go into Preview here in my
Rich Text Box, I can say, I'm going to
| | 00:36 | enter a bulleted list.
| | 00:40 | And if I wish, I can also convert this to
a numbered list or enter a numbered list.
| | 00:45 | So I could use the Rich Text Box if I
simply wanted to allow users to choose
| | 00:49 | bulleted or numbered lists.
| | 00:52 | However, sometimes, I don't
want to let the user choose.
| | 00:55 | I want a numbered list.
| | 00:57 | I want a bulleted list.
| | 00:59 | Please list the steps you
went through to do this.
| | 01:02 | There is a call for a
numbered list, a bulleted list.
| | 01:04 | Please provide five attributes.
| | 01:06 | They don't need to number them, they're
parallel, but I've given them the idea
| | 01:10 | that I don't want them to write
paragraphs if it's a bulleted list.
| | 01:13 | And the same thing with the regular
list that has no bullet points in it.
| | 01:16 | So let's go ahead and see how these work.
| | 01:19 | I'm going to add a Plain List to my sample form.
| | 01:23 | That's what it looks like and interestingly enough,
it creates a group and it creates a field.
| | 01:28 | My Rich Text Box stores everything in
one place, but because I've set this as
| | 01:32 | a list, InfoPath is going to store each
item on the list separately within a group.
| | 01:37 | I could of course rename these.
| | 01:39 | I would probably name it List Items and
the Field List Item, singularly, would
| | 01:44 | be a good way to do it.
| | 01:46 | Let's just go see how this works when we use it.
| | 01:49 | Here's my list, and so I enter an item
and another item and unlike the Rich Text
| | 01:55 | Box, notice each of these is getting
its own text box as I move down the page.
| | 02:01 | And each of them is separately editable.
| | 02:04 | So there is the difference.
| | 02:05 | If I put the same information here, one
big field. Here, three separate items,
| | 02:13 | three separate pieces of data that are
grouped together in the same collection.
| | 02:18 | The Bulleted and Numbered lists work the same way.
| | 02:20 | Add a bulleted list, jump into preview
and I'll type my first item, my
| | 02:28 | second, my third and so on.
| | 02:32 | And my numbered list, predictably, is
going to look just like the bulleted list,
| | 02:35 | but it will have numbers instead.
Waiting for me to type my first item, my
| | 02:46 | second item and so on.
| | 02:47 | So if we take a look at the numbered
list in particular, I want people to
| | 02:52 | list a series of steps.
| | 02:53 | So let's imagine they've listed the
first two and then they think, oh, I need to
| | 02:57 | insert one between those two.
| | 02:58 | Let's go take a look at how that
control can allow for that instance.
| | 03:03 | The Numbered List Properties allow me
to provide an insert button that says you
| | 03:08 | can insert an item anywhere you wish.
| | 03:10 | That's not on by default, but I can turn it on here.
| | 03:13 | And let's say that this numbered list
is a list of pieces of software,
| | 03:17 | insert another piece of software.
| | 03:19 | For example, this is editable prompt.
| | 03:21 | Let's apply this, go over to Preview.
Notice that I've entered a first item and
| | 03:28 | I can then click insert item wherever I
wish, but this is Item 1 or Item First
| | 03:35 | and I can click to insert items as I move down the list.
| | 03:39 | So this is how the Bulleted List
and the Numbered List work.
| | 03:44 | How the list works.
| | 03:45 | You'd think that they're like the Rich
Text Box, they're a form of that, but
| | 03:48 | in each instance what they are is a
repeating field with a group; just as if
| | 03:54 | it were a section of data that allows me to
have individual items within a particular field.
| | 04:01 | If a list or bulleted or numbered list
should be an option, use the Rich Text Box.
| | 04:05 | But if you want to constrain your users
to a particular style, then choose the
| | 04:10 | appropriate list control in the
input controls dropdown in InfoPath.
| | Collapse this transcript |
| Using check boxes| 00:00 | This movie focuses on the Check Box
control in our user input controls.
| | 00:05 | The Check Box control is used when
you want to provide your user with
| | 00:09 | exactly two choices;
| | 00:11 | yes or no, true or false, 0 or 1, in or
out, checked or unchecked, is or is not
| | 00:17 | an adult; those types of choices.
| | 00:19 | And Text Box controls are really
easy to place and are used for this type
| | 00:23 | of field, a type of field called a Boolean
field, which means it has one of two states;
| | 00:29 | yes or no.
| | 00:33 | So here we have right here
the Boolean field PostisNews.
| | 00:37 | We have a couple of others as well,
but let's take a look at this one.
| | 00:41 | When the user checks the PostisNews
check box, what they're saying is that they
| | 00:44 | believe that this story is newsworthy.
| | 00:46 | It's not background.
| | 00:47 | It belongs on the front page of the
intranet or front page of the internet site.
| | 00:52 | So we want to be able to allow the
user to say, I think it's newsworthy.
| | 00:56 | We might ignore them, but we still want
to let them provide an opinion about that.
| | 01:01 | It takes less time to place this check box
than it took for me to describe it.
| | 01:05 | All we need to do is grab PostisNews
and drag it and drop it, and there it is,
| | 01:10 | PostisNews and a check box.
| | 01:13 | Now often, I want to provide some other
information, something like Check here
| | 01:18 | if this is a "news" story. I might
need to provide even more information.
| | 01:24 | It's often true that you'll have long explanations
that make people make the right choice.
| | 01:29 | And if I preview this, you'll find that
it behaves just like a check box should.
| | 01:33 | I click and it's on.
| | 01:35 | I click again and it's off.
| | 01:36 | If it has focus, I can also hit
the spacebar to turn it on and off.
| | 01:40 | Let's close the Preview and
find out about its properties.
| | 01:43 | So in addition to our Field name and
our Data type, I have the ability to say,
| | 01:47 | by default, this Check Box is
turned on, or it's turned off.
| | 01:51 | So if for example, it was true that
most of the things we get are news stories,
| | 01:55 | I could say start this Checked.
| | 01:57 | The opposite then is also possible but I
could say well, start it unchecked, but
| | 02:02 | have somebody check it if it's not a new story.
| | 02:04 | In other words, there are
always two opposite conditions;
| | 02:06 | you choose which results in
the check box being turned on.
| | 02:10 | But normally, what you want is you
want to choose to have a user check in the
| | 02:15 | circumstance that you're testing for.
| | 02:17 | In other words, we don't want somebody say, oh!
| | 02:19 | I didn't pay any attention to that
check box, that's why it's a new story.
| | 02:23 | You want the user's discretion to go into
actually taking the action of checking the box.
| | 02:27 | We have then a set of choices;
| | 02:29 | true false, 0 1, or blank and not blank
based on whether it's checked or not checked.
| | 02:36 | So this is our value when it's empty,
this is our value when it's checked.
| | 02:40 | And typically, you'll just use true false here.
| | 02:43 | We have all of the properties that we're used
to seeing then for our other types of controls;
| | 02:48 | our Size, Advanced, and Browser Form properties.
| | 02:51 | But I'm simply going to say OK. This is fine!
| | 02:53 | I want it to start off cleared, that was the default.
| | 02:56 | I've changed nothing in this dialog box.
| | 02:58 | We've just spent a moment taking a look at it.
| | 03:00 | So that's how the check box works.
| | 03:02 | If I really want to know something
about a user choice, if I need to know that
| | 03:06 | they looked at it, I'm going to find a
way to phrase my tip information so that
| | 03:12 | it's starting in the default state of cleared.
| | 03:14 | Even if that means rearranging the
way I ask the question, I want the user
| | 03:18 | action to result in a change in this check box,
because by default, the check
| | 03:23 | box has one of its two states going out of the gate.
| | 03:26 | One more thought about how you
might think about check boxes.
| | 03:29 | Because they have a default, there
are times that you might have a yes no
| | 03:34 | question, but you won't use a check box,
you'll use a dropdown list.
| | 03:38 | That way, a user actually has to choose
yes or no rather than leave the default of select.
| | 03:45 | Let me give you an example of that.
| | 03:47 | If it was critical for you to know that
a user provided a piece of information,
| | 03:52 | for example, was the caller depressed?
| | 03:54 | You don't want them simply to use a default.
| | 03:56 | You want them to evaluate and choose.
| | 03:59 | In that case, you don't use a check box,
you use a dropdown list.
| | 04:02 | Select is what it says when the user does nothing.
| | 04:05 | Yes or no are the choices that they make.
| | 04:07 | So a check box is not the only way
that we can represent a Boolean value
| | 04:11 | but it's a good way.
| | 04:12 | Now if we have more than two choices,
we can't use a check box either.
| | 04:17 | In those cases, we're either going to
need a dropdown list or if we want
| | 04:20 | something that's similar to a check box,
we'll use Option buttons, and we'll
| | 04:23 | talk about those in the next movie.
| | 04:26 | Check boxes aren't good for every single
occasion where there are two choices
| | 04:29 | and they're not good for occasions
where there are more than two.
| | 04:32 | But most of the time, they're precisely
the correct control to use in a world
| | 04:36 | of yes or no and true or false.
| | Collapse this transcript |
| Using option buttons| 00:00 | In this movie, we're going to talk about
how to use option buttons properly.
| | 00:04 | Just as check boxes are the best control
in a universe of only two choices,
| | 00:09 | option buttons are the best control in
a universe of three or four or even five
| | 00:13 | choices, but where a user is
forced to choose only one item.
| | 00:17 | So if you think about this, option buttons
are an alternative to a dropdown list.
| | 00:23 | What option buttons give us that list doesn't,
is the ability to actually see
| | 00:28 | the choices all the time.
| | 00:30 | And these buttons used to be
called radio buttons in the long past.
| | 00:33 | So if you are used to using radio buttons,
they're option buttons, it's the same thing.
| | 00:38 | If we can present clear choices, unambiguous
choices that we want to be visible
| | 00:42 | on the form so that option buttons give
users a choice to kind of rock back and
| | 00:47 | say okay, there are five choices or
three choices, which one do I want?
| | 00:50 | Then you begin to see the power of
the visibility of an option button.
| | 00:54 | We're going to create some option buttons
down below here for the post type.
| | 00:59 | And as I've been working on the form,
I've been stuffing extra information into it.
| | 01:03 | So these are the descriptions of our four possibilities.
| | 01:06 | There's nothing wrong during development
with me actually putting these on the form.
| | 01:11 | One other thing that you might
want to know is anything that I type below
| | 01:15 | this form doesn't appear in the form at all.
| | 01:18 | So below the form is a great place to
provide developer notes as you continue
| | 01:22 | to work on the form.
| | 01:23 | This is the area where I will type
notes about modifications I've made for
| | 01:27 | example, because they're not part of
the form, but they're kept in the same
| | 01:30 | place, which is a nice place to have them.
| | 01:32 | So let me tell you what these four descriptions mean.
| | 01:35 | The first is I'm asking to only
have the description I provide posted.
| | 01:40 | The second is I'm asking to have the
description posted with a link to a file
| | 01:44 | that I've attached that will be
posted somewhere else on the web.
| | 01:48 | The third possibility is I actually
want the contents of that file posted on a
| | 01:52 | page along with the description.
| | 01:54 | And the fourth possibility is that I
want a description and a link, but I'm not
| | 01:58 | providing the file, it's a link to
someplace else that already exists.
| | 02:01 | So those are the four possible actions
I would like the communication staff to
| | 02:06 | take, and these are the four descriptions
they've provided for a post type.
| | 02:09 | Let's go ahead and drop in the option buttons.
| | 02:12 | They're going to go right here.
| | 02:13 | Now it's important that I know that I
have exactly four choices because the
| | 02:17 | first thing I need to do is specify
how many options there are.
| | 02:21 | Up until now, InfoPath has been pretty forgiving.
| | 02:24 | If we wanted to insert a control
and then change our mind about how to
| | 02:27 | configure it, we could.
| | 02:28 | It is not easy to add another option
button to a group that already exists;
| | 02:33 | part of the reason I think that has
driven people a little bit away from option
| | 02:37 | buttons and towards dropdown list.
| | 02:38 | I'm going to go ahead and say OK.
| | 02:40 | There are my four option buttons.
| | 02:42 | All of them are created as a set.
| | 02:44 | Additionally because I inserted an option button,
I have a new field over here on the right.
| | 02:49 | It's of the string type, but I'm going
to need to change their binding and I
| | 02:53 | want to bind them back to PostType.
| | 02:55 | So I'm just going to right-click, change
the binding, and I'm going to change
| | 03:00 | the Binding to PostType.
| | 03:03 | That got one of them, but it didn't get all of them.
| | 03:05 | So I need to do this four times.
| | 03:12 | There. Now they should all know where they're going.
| | 03:14 | If I click on field5, nothing selected. That's good!
I got them all, and go ahead and delete this.
| | 03:20 | And I need to enter text for my four choices.
| | 03:24 | I have that text right here, so I can
actually take it and simply move it.
| | 03:29 | Kind of a nice thing to do! And that works.
| | 03:37 | There are my four option buttons and their descriptions.
| | 03:40 | Now let's take a look at the properties
of our option buttons.
| | 03:44 | If I go to take a look for example at
the first one, it says that when this one
| | 03:48 | is selected, its value is 1.
| | 03:50 | We'll come back here, but first,
let's go take a look at the second one
| | 03:54 | because its value is 2.
| | 03:56 | The third one has a value guess what, of 3,
and the fourth will have a value of 4.
| | 04:02 | Now you can use these numbers
to fire off specific actions.
| | 04:05 | For example, I might use them in a calculation.
| | 04:08 | But it might be that the numbers aren't that helpful.
| | 04:11 | In this case, I actually want some words instead.
| | 04:14 | So what I can do is I can change
properties of that option button.
| | 04:17 | Notice that it's a string, and I can
say the value when this is selected
| | 04:22 | is Description Only.
| | 04:24 | I don't have to leave the 1, 2, 3, or 4.
| | 04:26 | I can choose the second one and say
that its value when it's selected is
| | 04:32 | Description Link to File.
| | 04:37 | I can choose the third option button
and say that its value when it's selected
| | 04:44 | is Description File Contents.
| | 04:46 | And the fourth option button when
it's selected has a value not of 4 but of
| | 04:51 | Description and External Link.
| | 04:54 | There are my choices.
| | 04:56 | One of them is going to be selected by default normally.
| | 05:00 | And if I take a look, none of them are.
| | 05:02 | But if I want the first one,
I can go ahead and choose that.
| | 05:05 | That's a normal behavior for option buttons
is that one of them will always be selected.
| | 05:09 | But if you prefer to have none of them selected, you can.
| | 05:13 | It will just get a little interesting
as users look for the one that's selected
| | 05:16 | first because they're trained to do
that by every dialog box they open in
| | 05:20 | Windows that uses option buttons.
| | 05:22 | So I'm going to say OK.
| | 05:23 | Let's go ahead over to Preview now.
| | 05:25 | Here's my option buttons.
| | 05:26 | Again, I can see all the choices.
| | 05:28 | And when I choose one item,
it turns the other one off.
| | 05:32 | Only one of these can be selected,
but I can see them all.
| | 05:35 | When I print this form, it will show all
of the choices including the one I made.
| | 05:39 | So if you need to have this kind of
transparency around choices in a form,
| | 05:44 | option buttons are a really great way to do it.
| | 05:46 | If you only have two options, you should
have used a check box or a dropdown list.
| | 05:51 | And even with four, you could choose
the dropdown, but this shows us not only
| | 05:55 | the road we took, but the roads not traveled.
| | 05:58 | And that's often good information
to have when a user prints a form.
| | Collapse this transcript |
| Changing a control's type| 00:00 | In this movie we're going to talk about how we
change the type of a control that we're using.
| | 00:05 | As you're working on your form and
having other users look at it, you might
| | 00:09 | decide that you need to change the
control type of one or more of the
| | 00:13 | controls on your form.
| | 00:14 | For example, we might have a dropdown
and decide that right now we're better
| | 00:18 | off using the text box.
| | 00:20 | All you do is right-click the control,
choose Change Control and you'll see a
| | 00:24 | list of different types of
controls you can change this to.
| | 00:26 | So I could said I like this to be a
Text Box, or perhaps I'd like it to be
| | 00:31 | a Combo Box, the list isn't complete
and I'd like to be able to allow users
| | 00:35 | to type other entries, or maybe I want to
replace this with Option buttons or a Check Box.
| | 00:40 | But in this case I'm going to choose
Combo Box, and there's not that big of a
| | 00:44 | change. When I go take a look though
in Preview, I have the ability here to
| | 00:47 | type if I wish. That's all that's new, but
that's how easy it was to be able to change that.
| | 00:53 | So I can change an existing control to
another control that's appropriate for
| | 00:58 | the type of data that I have in my fields list.
| | 01:02 | So I have a new field here called Notes,
because as we were working on the form
| | 01:06 | one of the folks in the business unit
said, you know what happens is people will
| | 01:10 | add notes to the end of the description,
we have to figure out what's the
| | 01:13 | description that they want to post
and what part of it is just casual
| | 01:17 | information they'd like us to have.
| | 01:18 | So we gave him a special notes or
comment here that would be great.
| | 01:22 | So we've placed that on the form and
we've previewed it and now the feedback
| | 01:25 | we're getting as it would be
really nice if this was rich text.
| | 01:29 | So we could right-click on this and
say we'd like to change the control and
| | 01:33 | we'd like to change it to a rich text box,
we can't, it's not on the list.
| | 01:37 | And the reason is that the particular
data type we have here which is string
| | 01:41 | isn't the type that rich text is stored in.
| | 01:44 | If I show my details, I'll find that
this is a string, but post description the
| | 01:49 | field above it that supports
rich text is XHTML or Rich Text.
| | 01:54 | So this is a two-step process, I don't
just need to change the control;
| | 01:57 | I need to change my data source as well.
| | 02:01 | So we're going to swap the properties
here from Text to Rich Text and say OK
| | 02:08 | and now it says, oh!
| | 02:09 | I can't store that kind data anymore
right, because this is only meant to store
| | 02:14 | strings, but if I right-click, change
my control, notice now I can swap it to a
| | 02:19 | Rich Text Box, there we go.
| | 02:21 | So it's very easy to change control types.
| | 02:24 | If you're not allowed to change a
control type it's usually because the data
| | 02:28 | type that's chosen here in the Fields
list doesn't match up with the control
| | 02:33 | that you're trying to use.
| | 02:34 | And in the same way if I try to change a
data type in my Field list to something
| | 02:39 | that control can't support, you notice
right away that we receive information
| | 02:43 | about that for Microsoft InfoPath.
| | Collapse this transcript |
|
|
6. Setting Options and Formatting ControlsFormatting labels| 00:00 | If you want to change the entire look and
feel of your form, you should change the theme.
| | 00:05 | It's the quickest and easiest way to do that.
| | 00:08 | And the different groups of themes
have different alignments, some have labels
| | 00:12 | that are italicized and so on.
| | 00:14 | But if you like the theme and you simply
want to tweak the form to make some
| | 00:18 | adjustments in some of the labels,
| | 00:19 | here is how you should approach that.
| | 00:21 | For example, in the center of the form here
I have what's probably the most
| | 00:25 | important part which is what do you
actually want us to post, what's the title
| | 00:29 | and the description and the notes.
| | 00:30 | And so it's shaded so that it jumps
off the form a little bit, but one of the
| | 00:34 | results of that shading is that the
labels here don't stand out very much.
| | 00:38 | So what I'd like to do is choose a
darker color for these labels. For example
| | 00:44 | this one. My color choices are here.
As in the rest of Microsoft Office,
| | 00:52 | when I have a theme these colors are based on
the theme, when I swap themes the colors change.
| | 00:58 | These colors are independent of the theme.
| | 01:00 | So if I want to make sure that the colors
that I choose are going to go with the
| | 01:05 | theme even if I change it, I'm going to
go ahead and make some choices here, so
| | 01:09 | there is just a slightly darker variation.
| | 01:12 | And I can choose the text here as well
and say I'd like to repeat that. So I can
| | 01:18 | simply click on the Color to pick up
the color I use last time and I can Bold
| | 01:22 | that if I wish. Now with this text
selected I can click the Format Painter
| | 01:26 | and double-click on other text to apply it.
There we go.
| | 01:31 | So now I can see this text more easily in
preview, the labels will stand out a little bit more.
| | 01:36 | That looks good, let's go back.
| | 01:39 | I also have some area here at the top
that we're going to provide some text
| | 01:43 | that doesn't exist yet.
| | 01:44 | This is information about how this form
is used and it's going to be provided by
| | 01:49 | the folks from our electronic communications office.
| | 01:51 | I have made some notes in other areas
of the form where controls will go, but
| | 01:56 | this is actually missing text that I don't have.
| | 01:58 | So I have some text that I actually
want to look different than other text in
| | 02:02 | the form. I'm going to make a note about
what that text is right now. It's To be
| | 02:07 | supplied, To be supplied by the
office of electronic communication form
| | 02:14 | description and instructions. And I'd
like to have this look very different than
| | 02:19 | either labels or text that's
entered any place in the form.
| | 02:22 | So this form, the font that's used in
it over and over again no matter where
| | 02:26 | I click is Calibri.
| | 02:28 | So what font would go along with
Calibri pretty well, but isn't Calibri itself.
| | 02:35 | Well you know I can use the experience
I have with all of the other office
| | 02:39 | applications to say, I know what fonts go together.
| | 02:41 | When you have Calibri as your body font,
then normally what you're going to see
| | 02:45 | is you're going to see Cambria as
your heading font, so let's go ahead and
| | 02:49 | choose Cambria. It's a good choice,
looks different then anything else we have.
| | 02:54 | So this is a different kind of label.
| | 02:56 | It's not a label for a text box, it's
a part of the instructions and I want
| | 02:59 | it to look different.
| | 03:00 | Another choice if I wish in the
same family is Constantia, right here.
| | 03:07 | If we had a lot of instructions here
this probably isn't a font that we would
| | 03:10 | want to provide a lot of reading material in.
| | 03:12 | But it's a great font for headings;
| | 03:14 | it's a great font for brief descriptions and so on.
| | 03:16 | It stands out and it looks different
and of course I can change its color so it
| | 03:20 | doesn't look the same as my labels if
it was the same color to begin with.
| | 03:24 | You also have the ability in your
form to bold and italicize and underline
| | 03:28 | and even to highlight. You do not
want to highlight text in a form that's
| | 03:32 | actually being used.
| | 03:33 | The highlighter really is here for you
to be able to highlight things while
| | 03:36 | you're developing the form, so that you can
keep track of where you need to make changes.
| | 03:41 | There are number of different colors
available for you here for highlighting.
| | 03:44 | You could say, well yellow means that
I need information, green means this is
| | 03:48 | where I stopped checking the properties of a form.
| | 03:51 | Another thing that you'll see in
terms of label formatting is that some
| | 03:54 | developers will bold the label anytime
a field is required, because it makes
| | 04:00 | them kind of jump out a little bit.
| | 04:02 | So we're requiring the First Name, the
Last Name, the Email address and they
| | 04:06 | would just bold all of those labels
as just another hint to the user.
| | 04:10 | So that when we're in preview mode,
not only do you see the asterisks, but those
| | 04:14 | are bold and they jump out and that's
the convention that's used in forms on the
| | 04:17 | internet as well, so it's easy for people to work with.
| | 04:21 | If you want to change all of the labels
or if you want to change all of anything,
| | 04:24 | there is always a better way to do it.
| | 04:27 | But if you just want to change some
labels or the look and feel, then simply
| | 04:31 | use the formatting tools that you're
familiar with from the other Microsoft
| | 04:35 | Office applications and you can
easily format your form's labels here in
| | 04:39 | InfoPath Designer.
| | Collapse this transcript |
| Formatting controls| 00:00 | When we want to format all of the controls
in a form or all of the anything in a form,
| | 00:05 | there is a better way to do that
than by using the Format Text group of
| | 00:09 | tools on the Home tab of the Ribbon.
| | 00:12 | So if we want to change the entire look
and feel of the form, we could of course
| | 00:16 | go to Page Design and choose a different
theme and we would be swapping out not
| | 00:20 | just colors but fonts. We know that already.
| | 00:22 | But there are some other choices here
on the Page Design tab of the Ribbon that
| | 00:26 | are really pretty interesting.
| | 00:28 | If we go over here to Views, we have
the ability to create different views of
| | 00:32 | this form for different groups of users;
or Print View for example. We'll talk
| | 00:36 | about that later in the course,
but the view itself has properties.
| | 00:40 | So if I click Properties here in the
Views section on the Page Design tab of the
| | 00:45 | Ribbon, what I get are the properties
just of this particular view of the form,
| | 00:50 | including some Text Settings.
| | 00:53 | This allows me to set the formatting
options for controls in the current view.
| | 00:58 | Now notice nothing here about labels,
but all of my controls are here.
| | 01:02 | So I could say for example, that all of
my text boxes I don't think a 10 point
| | 01:07 | font is large enough, I'd like to have a 12.
| | 01:10 | And if I choose 12 and click OK, I've
just changed the size of the font in all
| | 01:16 | of the text box controls on this form.
| | 01:19 | If we go back to the Home tab and we
click Preview, when I begin typing here,
| | 01:24 | take a look, 12 point, not 10 anymore.
| | 01:29 | So it's really easy for me to change
all of the controls of a particular type.
| | 01:34 | Notice though, that when I select the
Today control here, which is a date picker,
| | 01:39 | it's still a 10 point.
| | 01:41 | So I would need to make sure if I
wanted all of my controls to be at 12 point,
| | 01:46 | that I chose all of them and change them.
| | 01:49 | Now I want to give you a caveat here.
If I have already gone in and have
| | 01:53 | manually changed individual controls.
| | 01:55 | For example, I've chosen this control
and I've said, I want this control to be a 14,
| | 02:00 | then any change that I make that is
a global change is not going to apply,
| | 02:07 | because that control I've
actually overridden separately.
| | 02:10 | So you really don't want to be
formatting individual controls here using the
| | 02:15 | format text tools unless you're
absolutely certain that all of the other
| | 02:19 | controls are exactly how you want them to be.
| | 02:22 | Because when you format a control using
these tools, then the choices you make
| | 02:27 | in the view get ignored by this Ctrl.
| | 02:29 | Let's go back to our Page Design tab then and say OK.
| | 02:33 | Well we have at some date pickers, we
would like the date pickers to also be 12
| | 02:38 | and we would like the date and time
picker that we've used to be a 12.
| | 02:43 | We have some dropdown lists and combo boxes;
| | 02:46 | we want them to be larger as well,
any control that we use.
| | 02:51 | Now I could also say, well whenever I
have a Rich Text Box, I want that to be an 8,
| | 02:58 | because people are going to type a
lot of text and I want it to be small.
| | 03:02 | But remember that in a rich text box
my user gets to change to the size
| | 03:06 | themselves if they wish, because it's rich text.
| | 03:09 | So you can go through and for
individual types of controls, not individual
| | 03:14 | controls change their text settings here in this view.
| | 03:17 | Now you might wonder what about if I create other views?
| | 03:21 | Well every view you create, you'll
start by copying a view that already exists.
| | 03:25 | So in this one good solid view if we go
through and say for every single type of
| | 03:30 | control we want to set all of these to
12 point initially, then when I copy this
| | 03:35 | view to create other views, they
will begin with 12 point as well.
| | 03:40 | That's how we format control groups
and how we format individual controls
| | 03:45 | in InfoPath Designer.
| | Collapse this transcript |
| Using rules to catch incorrect or missing data| 00:00 | We're creating this form because we
would like to help our users provide really
| | 00:05 | high-quality information. And high
quality in this sense means that it's valid
| | 00:09 | and it's accurate and it's complete.
| | 00:12 | We make it easier for our users to
give us really good data by providing
| | 00:16 | structured feedback when they give us
data that we think might not be correct.
| | 00:20 | There is a notion about how data is
collected that's called Source Data Capture.
| | 00:24 | What that means in a nutshell is that
the closer you get to the owner of the data,
| | 00:27 | the more likely you are to get data that's correct.
| | 00:30 | For example, if you're typing in my
street address from a form, you might get it
| | 00:36 | wrong and not even notice it,
it's just a typo to you.
| | 00:39 | But if I type it in, I'm likely to notice because
I arrive there, I actually live there.
| | 00:44 | So if I'm entering my own information,
it's more likely to be correct than if
| | 00:49 | someone else types it in from any kind
of a form or even with me standing there
| | 00:53 | and telling them what it is.
| | 00:55 | We're going to use validation in
our forms to help our users provide
| | 00:59 | information, because they are the source
for this and it should be really easy
| | 01:03 | for them to give us good data.
| | 01:04 | The Email address here that we have is
required and we've set it both in the field,
| | 01:08 | but it's also enforced here in the control.
| | 01:11 | The control knows that if I leave
this blank that there is something wrong.
| | 01:15 | Because this field can be blank, if
I try to save this form and I haven't
| | 01:20 | filled in, I'll get message that says hey,
you've actually left out some data that's important.
| | 01:24 | And if I try to submit this form to
actually say I'm done with it, let me give
| | 01:29 | this back to whoever is collecting
this data, I won't be allowed to do that
| | 01:33 | because I haven't provided all
of the data that's required.
| | 01:36 | So this is a type of validation
that's called Cannot be blank.
| | 01:40 | At the very end of any process Cannot
be blank gets checked and that was set as
| | 01:45 | you all recall as one of the properties
of the Text Box, Cannot be blank, here.
| | 01:51 | But there is another way this
email address could be wrong.
| | 01:53 | Somebody can type information in
it that's just not an email address.
| | 01:57 | For example in some organizations there are
short emails that don't have the URL at the end.
| | 02:04 | So it would say for example the name of
the user, but not the company name and
| | 02:08 | the .com or .org or .edu and somebody
has set up the address books in that
| | 02:14 | organization that it works just fine.
| | 02:15 | If you type the first part of somebody's
email address, it works.
| | 02:18 | But we don't want that partial email address;
| | 02:20 | we actually want the entire email address.
| | 02:22 | So I'm going to select this email
control and there are a couple of different
| | 02:26 | ways that I can approach making
sure that this is an email address.
| | 02:30 | But I'm here on the HOME tab and
right over here under Add Rule, one of the
| | 02:34 | choices is, it's not an email address.
| | 02:37 | So that would mean it didn't
have an @ followed by a dot (.)
| | 02:41 | something at the end, I have lots of choices
about what to do if it's not an email address.
| | 02:46 | I can take some action or I can simply format it.
| | 02:49 | If I formatted as bad for example,
then somebody later on can go fix it.
| | 02:55 | These are the kinds of choices that you provide,
if somebody is typing data for someone else.
| | 03:01 | Think about people whose job is to sit
around in the middle of the night and
| | 03:05 | take orders that were written on pieces
of paper and type them in to a system.
| | 03:09 | They don't know what the correct data is necessarily.
| | 03:12 | So if we simply flag something formatted
as bad, then there'll be somebody in
| | 03:17 | quality control that checks it.
| | 03:18 | But for the user filling out this form,
they are not filling it out for somebody else,
| | 03:23 | this is their Email address.
| | 03:24 | So rather than formatting it, so
later we can go back and say oh that's
| | 03:28 | interesting, its bright red, what's
the mistake that was made, we're going to
| | 03:31 | say wait a second, we have a problem
here and we're actually going to show an
| | 03:35 | error message that says whoa!
| | 03:38 | You have a problem.
| | 03:39 | So when I choose Show Validation Error,
I get a new task pane for Rules.
| | 03:43 | The Rule is attached to this field,
here is the field name, it's called Rule1;
| | 03:48 | it's the first rule that we've written.
| | 03:50 | I can rename it right here if I want to
and I would say is not a valid email.
| | 03:56 | I don't have to rename it, I can keep it Rule1.
| | 04:00 | And it says Required Email does not
match pattering Email, and it's not blank.
| | 04:05 | There are two possibilities.
| | 04:07 | I could leave this blank and it won't
trigger this rule, it will trigger the
| | 04:10 | other problem when I try to
submit the form, it says whoa!
| | 04:13 | You can't leave it blank.
| | 04:15 | But right now if it's blank, it's okay with this Rule.
| | 04:17 | What's not okay is there something
in it that doesn't match the pattern,
| | 04:21 | something that's wrong.
| | 04:22 | The Rule type here is a Validation rule .
We're going to provide a screen
| | 04:28 | tip that says you need to
Enter valid email address.
| | 04:30 | Now you can create your own rules from
scratch and will be creating more rules
| | 04:35 | later in the course.
| | 04:36 | But this very basic kind of Validation
that says wait a minute, it's not valid,
| | 04:40 | you need to provide us with more information
or correct information is very easy to create.
| | 04:45 | Now we could also just put in a message
that says something like this is wrong
| | 04:50 | or you made a mistake or check and see.
| | 04:53 | That kind information sometimes will
make the developer feel better, but it's
| | 04:57 | not enough information for the user,
Enter a valid email address, there is a
| | 05:01 | good message, because it actually
allows the user to know what's wrong.
| | 05:06 | Let's go ahead and preview this and see how it looks.
| | 05:10 | Now remember that things like required,
those are going to show up way later
| | 05:14 | when I save this form.
| | 05:16 | But I'm just going a type part of my
email address and tab out of it, and take a
| | 05:20 | look I get this bright red circle all
the way around it that says whoa, whoa!
| | 05:24 | And when I point to it, it says,
Enter a valid email address.
| | 05:28 | See, that makes it easy for the
user to say oh okay. This bright red
| | 05:32 | dashed line around it is very attractive, it
caught my attention and I better caught yours.
| | 05:36 | Remember that when it blank we don't
have a problem with this rule initially,
| | 05:40 | but as soon as I go in and I start
typing something less than a whole email
| | 05:45 | address, it says Enter a valid email address.
| | 05:49 | Well let's try it again.
| | 05:56 | That one passes; it has all the
attributes of an email address pattern.
| | 06:01 | So I can keep simply entering incorrect
information and each type I do InfoPath
| | 06:05 | will go, no that's not good enough,
that's not good enough, we have a rule now
| | 06:09 | that's a really good rule.
| | 06:10 | Let's close our Preview, so we have a
whole series of rules that are available
| | 06:14 | for text fields; whether it's blank, whether
it's an email address, whether it's a URL or not.
| | 06:20 | We also have different rules that we
can apply to date fields and I actually
| | 06:25 | need to apply a rule right
down here to my NewsExpiry date.
| | 06:29 | So as you'll recall, the user is
saying this is a new story, it demands
| | 06:34 | coverage on the front page.
| | 06:36 | And so please make sure that it's there
and we're asking if you believe that,
| | 06:39 | tell us when this should expire,
what date and what time.
| | 06:43 | So if I select the date portion of my
NewsExpiry field and I choose Add Rule,
| | 06:49 | I'll see choices that now are not
about text boxes or dropdown lists, but
| | 06:54 | they're actually about dates. Is it blank?
| | 06:56 | Well we know what to do with that, we
can simply say if it's blank, stop and say
| | 07:01 | you need to fill in.
| | 07:03 | But what if the date is in the future or
in the past and shouldn't be, what if
| | 07:07 | it's before or after a particular date,
what if it's not between a set of
| | 07:11 | dates where it should be.
| | 07:13 | So I'm going to say our problem here
would be that if the date is in the past we
| | 07:16 | have an issue, because this date should be in the future.
| | 07:19 | The past is behind us, we're asking about a future date.
| | 07:23 | So if the date is in the past we want
to stop the user and say no, no, no,
| | 07:28 | you actually need to choose an
expiration date in the future, you're probably
| | 07:31 | not paying attention.
| | 07:32 | So we're going to show a validation error if it's in the past.
| | 07:36 | If the date they chose is less than today
and it's not blank, then the
| | 07:40 | screen tip says, hey!
| | 07:42 | Either enter today's date or a date that's
in the future, that's what you need to do.
| | 07:46 | If we only want a date in the future,
if today's date isn't valid either, then
| | 07:50 | we would simply change this condition from
less than today to less than or equal to today;
| | 07:57 | that it' not okay if it's less than or equal to today.
| | 08:06 | And we saw this earlier when we chose today
as a way to validate some information.
| | 08:12 | So if it's less than or equal to today, we've
changed that and then I'm going to say Enter
| | 08:18 | not today's date, but enter a date
in the future, that's what I'd like.
| | 08:24 | So let's preview this and see how it works.
| | 08:27 | News expires on this date and I am
going to choose a date in the past.
| | 08:31 | Notice it's a problem, I point to it and it says;
| | 08:34 | Enter a date in the future.
| | 08:36 | And because these are actually
combined controls, both of them light up.
| | 08:39 | But as soon as I fix this issue and
choose a date that's well in the future,
| | 08:43 | this one turns off as well.
| | 08:45 | So that works stunningly.
| | 08:47 | There is a good rule, let's give it a name.
| | 08:49 | So I want to enter a better name for
this rule rather than just Rule1.
| | 08:54 | One choice is to say that this kicks in
whenever there is an expiry date in the past.
| | 09:00 | If that's a little confusing to you,
because what we want is a date in the
| | 09:03 | future, let's just say that this is a bad expiry date.
| | 09:07 | Either of those lets us know what this Rule is
about and it's really easy for us to see them.
| | 09:13 | If you want to be able to see all of
the rules any place in your form, all you
| | 09:17 | need to do at any time is click on Manage Rules.
| | 09:20 | When you click on any sort of a control
that has Rules you'll see them there.
| | 09:24 | So when I click on my expiry date
notice I get Bad Expiry Date.
| | 09:28 | And when we go back up and we click on
our Email, there is our rule for Email.
| | 09:33 | But when I'm anyplace else, it shows
that I have the ability to create rules,
| | 09:36 | but they don't already exist.
| | 09:38 | So use rules here in InfoPath to make
sure that your users are entering data
| | 09:44 | that's valid, that you don't need to
call or email them later to find out what
| | 09:48 | it was they meant and so that when they
submit information they feel good about
| | 09:51 | the quality of information
they have provided to you.
| | Collapse this transcript |
| Using rules for conditional formatting| 00:00 | One of the ways we can make a form
easy to use is we can ensure that we don't
| | 00:04 | ask users for information that
we don't need them to provide.
| | 00:08 | There are a couple of places in this
form where there is optional information.
| | 00:12 | For example I ask the user to check here
if the story they're submitting to be
| | 00:17 | posted is a news story, and if it as then I'd
like to know when they believe it should expire.
| | 00:23 | But if they don't check this box, I don't
have any reason to ask them this information.
| | 00:28 | And then further down under Post Type
I have four possibilities.
| | 00:32 | The first is just use the description that's here.
| | 00:35 | the second is use the description
with a link to the attached file that we
| | 00:38 | haven't placed a control for yet, or a
description and contents of the attached file,
| | 00:42 | but the fourth possibility is a description
with a link someplace else not
| | 00:47 | to the attached file but to someplace else.
| | 00:49 | And so I've actually added a text box control
right here with a placeholder that says,
| | 00:55 | Enter the URL to link to.
| | 00:57 | If our user chooses Description only or
Description with link to attached file,
| | 01:01 | or Description and contents, they
don't ever need to see this text box.
| | 01:04 | But if they choose Description with link only,
we want them to provide some more information.
| | 01:09 | So let's take look at how we can use
some formatting rules, another type of rule
| | 01:14 | to be able to turn off the controls
that we don't need to show to users.
| | 01:19 | So let's start with our expiration date,
our NewsExpiry control, let's go ahead
| | 01:24 | and choose Manage Rules.
| | 01:28 | Now we already have a rule on this
particular control that says if someone
| | 01:33 | enters a date, then we want to make
sure that it's not a date in the past,
| | 01:37 | that's it date in the future.
| | 01:38 | But we're going to create another rule
and this is going to be a custom formatting rule.
| | 01:43 | In this rule what we're going to do is
we're going to say is this checkbox checked?
| | 01:47 | If it is, then show this, if not,
then we need to do something else.
| | 01:52 | So we're going to create a new rule and it's
not a Validation rule, it's a formatting rule.
| | 01:56 | And we're going to say that in a condition
where PostIsNews, notice that what
| | 02:03 | we're seeing is the fields that are in the same section.
| | 02:06 | But if we needed a field someplace else
in the form, we'd click Select a Field
| | 02:11 | or Group and we'd have access
to all of the data in the form.
| | 02:15 | But if PostIsNews is equal to and
this is a great time to know that checked
| | 02:20 | means TRUE and empty means FALSE
because that's the default that we left.
| | 02:25 | So if PostIsNews is equal to FALSE, there is a condition;
| | 02:29 | we don't need to fill this in;
| | 02:31 | then, what do we want to do?
| | 02:33 | Well my choice would be, I'd prefer to
hide the control but I can't hide it and
| | 02:37 | the reason is you can't hide date pickers.
Because they have this little calendar
| | 02:42 | that goes with them and some other attributes,
| | 02:44 | you're not allowed to hide a date picker in InfoPath.
| | 02:47 | But I can turn it off so that it's not enabled.
| | 02:50 | Let's go ahead and test this.
| | 02:55 | So right now I can't even click in this control.
| | 02:59 | But when I check that this is a "news" story,
now it's enabled.
| | 03:03 | Turn the checkbox off, not enabled.
That will work.
| | 03:07 | Let me close my Preview.
| | 03:09 | This is a good rule, let's give it a name.
| | 03:11 | Let's say Expiry Date not needed, okay.
| | 03:17 | So we are disabling, I could also say
disable expiry date control, whatever I
| | 03:22 | want to do some kind of a name
for this rule that works.
| | 03:26 | Notice that I am going to have to
create that same rule again here, not a
| | 03:30 | problem, we can do that.
| | 03:31 | Let's go take a look at our other formatting
rule to get rid of this text box.
| | 03:36 | Now before we jump in and try to create
this rule, I need to know what I'm looking for.
| | 03:41 | And what I'm looking for is, if this fourth
option is not selected, this should be hidden.
| | 03:46 | But if the fourth option is selected,
I want this to be visible.
| | 03:50 | Therefore, I need to know what
value this fourth option is returning.
| | 03:54 | I'm going to right-click and choose
Option button Properties and remember that
| | 03:58 | when the fourth option is selected,
this text is actually the text that gets
| | 04:03 | stored or gets returned to the data source.
| | 04:05 | I am going to try right-clicking
here to copy and I can't.
| | 04:08 | There is no copy menu available to me here,
but there are window shortcut keys
| | 04:13 | that override everything else, Ctrl+S
will always save, Ctrl+P will always print
| | 04:18 | and Ctrl+C will always copy.
| | 04:21 | So I am going to hold Ctrl and hit the
letter C and copy that text, because I
| | 04:26 | need this text exactly, let say OK.
| | 04:29 | I'm going to select this link URL text box that I added.
| | 04:32 | I am going to say I want to create a
New Formatting Rule and the new rule is
| | 04:39 | that when PostType, that's this field, is
not equal to -- and now I need to say I
| | 04:47 | want to type some text, I could also
type a number, a date, whatever, but I
| | 04:50 | don't just get to type here, I need to
choose what I want to do and I'm going to
| | 04:55 | do Ctrl+V as in victor to paste that text.
| | 04:59 | So when the PostType is not equal to --
and when I click out of this then InfoPath
| | 05:04 | wraps this in quotes for me.
| | 05:06 | So run this rule when PostType is not
equal to Description and External Link,
| | 05:12 | in other words, when it's one of the
first three choices, let's click OK.
| | 05:15 | What's true is that when PostType is
one of the first three choices, I want to
| | 05:19 | hide the URL control.
| | 05:21 | Let's go ahead and test this and see how it works.
| | 05:24 | Slide over to Preview, I don't see that control at all;
| | 05:30 | still don't see it, no text box yet.
| | 05:34 | There we go, there is my URL.
| | 05:36 | Now I've used a text box here.
| | 05:38 | Later in the course we're going to
substitute a different kind control for this
| | 05:41 | that actually is looking for a URL.
| | 05:43 | But for right now, this works just fine.
| | 05:45 | When I choose anything other than the
fourth choice, I don't have to enter a URL.
| | 05:49 | But as soon as I choose that fourth choice,
it drops in and it's right there,
| | 05:54 | it's like hello, you just did this,
Enter a URL; it works great.
| | 05:57 | Let's close the Preview.
| | 05:59 | So let's give this a name and this is
Hide URL text box unless needed, looks good.
| | 06:10 | So remember that if I have Manage Rules
turned on, this pane, anytime I click on
| | 06:15 | a field if there is a rule associated with it,
I built this based on a value in
| | 06:21 | PostType, but actually it's associated with this text box.
| | 06:24 | Here when I click on my NewsExpiry field,
I see Bad Expire Date and also
| | 06:29 | Expire Date not needed.
| | 06:30 | And I can tell that this is a formatting rule
because it has a paint brush and
| | 06:34 | this is actually a validation rule
because it has an exclamation point (!).
| | 06:37 | There is one final kind of rule that
we'll talk about later in the course,
| | 06:40 | that's called an Action Rule and it has
an icon with a downward pointing arrow.
| | 06:44 | Formatting Rules format something.
| | 06:45 | They hide controls,
| | 06:47 | disable controls, so those are
the two most prevalent choices.
| | 06:50 | But you could also use a Formatting Rule
to provide a particular backfill if you
| | 06:54 | had a value that was high or low.
| | 06:56 | You could use a Formatting Rule to bold
some text if there was a reason to do that.
| | 07:01 | It's a fairly limited set of things that
you'll do with the formatting controls,
| | 07:05 | but there are times that that's
exactly what you want to do.
| | 07:09 | Every single time you want to change
formatting or hide or disable controls,
| | 07:14 | you're going to come in here and
create the appropriate formatting rule.
| | Collapse this transcript |
|
|
7. Using Tables and Sections for Repeating DataUsing repeating tables| 00:01 | There are several categories of data
in our form that might appear more than
| | 00:05 | once if we make a provision for it.
| | 00:08 | This movie is about how we deal with repeating data.
| | 00:12 | Let me give you an example.
| | 00:14 | When a user asks for a post, we are
asking them what category it goes in.
| | 00:19 | And it could be that it only falls into
one category; it might be about travel
| | 00:24 | for example, or it might be
about festivals or staff meetings.
| | 00:28 | But it could be about more than
one thing; travel and tourism, staff
| | 00:33 | meetings and morale.
| | 00:36 | If we want to allow more than one category,
I have controls that will support that.
| | 00:41 | You'll find those controls with
the word Repeating in them.
| | 00:45 | Repeating Table for example;
| | 00:47 | Repeating Section are two of them.
| | 00:50 | But before I can use those particular
types of containers, I have to change my
| | 00:55 | data source to allow my data to collect
multiple instances of the categories.
| | 01:01 | Now you might wonder why don't
we use the multi-select list?
| | 01:06 | Well if I only had one field I
would, but I actually have three.
| | 01:10 | And so the multi-select list works fine when
I want to select multiple values in one field.
| | 01:16 | But I actually want this entire section to repeat.
| | 01:19 | So I need a container that repeats.
| | 01:21 | Fortunately, InfoPath has controls
that repeat both Repeating Tables and
| | 01:26 | Repeating Sections and they're
incredibly powerful to use.
| | 01:30 | We have to start though, not over
here in the form, but over here.
| | 01:34 | So I'm going to select PostCategories,
open its Properties and say this
| | 01:41 | group allows repeating.
| | 01:42 | I am going to leave that here for a minute
so you can make sure that you absorb
| | 01:47 | what it is we're doing.
| | 01:48 | I am not saying PostCategory repeat and
each of these fields repeat, I am saying
| | 01:53 | this entire group repeats over
and over again, and click OK.
| | 01:57 | Notice it has a new icon, this little down arrow.
| | 02:01 | It looks like a dropdown list that
you'd open and notice now that I have a
| | 02:05 | section that says Oops!
| | 02:06 | I can't even deal with this kind of data,
because this was a section that wasn't
| | 02:11 | a repeating section but a regular section.
| | 02:13 | That's okay, it's calling out that it's
got a problem, let's go ahead and delete it.
| | 02:18 | So we'll need to put a new section
or a new type of container in here.
| | 02:23 | We have the choice for a Repeating Table
or a Repeating Section.
| | 02:27 | Now if I choose from here you'll remember
that the next thing I'll have to do
| | 02:31 | is change the binding.
| | 02:32 | So I am going to make a choice
actually to use drag and drop.
| | 02:35 | I am going to create a little more
space to move in, just press Enter one more
| | 02:39 | time so I have nice big target to hit.
| | 02:42 | Whether I have a Repeating Table or a
Repeating Section depends on the kind of layout I want.
| | 02:46 | If all of these fields will fit all the way across
in a single rule, I like the idea of a table.
| | 02:52 | If on the other hand I had really
large fields or a large number of them,
| | 02:56 | I'm going to be pushed to use a section.
| | 02:58 | So let's go ahead and drag our
new repeating data over here.
| | 03:05 | I didn't right-drag, I just
dragged and InfoPath says whoa!
| | 03:09 | What do you want to do with this,
because I have three choices;
| | 03:13 | a Repeating Table, a Repeating Section,
that has the control dropped into it, or
| | 03:18 | a Repeating Section that creates the
possibility for me to place the controls in.
| | 03:23 | I want a Repeating Table, and
that's what it's looks like, pretty amazing.
| | 03:29 | Now the first thing I have is a
PostCategory that's that field, a
| | 03:32 | PostCategoryNote that's this field.
| | 03:35 | And finally I have a checkbox
about whether this is Primary or not.
| | 03:39 | It's got a lot of space, because it has a long name.
| | 03:42 | Notice that my table across the top
has headings and all of this is editable.
| | 03:47 | I can simply get rid of the words
PostCategoryIs and ask if this is primary.
| | 03:53 | I have space at the top of this form
to provide user instructions, and is
| | 03:57 | this the Primary Category?
| | 03:59 | So notice I can just go ahead and tighten
all these things up and when I do I'm
| | 04:04 | winning back space for the things like the Note.
| | 04:06 | We already know how to deal with this
text box so that can go multi-line and we
| | 04:10 | can work with that later.
| | 04:12 | But right now this is how I can create a Repeating Table.
| | 04:15 | Let's go see how this table looks.
| | 04:17 | I am going to click Preview
and I am going to Enter a category.
| | 04:24 | We can make this a dropdown list if we want;
| | 04:26 | I only need to do it once.
| | 04:28 | But let's say the Category here is Travel,
and a Note, this is just a Test and I
| | 04:33 | am going to make this Primary.
| | 04:34 | Then if I want to add another item,
I click Insert item; and this is Tourism
| | 04:40 | and my Note is a Test and it's not primary,
so I just leave that. That works well.
| | 04:45 | I can continue adding as many items as I wish here.
| | 04:49 | Now Insert item is interesting,
but this is all about categories.
| | 04:53 | So let's close this Preview, let's go back
and the Repeating Table itself has Properties.
| | 05:00 | So I select it, right-click, catch the Repeating
Table Properties and here are my choices.
| | 05:07 | First, we've got Binding and the reason
the binding is here in the Properties of
| | 05:12 | the Table is that we are going to bind to a group.
| | 05:15 | So I can change my binding here if I need to.
| | 05:19 | I can also allow users to insert and delete rows.
| | 05:22 | Now I don't necessarily need to do that.
I could have a Repeating Table that
| | 05:28 | had a specific number of rows in it or I
didn't want users to be able to delete rows.
| | 05:33 | I have lots of choices about what I do
here and I can customize the commands for
| | 05:37 | Insert, Insert Above; Insert Below and so on.
| | 05:42 | And down below where we have that
Insert item Hyperlink, I can change this to
| | 05:45 | say Insert details for another category.
| | 05:49 | I've lots of room because this
actually sits underneath the table.
| | 05:53 | Let's say OK and go back to Preview
and take a look at what we have.
| | 05:57 | Insert details for another category, right there.
| | 06:00 | But notice this arrow out here when I
click and this is where we see Insert
| | 06:04 | Categories, before, after, or to remove an item.
| | 06:08 | I also have Cut Copy and Paste if I need it
once I've cut or copied something.
| | 06:14 | So again, this Repeating Table, a
really significant control that I can use,
| | 06:20 | I don't have to decide how many rows I need
upfront, I can just say okay I'm all set.
| | 06:25 | I've set up one row and the user can add
as many more as they need to.
| | 06:30 | Let's do one more thing while we're still here.
| | 06:32 | Let's go back and actually make a change
to those properties one more time.
| | 06:38 | So when we saw the commands for
Insert Above and Insert Below, it actually
| | 06:43 | said Insert PostCategories, but even
though it says PostCategory here we're
| | 06:47 | talking about Categories.
| | 06:49 | So I could actually say Insert
another category and rather than Insert
| | 06:55 | PostCategories before, I could say Insert
a category before, and that's before the
| | 06:59 | selected row, Insert a category after,
Remove a category.
| | 07:06 | And if I believe somebody might want to
start all over again, I could simply say
| | 07:12 | Remove all categories and let them
start all over again from scratch.
| | 07:17 | So let's say OK, let's say OK again, Preview this;
| | 07:24 | Insert a category before, after,
Remove a category, Remove all.
| | 07:28 | So that's how those commands work. These
are how the properties work so that we
| | 07:34 | can make sure that our user understands
exactly what they are being asked to do.
| | 07:38 | This is how you create Repeating Table
and modify its Properties so that you can
| | 07:43 | have repeating data in your form
without creating empty row capacity for it.
| | Collapse this transcript |
| Using repeating sections| 00:01 | In this movie we're going to
talk about Repeating Sections.
| | 00:04 | And if you're following along from the
last movie on Repeating Tables there is a
| | 00:08 | change that you'll want to make to
your form, because I made it to this one.
| | 00:12 | I took the controls that were sitting
down here at the bottom that were
| | 00:15 | really the post file controls and I
put them in a section, because they
| | 00:19 | belong in a section.
| | 00:20 | And so that's where I'm starting and
that's where you need to start as well.
| | 00:24 | Now Repeating Sections are a lot like Repeating Tables.
| | 00:27 | If we want to repeat a section, first
we need to make sure that we've gone into
| | 00:31 | our field list, our data source description,
and said this group of controls is
| | 00:35 | going to repeat. Then we can move over
to our form either replaces section with
| | 00:40 | or without controls, or we could take a
section that's their already, remove it
| | 00:45 | and replace it with a Repeating Section.
| | 00:48 | This is more difficult than what we
did with Tables, because we took a table
| | 00:51 | that didn't exist, dragged it and dropped it into the form.
| | 00:55 | That was easy we simply right-click
over here and said this was going to repeat
| | 00:59 | and chose Repeating Tables when we
dragged the fields into the form.
| | 01:04 | What we are going to do is we're
going to take a section of this form that
| | 01:08 | already exists and we're going to
replace it with a Repeating Section.
| | 01:11 | And because we've spent some time
developing it, we're not willing simply to delete it.
| | 01:16 | This is like the trick where you have
all of the glasses and silverware and
| | 01:20 | stuff on the table and you pull
the tablecloth off without moving the
| | 01:23 | glasses and the silverware.
| | 01:25 | So that's what we're going to try to do together.
It will work.
| | 01:28 | So this section that I created earlier is one of those.
| | 01:33 | We have some controls that aren't here yet,
but we have controls here that
| | 01:37 | actually even have some rules baked
into them. They already have contents.
| | 01:42 | Now if I simply change this section
here to a Repeating Section, I just
| | 01:48 | right-click and I say well let's change
the control type and I could just change
| | 01:51 | it to a Repeating Section that'll blow
all of these controls off the form.
| | 01:55 | So I want to have a process that I step
through to make sure that that's not an
| | 02:01 | issue; that I can retain these
controls in all the time I put into them while
| | 02:05 | I'm in the process of saying that this is going to repeat.
| | 02:08 | So here is what we're going to do.
| | 02:10 | We're going to change the data source
over here, we're come copy this control set,
| | 02:13 | this entire table and all of its controls,
and then we're going to put a Repeating Section in
| | 02:18 | and put our controls back into it.
| | 02:21 | So first let's go over here to our PostFile
and change the Properties by saying
| | 02:27 | this can repeat, say OK.
| | 02:30 | But as soon as I do that of course
I have this section over here saying whoa!
| | 02:34 | I can't store repeating data, I wasn't made for that.
| | 02:37 | It's like, okay we know that.
| | 02:39 | So we have repeating data and a non-repeating
container, easy enough to understand.
| | 02:44 | So now let's copy our controls,
they are all in the same table.
| | 02:48 | I can select the entire section
or I could select the table,
| | 02:54 | here are the rows and everything that's in it.
| | 02:56 | However I do this, I want to go ahead
and select this and either copy or cut them,
| | 03:01 | it doesn't matter what we do, either way.
| | 03:03 | So let's go ahead and do Ctrl+X to Cut.
| | 03:06 | And then we have this section
that we don't want anymore.
| | 03:08 | It can't store the kind of data we'd like
to put in it, so we're going to delete it.
| | 03:14 | Now what I am going to do is I'm going
to drag the Post file group over here,
| | 03:18 | this is one of several ways I could
do this, I could also go up and grab a
| | 03:23 | Repeating Section in our Control Gallery.
I could even have chosen to change
| | 03:26 | what I had already, but I'm going to
say, I want a Repeating Section
| | 03:30 | and I don't need to controls.
| | 03:32 | And that's because my controls are
living on the clipboard right now.
| | 03:35 | So now I can click in my Repeating Section
that's tied to Post file, we know
| | 03:39 | where it goes and I can do Ctrl+V
to paste my table right back in.
| | 03:43 | Now here is the part that's just so cool.
Immediately when I did that,
| | 03:49 | here for example is my link URL and my
post type, they are still bound, as soon
| | 03:54 | as I drop them into this section,
because this data group has these same
| | 03:59 | controls and it went, whoa!
I know how to connect.
| | 04:02 | So all I needed to do is cut, put in a
section that could support repetition and
| | 04:07 | then paste this set of controls back in.
| | 04:10 | Problem wasn't my option buttons or my
text box, it was just the container itself.
| | 04:16 | Now we're going to do something edgy,
because the other thing that we can repeat
| | 04:20 | as if that wasn't edgy enough is
we can repeat most of this form.
| | 04:24 | Imagine the user, they want to sit down
and say, okay, it's Friday and next week
| | 04:29 | I need to have five or six things posted.
| | 04:32 | Do we really need them to
fill this form out five or six times?
| | 04:35 | No, we only need them to fill it out once.
| | 04:38 | So this information in our top section,
it's not going to change.
| | 04:42 | The information down below will,
will have different posts. In other words posts
| | 04:47 | themselves can repeat. This is the
same process okay, same thing we just did.
| | 04:53 | We're going to start by saying okay,
Posts they can repeat.
| | 04:59 | And as soon as I do that, this entire
large section that's highlighted says,
| | 05:04 | whoa, I was only meant for one post at a time.
| | 05:08 | I am going to say, okay that's just fine.
| | 05:10 | But now what we need to do is we need
to make sure that we select everything.
| | 05:14 | So I'm just going to select all the way up
and if I get too much in the form,
| | 05:19 | I want to take my time and
select again, there is no rush here.
| | 05:23 | I need to include this Repeating Section
down here at the bottom, it's part of
| | 05:26 | what I'm selecting, but I also need to
include everything up here at the top.
| | 05:30 | So I can just work my way down the form.
As I scroll off the edge of course,
| | 05:37 | I let my mouse button up, but don't
worry this is the same way you'd select in
| | 05:40 | Word or in Excel, I can hold Shift and
click below what I need to select and
| | 05:45 | I've got everything.
| | 05:46 | So click, scroll, hold Shift
and click again and I have it all.
| | 05:51 | This is the part where your heart is
probably a little tiny bit in your mouth,
| | 05:55 | but if we do Ctrl+X and Cut, it should cut everything.
| | 05:59 | So that works, I selected all the right stuff.
| | 06:02 | That's a good reason to use cut
rather than copy in this particular case.
| | 06:06 | Now what I want to do is get rid of
this section that says I don't know how to
| | 06:10 | cope with the data you have
and insert another section.
| | 06:13 | I'm actually going to press Enter to
give myself a little bit more space here.
| | 06:17 | I am going to take Post and drag
it over here and when I let go I can
| | 06:21 | choose Repeating Section; remember I
don't need to controls, but I just hit
| | 06:25 | Escape to clear that.
| | 06:26 | Another choice is that I could choose Repeating
Section here and then bind it back to posts.
| | 06:32 | We haven't done that in a while,
so let's go ahead and do that.
| | 06:35 | I am going to go ahead and add a
Repeating Section and I'm going to change its
| | 06:39 | binding; and say actually this is
bound to Posts, and that works just fine.
| | 06:45 | Now in my Repeating Section, I still
have stuff on the clipboard and I am going
| | 06:49 | to paste it all right here. Amazing!
| | 06:53 | So now when I go preview my form,
I have a lot of different stuff that repeats.
| | 06:59 | I can put in a post, but then I can
put in another whole post if I wish
| | 07:04 | below this, look at this.
| | 07:06 | Notice it says Insert item, well that's to
be able to insert another attachment set.
| | 07:12 | This Insert item here is to be able to enter another post.
| | 07:16 | Clearly I need to modify the text here,
because what's an item, I can't tell.
| | 07:21 | So this section here that simply repeats
the attachment, I want to go in and
| | 07:26 | make sure that I change its property, so
instead of Insert item I can say Insert
| | 07:32 | another file attachment.
| | 07:35 | And here, where it's inserting
another entire post, same thing.
| | 07:39 | I'm going to say rather than Insert item,
Insert another post and say OK.
| | 07:46 | Now when we go take a look at this in Preview,
here we have Insert another file attachment.
| | 07:53 | That works. Insert another entire post, and there we are.
| | 07:58 | No limits, so user can sit down at the
end of the week or the beginning of the
| | 08:02 | week or any time and say here
I'm sending you several posts.
| | 08:05 | There is a benefit to the organization for this to happen.
| | 08:09 | We have people spending less time
filling out forms, but also if you're sitting
| | 08:13 | in the communications department and
you get five different forms from someone,
| | 08:17 | it's hard to figure out how they would have prioritized it.
| | 08:20 | We could actually ask people to make
sure that the most important post goes to
| | 08:24 | the top and we can customize of course
these buttons so that they can move posts
| | 08:29 | up and down in whatever order they would like.
| | 08:32 | You now know that work that you do on a
particular form, whether it's creating
| | 08:37 | rules or setting option buttons or
any kind of controls, that you can copy
| | 08:42 | those, hang on to them, change the
data source itself, the basis on which we
| | 08:49 | have data repeating or not repeating
and paste that same control set back in,
| | 08:53 | and Microsoft InfoPath will figure out
how to rebind those controls back to
| | 08:57 | your data source every single time.
| | Collapse this transcript |
| Using optional sections| 00:00 | In this movie we're going to learn how
to create and configure Optional Sections.
| | 00:05 | Optional Sections are group of controls
that we sometimes want in the form,
| | 00:10 | but we don't need them all the time.
| | 00:12 | So rather than create a separate form
for this set of controls to capture
| | 00:17 | information, we either allow the user
to insert an Optional Section or we have
| | 00:23 | the Optional Section in the form to begin with
and we allow them to remove it.
| | 00:26 | If you're following along from the last movie,
I've made a set of changes to
| | 00:30 | this particular form. And that is NewArea,
a group and I'm going to go ahead
| | 00:38 | and show you the details on that,
because what we have are three string fields
| | 00:42 | and one date field.
So here is the scenario.
| | 00:45 | Sometimes we have people asked to have
something posted but what they really
| | 00:49 | want is an entirely new content area in the site.
| | 00:53 | This for form works fine the way it is,
but people who are using it are
| | 00:57 | saying, you know what I'd like to do
is provide a place for a user to say, here
| | 01:02 | is this new web Post Request and the Post
Request is actually create me a new content area.
| | 01:07 | Now this is a significant endeavor,
every user in your organization probably
| | 01:10 | wants their very own web page
and their very own, content area.
| | 01:14 | So when someone asks to have a NewArea
we're going to ask them for a description
| | 01:19 | and we're going to make sure that we
have a signature from whoever is one step
| | 01:23 | up from them in the organization or
maybe we have this signature come from the
| | 01:27 | head of communications.
| | 01:29 | Whoever it is, we're not simply going
to put people to work because somebody
| | 01:32 | asked to have new content area, all of their own.
| | 01:35 | So we're going to put this high up in
the form because it determines where we're
| | 01:39 | going to post the information that follows.
| | 01:42 | I really want to put this right here and
that's where I put this data group when
| | 01:46 | I modified our field list here.
| | 01:49 | Now I have the choice, just as we did
before, to say I'd like to drag this new
| | 01:54 | area group out into the form and drop it.
Here I get a new area along with my controls.
| | 02:00 | That works really well I can then modify this.
| | 02:04 | It's a relatively ugly looking section
when we do this and you might wonder why
| | 02:08 | we would do it at all, except here are
our controls well bound and then I can
| | 02:12 | go into my form and I can say okay, I
want to add a table and just move some
| | 02:17 | things around in the form.
| | 02:18 | We haven't done this, this way
before so let's give this a shot.
| | 02:21 | We want to insert a table and I'd like
to just use the four column table we've
| | 02:26 | been using all along, there it is.
| | 02:29 | And then what I can do is I can
take proposed Area and move it here.
| | 02:34 | I can either click and retype this or
I can actually go ahead and move it up here.
| | 02:39 | Notice when I do, it actually
gets the formatting that's in the area.
| | 02:44 | Here is my Proposed Description.
| | 02:46 | I'm going to actually give this a little bit more room.
| | 02:49 | What I'm going to do is I'm going to
merge these cells to give it some space;
| | 02:54 | Table tools>Layout>Merge Cells.
| | 02:57 | There is a nice long place for Description
and we can provide even more space if we want.
| | 03:02 | I might as well go ahead and edit this description here.
| | 03:06 | And now we want a Signature and a Date.
| | 03:13 | Notice that I don't have to take the entire
text if I don't want it, I can just double-click.
| | 03:17 | This is actually looking better by the minute, isn't it?
| | 03:20 | And there is our signature space and our date
picker and these are things that I don't need.
| | 03:26 | That worked pretty quickly.
| | 03:29 | That's a really fast way to create a section.
| | 03:32 | Now I'm going to select the entire section,
right-click, choose its Properties
| | 03:36 | and remind you that the difference between
a section and an Optional Section is
| | 03:40 | right here, which is I Allow the users
to delete the section or I don't include
| | 03:47 | it in the form by default, but I allow users to insert it.
| | 03:50 | Either of these settings being turned on,
either allowing them to delete it,
| | 03:55 | there is a regular section.
| | 03:57 | Allow them to delete it, its now optional,
because they can remove it or don't
| | 04:01 | include it by default and allow them to insert it.
| | 04:05 | Those are my choices.
| | 04:06 | There is another possibility by the way.
| | 04:08 | I could work with this form programmatically
and I could say I'm not even going
| | 04:12 | to allow my users to insert the section. I'll do it.
| | 04:16 | So if a user makes a particular choice
somewhere else, I'll write a rule to
| | 04:20 | insert the section just like the conditional
formatting rules we saw earlier.
| | 04:24 | It's simply an action step.
| | 04:26 | But I'm going to allow my users to go ahead and do this.
| | 04:30 | This all looks good.
| | 04:31 | I'm going to click OK and let's go ahead
and see the form in Preview, here we go.
| | 04:38 | Look, there is nothing here, I act surprised but I'm not.
| | 04:42 | Let's go back into our Optional Section,
because we didn't provide a way for the
| | 04:46 | user to actually insert it, we just said they could.
| | 04:49 | Let's go back to our Section Properties,
they actually need to have an Insert
| | 04:53 | button and some hint text if
they're going to do anything with this.
| | 04:56 | So let's say, Click here to propose a new content area.
| | 05:01 | I don't want to say Click here to get a new
content area or Click here for a new content area;
| | 05:06 | I want to make it clear;
| | 05:08 | they aren't really just getting to propose this here.
| | 05:10 | So let's go ahead and click Apply or OK,
same thing in this case, and let's go
| | 05:17 | look at the Preview again.
| | 05:19 | Click here to propose a new content area;
| | 05:23 | there we go there is our Optional Section.
| | 05:26 | Now it has a button and we can say
Remove NewArea. Notice the text and the
| | 05:31 | reason we come in here is, that these
are custom commands and we can decide that
| | 05:35 | we want to change this so this would say,
Remove this proposal for example.
| | 05:40 | Let's go back and see how we're to do that.
| | 05:42 | Let's close our Preview, here we are
back in our Optional Section, right-click
| | 05:46 | Section Properties. We can Insert or Remove it.
| | 05:50 | If we're inserting it, I could say,
Insert a proposed new content area.
| | 05:56 | And then the other possibility and of
course to picking up this field name right
| | 06:00 | from here; Remove this proposal.
| | 06:04 | Let's click OK, swing up to our preview,
propose a new content area,
| | 06:15 | I can enter some information.
| | 06:16 | We'll talk more later about how we're
going to collect a Signature in this form,
| | 06:21 | Remove this proposal.
| | 06:26 | Click here to propose, Remove this proposal. That's slick.
| | 06:29 | Now there are a lot of areas in your form
that you might want to consider having
| | 06:35 | a section that the user can add or a
section that the user can remove .
| | 06:39 | Whenever you do, all you do is place
the section and then go in and change its
| | 06:44 | attributes to make it optional.
| | 06:46 | Optional Sections are incredibly powerful
if you want to use them to provide
| | 06:51 | spaces to enter information that many
users are not going to need to enter, but
| | 06:56 | some definitely need to provide.
| | Collapse this transcript |
| Using choice controls| 00:00 | There are three different choice containers
that you can use when you want to
| | 00:04 | provide your users with the ability
to select among options.
| | 00:09 | And they are full featured.
| | 00:11 | You can allow a user to choose multiple options,
you can allow them to choose
| | 00:16 | one and only one among a group.
| | 00:19 | So depending on your business need,
choice controls are really powerful.
| | 00:23 | We just don't have a need for
them in our Web Post Request.
| | 00:26 | So let's talk about a scenario where
we do need them so you can see how they work,
| | 00:30 | because they are a little bit complex to figure out.
| | 00:34 | There is an organization that has
three different types of membership.
| | 00:39 | They have a membership for adults, they
have a membership for children and they
| | 00:42 | have a membership for senior citizens.
| | 00:44 | If they only needed to say, well if
you're a senior citizen give us one new
| | 00:49 | piece of information or if you're a
child we need to have this information.
| | 00:54 | If it was only a couple of fields, then
we'd handle that by using conditional
| | 00:58 | formatting and hiding fields or we'd
have a section you can take in or out.
| | 01:02 | But it ends up that it's clean and neat
to have three different sections that
| | 01:08 | we can choose from.
| | 01:10 | Because with adults, we want to ask
them all kinds of information about where
| | 01:13 | they live and their birth date and stuff.
| | 01:17 | But ultimately we also want to ask them
about their employment status,
| | 01:20 | information about a spouse or a partner
and we won't ask a child those things,
| | 01:25 | we'll ask a child who their parents are.
| | 01:27 | And we'll make sure that we have an
authorization on file for them as well as
| | 01:32 | some information about how to contact
parents if something were to happen to the
| | 01:35 | child while they were on premises.
| | 01:37 | And then with senior citizens we want
some retirement information that's very
| | 01:41 | specific, because we have some programs
that are specific for seniors, just as
| | 01:46 | we have programs that were
specifically designed for children.
| | 01:49 | So these are our three sections.
| | 01:51 | Whenever you find yourself designing a form
and you come to well three, four
| | 01:56 | possibilities or even two, now you should
think about hmm, I can give people a
| | 02:00 | choice using the Choice Containers.
| | 02:03 | Let's go back to our form.
| | 02:05 | This is not the type of work you want
to do retroactively. Some of the things
| | 02:09 | we've done, it's really easy to say,
well let's take a section and make it an
| | 02:13 | Optional Section; not so with Choice Controls.
| | 02:16 | Because with Choice Controls we
actually place the controls and it's going to
| | 02:19 | create our field structure over here
on the right, so watch.
| | 02:23 | We'll begin by saying we want a Choice Group.
| | 02:26 | Now there are two possibilities here.
| | 02:28 | Let me talk first about the one that
I am not going to choose, which is a
| | 02:31 | Repeating Choice Group.
| | 02:32 | Let's imagine that we had those sections
in a family form, and we would say okay
| | 02:36 | choose the first membership and maybe
that would be one of the parents, so they
| | 02:41 | would choose an Adult Section.
| | 02:43 | Then choose the next membership, well
we will want to put a child in and they
| | 02:47 | choose a Child Section. Next
another child, next another child.
| | 02:50 | Now a grandma stands with us,
we'll choose a senior section.
| | 02:54 | See we repeat the ability to choose,
that's a Repeating Choice group.
| | 02:57 | If on the other hand, this is a one membership per form,
form, which is what this is,
| | 03:03 | we are going to say choose one section.
| | 03:06 | So that's how this works.
| | 03:08 | We have the possibility to choose
one section over and over again or the
| | 03:12 | possibility simply to choose one
section once. That's our scenario.
| | 03:16 | I am going to go ahead and click.
| | 03:18 | Notice that I drop a Choice Group
with two Choice Sections into my form.
| | 03:22 | Over here I have group and
Choice and two groups underneath it.
| | 03:28 | Now this group is my true Choice Group.
| | 03:32 | So this would be something like a membership type
or type of number or just new member.
| | 03:38 | I am going to change its Properties,
so I am going to call this NewMember.
| | 03:41 | I am not going to change anything else here.
| | 03:44 | I'm just going to say OK.
| | 03:45 | Now we have the choices and I can't rename this.
| | 03:48 | If you go look at the Properties here,
you'll find there is precious little you
| | 03:53 | can do here, the answer would be nothing.
| | 03:55 | There is nothing for you to set here at all.
| | 03:58 | So just breathe you're going to know
whenever you're using a Choice Group,
| | 04:02 | because it will say choice right here.
| | 04:03 | And the fact that it's in parentheses ()
is a clue that you can't do anything with this.
| | 04:07 | I am going to change the Properties here
though and we're going to call this for
| | 04:11 | example Child, there is the Child group.
Set the Properties for the Adult group.,
| | 04:17 | I need one more group.
| | 04:20 | I have a couple of different ways, I
can do this. Probably the easiest way is
| | 04:24 | simply to add a Senior Group.
| | 04:28 | Now when I do that I get a group, I could
also then place a Choice Section for
| | 04:35 | this group out in my form. When I do
though I get another Choice Group and a lot
| | 04:41 | more infrastructure, that's not what I want to have.
| | 04:44 | I really want this senior group to be a group.
| | 04:46 | So the easiest way for me to do this
is not just to add the group here, but it's
| | 04:55 | to come out in the form and click
and say I want a Choice Section.
| | 05:00 | When I add a Choice Section within the group,
that works well here and I can
| | 05:04 | rename this to Senior.
| | 05:05 | There are my three groups.
| | 05:08 | Notice that one of them is the default
and it's child and that might be not
| | 05:12 | something that I want to have happen.
| | 05:14 | We'll talk about how to fix that in a minute
because as I showed you a minute
| | 05:18 | ago, there is not a lot here to change
when it comes to the group, which is
| | 05:22 | where this default is decided.
| | 05:24 | This one happens to be the default, because it's first.
| | 05:27 | Let's go ahead and simply place some fields in
so we can see what we have here.
| | 05:32 | So this is ChildBirthdate, we'll put that field in
and that will be easy enough to see.
| | 05:40 | Now I am going to add a field here,
we'll just call it AdultBirthdate and let's
| | 05:44 | just capture all the birthdates.
| | 05:46 | Could I do this outside of the Choice
Group and have a section of the form where
| | 05:50 | I collected birthdates and address
information? Sure that's a choice. This is
| | 05:55 | choice too though, right.
| | 05:56 | Let's go ahead and add and we'll have
the SeniorRetirementDate, here we go.
| | 06:03 | So I am going to go ahead and drag
my Child Birthdate out here, my Adult
| | 06:08 | Birthdate into my second and
Senior into here and that works.
| | 06:15 | So now let's go see what this form looks like.
| | 06:18 | When I Preview it, the default Child Section shows up.
| | 06:23 | I can replace this with an Adult Section,
I can replace this with a Senior Section
| | 06:29 | or I can remove whatever section there is there.
| | 06:32 | Now if I do that I've got no section, there is nothing here.
| | 06:36 | So that's not normally a choice that I want to make.
| | 06:40 | But when I go and I have the default section,
I'd rather have a Senior.
| | 06:45 | That works, it's actually really nice.
| | 06:47 | I can put as many controls of course
in each of these sections as I wish.
| | 06:52 | How now do I change it so Adult is the default,
because most of our members are Adults.
| | 06:58 | If we go take a look at Choice again,
just to convince ourselves that we can't
| | 07:02 | do much there, you'll notice that I can't do anything here.
| | 07:06 | I have the opportunity though to send some data
with my form in the moment when it opens.
| | 07:13 | This is something we haven't looked at before,
it's up on the DATA tab and it's called Default Values.
| | 07:19 | So what I can do is I can select the
Choice Group and click on Default Values.
| | 07:24 | Notice it says, well you've got this thing
called NewMember and I can say Yes.
| | 07:28 | You've got this thing called Choice, Yes.
And it says which one of these
| | 07:33 | do you want in here by default? I'm going
to choose Adult, there is my default choice.
| | 07:39 | You can use this not just for choices
but for any other time that you want to
| | 07:45 | send a specific value into a field and
you don't necessarily want to make it the
| | 07:49 | default in the form.
| | 07:51 | You could for example send some
default values only during the time that a
| | 07:55 | form is being tested and then you could remove
them later on when the form is in production.
| | 08:00 | But this is a great choice for this
because it's really the only way that we're
| | 08:04 | going to change that default from here to here.
| | 08:07 | When we click OK. There is our new
default section, let's go back to Home,
| | 08:11 | let's click Preview.
| | 08:13 | Now we have the adult section as our default.
| | 08:16 | Choice Sections are incredible because they
allow you to exercise what's called case logic.
| | 08:24 | In the first case do this, in the second case do this,
in the third -- now you
| | 08:27 | could also do that with lots of other
more complex mechanisms where we had
| | 08:32 | sections that we hid and sections that
we showed, but wow, this is just really
| | 08:37 | straightforward as long as you remember
to construct this early in your form and
| | 08:42 | make sure that you are being really
smart about the relationship between the
| | 08:46 | controls here creating the fields over here.
| | 08:50 | That's the easiest way to do this in InfoPath 2013.
| | Collapse this transcript |
|
|
8. Using Object ControlsUsing the file attachment control| 00:00 | In this movie we're going to see how
to use the file attachment control
| | 00:05 | to either embed a particular file in a form
or more usually to allow a user
| | 00:11 | to provide a document to us.
| | 00:13 | Way down at the bottom of our form we
have a place where we've had this stub,
| | 00:18 | the POST FILE ATTACHMENT WILL GO HERE.
| | 00:21 | This is the file that the user is
going to attach if they want the post to
| | 00:25 | include a link to a file or contents of the file.
| | 00:29 | So I'm simply going to delete that.
I have here the field and it's the proper
| | 00:34 | type, it's called a base64Binary Field type.
| | 00:38 | This type of field is used to capture incredibly
rich information, so it can hold an entire file.
| | 00:46 | That file can be anything from a form
or a Word document, a PDF to a JPEG,
| | 00:53 | photos of x-rays, this is a really great file type.
| | 00:58 | When I drag and drop this in my form,
my first choice is Picture because it's
| | 01:03 | used for images, but my second is
File Attachment, so I'm simply going to
| | 01:07 | choose File Attachment.
| | 01:09 | Let's scroll back down and you'll notice that we
have an image that says Click here to attach a file.
| | 01:15 | So I'm going to just click Preview and
you'll notice right here Click here to
| | 01:21 | attach a file. Now you'll see that the
right edge of that is cut off a little bit,
| | 01:26 | so I want to make this cell just a little larger.
| | 01:29 | But if I click, then I'm allowed to browse
for a file in the Attach File dialog box.
| | 01:33 | That looks good.
| | 01:34 | Let me just care of that spacing issue
right there, that works well and I might
| | 01:39 | want to have these columns over on the right.
| | 01:42 | You know how to do all those things already.
Let's take a look at the File Attachment Properties.
| | 01:47 | This is the file placeholder.
| | 01:49 | Now another choice another very different
use of this is to specify a default
| | 01:55 | file and you browse and go get that file.
Then the file itself is actually
| | 01:59 | embedded to begin with and the user
can open it up and make some changes and
| | 02:04 | resave it or they can choose Save As
and save that file somewhere else.
| | 02:09 | But that's not a typical use, and when
you do that, then you say I'm not going
| | 02:13 | to allow my user to browse and delete
and replace files. I'm simply going to
| | 02:18 | allow them to use the file that I have.
For example this sample Word file,
| | 02:22 | that's only file I'm going to allow them to use.
| | 02:25 | So if I click OK, notice the file is
right here already. When I click
| | 02:29 | Preview, my user has the ability to go
in and to open this document and to do a
| | 02:36 | Save As, but they really don't have
the ability to choose anything else.
| | 02:40 | If they click, they simply are
prompted to open the document.
| | 02:44 | So that's a way to embed a particular
document. And I'd make some
| | 02:48 | formatting changes, so that my embedded
document looked good in the space that was provided.
| | 02:53 | Let's go back and say,
| | 02:54 | no actually I want my users not to
receive a document for me, but to give me a
| | 02:59 | document in this case.
| | 03:01 | If this was a container that required --
if you're going to fill this form out you
| | 03:05 | have to attach something, notice I have
the ability to say this Cannot be blank.
| | 03:09 | Now the form that we're working on
here is actually a form that ultimately
| | 03:13 | will be browser-based.
| | 03:15 | So when I created this form I said
I just want to create a blank form.
| | 03:19 | Therefore, I don't have the ability
to limit the types of files that can be
| | 03:24 | attached here. That's because
the browser can't enforce this rule.
| | 03:28 | Let me show what this would look like
though in an InfoPath form filler form.
| | 03:34 | So here I have a control and I can right-click.
This is a form filler form and I
| | 03:41 | can say that a user can only attach for
example a doc or a docx file here, they
| | 03:48 | can only attach a Word document,
that's all I am looking for.
| | 03:51 | More normally what this is used for is
I want picture, therefore you can only
| | 03:57 | attach a JPEG, a GIF, a PNG
| | 04:02 | and perhaps there is the only
file types I'm going to allow.
| | 04:08 | So this is how this type of a control is used.
| | 04:10 | And then when we actually preview
this and the user goes in and clicks to
| | 04:15 | attach a file, it won't show anything here
because none of the files I have are pictures.
| | 04:21 | But if I were to jump into a picture
library like this one, notice that I have
| | 04:26 | lots of pictures that are available to me.
| | 04:27 | So that's a use, but only again if you're
not hosting this form in a browser.
| | 04:32 | So in our form, we're simply going to
show a file placeholder, allow the user
| | 04:38 | to browse and we are going to accept
any type of a file, because that's what we
| | 04:43 | can do when we have a form using a file
attachment that's going to be used in a browser.
| | 04:48 | Let's click OK, click the Preview one
more time, scroll down to the bottom,
| | 04:53 | click here to attach a file.
| | 04:54 | Let's go out to our folder of exercise
files in our Images folder and attach
| | 05:04 | this No Obstacles license right here.
| | 05:07 | It's a PNG, so it has a really very pretty icon here for it.
| | 05:12 | And my user now can Attach, Open, Save As or Remove.
| | 05:17 | Insert another file attachment. Sure, right here.
| | 05:22 | Remember that we allowed to have various
different attachments here, this is our
| | 05:27 | repeating section at work and I can
now attach another file and say how it
| | 05:32 | should be treated as well.
| | 05:33 | This is a nice looking form and the
file attachment makes it really easy for
| | 05:38 | my user to say, here is what I want you to do
and here is what I need you to do it with.
| | Collapse this transcript |
| Using the hyperlink control| 00:00 | Near the bottom of this form, we're
asking the user to provide a URL, but right
| | 00:05 | now the control that we're using to do
that is a text box control. So even
| | 00:10 | if they type a URL it won't be a hyperlink.
We'd really like to have a hyperlink here if we could.
| | 00:16 | So what we're going to do is we're
going to actually use a different type of
| | 00:20 | control, one of the object controls
that's called hyperlink. And by using a
| | 00:24 | hyperlink control a user will be expected
to enter information in a way that
| | 00:29 | provides a link to a valid resource,
whether it's a website or a file or even a
| | 00:35 | Mail to address, something that's a hyperlink.
| | 00:38 | So a couple of possibilities;
| | 00:40 | one possibility is that we could change
our control to a Hyperlink control, that works
| | 00:44 | and now I have Click here to insert a hyperlink.
| | 00:49 | So when we see this in preview now,
the user is going to click and they'll
| | 00:53 | actually be asked to provide a hyperlink to type it in here.
| | 00:57 | This doesn't open a browser for them,
it would be sweet, but it really doesn't.
| | 01:00 | So what are my options to help
my user enter information effectively?
| | 01:05 | If I right-click and we check its
hyperlink properties, you're going to notice
| | 01:09 | there really aren't any. There
is nothing much here to work with.
| | 01:13 | So the best I can do is I can provide
some other information to my user and I'm
| | 01:17 | going to do that in the form of a label.
| | 01:19 | I'm simply going to make a note here
that says, Copy a URL from your browser to
| | 01:26 | paste in this control.
| | 01:29 | Now I can do that or they don't need
to know if it's control, I can say it to
| | 01:34 | paste here. Another option is they
could type or copy a URL from their
| | 01:39 | browser to paste here.
| | 01:40 | I kind of like that, that's going to work well.
| | 01:42 | So now when I preview this, my user
takes a look and they slide down and then
| | 01:46 | they say, ooh, Type or copy a URL
from your browser to paste here.
| | 01:50 | Then they could toggle out to their browser,
go ahead and copy a hyperlink so
| | 01:53 | they have one, and then come back here
and paste when they do click to insert.
| | 01:58 | Or they could still choose to type, for
example, but notice we have a real hyperlink.
| | 02:06 | And so when someone clicks on that
hyperlink it actually goes and opens up
| | 02:10 | whatever resource that URI or URL points to.
| | 02:13 | This is how we expect a hyperlink to work.
| | 02:17 | So particularly in a form, where we're
saying what would you like us to post
| | 02:21 | on a web, you can see the utility of
a user being able to say well I'd like
| | 02:25 | you to put it right here, or here is
the content that I would like you to
| | 02:30 | provide for a link.
| | 02:31 | That's very specific as opposed to
typing up some text that says, well why don't
| | 02:35 | you go to the Google homepage?
| | 02:36 | This is how the Hyperlink control works.
| | 02:39 | It's easy to use and as long as our users
understand how they're going to
| | 02:45 | engage with it, I think they appreciate
being able to provide hyperlinks
| | 02:49 | directly in controls.
| | 02:50 | So there we go, it's clearly now a
label rather than other content.
| | 02:56 | I like how this works.
| | Collapse this transcript |
| Calculating a value with form data| 00:00 | I don't have a need for a calculated
value in the InfoPath form that we've been
| | 00:05 | creating for a web posting, but I
want to make sure that I've shown you
| | 00:09 | calculated value controls, because
they're incredibly useful and you'll use them
| | 00:14 | a lot in many other types of forms.
| | 00:16 | So here is a sample that I have put
together to show you two different ways to
| | 00:21 | use calculated values.
| | 00:22 | The first is something that's called
concatenation and if you're familiar with
| | 00:26 | Excel's Concatenation, it
works the same way here.
| | 00:29 | And then the second is a
basic numeric calculation.
| | 00:32 | We could also do calculated values on
dates, so let's take a look at how this
| | 00:37 | form works without any
calculated value controls.
| | 00:41 | So user enters their first name and they
enter their last name and we want their
| | 00:45 | full name, so we make them type that too.
| | 00:47 | But if I have their first and last name, I
should be able to generate a full name myself.
| | 00:52 | Same thing is true when they're using
this section of the order entry form they
| | 00:56 | want to order red sweaters and they
want to order 15 of them and they are $22
| | 01:02 | apiece and now we expect them to pull
out a calculator or Excel or something
| | 01:06 | else and come up with that $330.
| | 01:10 | This is my version of a nightmare as
having end-users calculate the cost of
| | 01:14 | something before they pay us.
| | 01:16 | I actually want to make sure that I
have a calculation engine doing that.
| | 01:20 | This is what computers do well
and people do much less well.
| | 01:23 | So let's put two calculated fields in this form;
| | 01:26 | one here for Full Name, and the
other here for the Extended Price.
| | 01:30 | So the first thing I'll do is click on
my Full Name field, right-click, change
| | 01:35 | this control to a Calculated Value.
| | 01:38 | Notice that when I change this control
to a Calculated Value control, it has
| | 01:43 | different formatting.
| | 01:44 | This is something that's ubiquitous
throughout Windows that when I see white
| | 01:49 | through a form, I know I can type
there and when I don't when it's the same
| | 01:52 | color as the background, I know I can't.
So this is simply a way of allowing my
| | 01:57 | users to know they're not going to be
doing much with this field, they're not
| | 02:01 | going to be entering a Full Name,
they're simply going to be watching it create
| | 02:05 | itself in the control.
| | 02:06 | I want to right-click and
choose Calculated Value Properties.
| | 02:09 | I can either enter text right here, not
what I want to do, but you could imagine
| | 02:15 | that you might want to
have a label that changes.
| | 02:18 | And remember that we can use rules
to change values of controls as well
| | 02:22 | as format controls.
| | 02:24 | So one reason that I might use a
Calculated Value Control is to have a label
| | 02:29 | that I can change based on
choices that my user makes in the form.
| | 02:34 | That's what this is for.
| | 02:35 | I can't change a label, but I
can change a calculated value.
| | 02:39 | I actually want to do something different here.
| | 02:41 | I want to do a calculation and it
says, Enter an XPath expression.
| | 02:45 | Let's skip that too.
| | 02:47 | Let's click this familiar Edit Formula
button that we we are used to in Excel
| | 02:52 | and in other places.
| | 02:53 | And it says the formula is, this
will be a full name. Let's delete that.
| | 02:57 | Here's what we're going to do.
| | 02:58 | We're going to use a
function called concatenation.
| | 03:02 | Here it is right here, concat;
| | 03:04 | combines two or more strings or
text strings into one text string.
| | 03:08 | That's what we want.
| | 03:09 | So I'm going to choose concat and
it says double-click to insert field.
| | 03:12 | Here I want the FirstName, here I want the
LastName, and in between, I need a space.
| | 03:21 | Now the way I'm going to do that is I'm
actually going to literally type a space
| | 03:25 | in here a quote ('), a
space and another quote (').
| | 03:29 | So what I have is the first name field
followed by a comma (,), quote (') space
| | 03:33 | quote (') followed by another comma (,)
and last name, because commas are used
| | 03:37 | to separate the arguments here
just as they are if we were in Excel.
| | 03:41 | Now if you jumped in here and said
formula and your Excel training kicked in
| | 03:44 | and you typed in equals here for
example before you started, when we verify the
| | 03:49 | formula, it'll get rid of it just
like that, it knows it's seen Excel users
| | 03:54 | like you and me before.
| | 03:55 | I always click Verify
Formula even if it's really basic.
| | 03:59 | Now let's click OK.
| | 04:01 | And OK again, let's preview our
formula quickly and see how this works.
| | 04:05 | So there's my first name and
there's my last name, just like that.
| | 04:10 | Now let's do the numeric calculation.
| | 04:13 | The user is going to type an item here.
| | 04:15 | They're going to enter a price,
they're going to enter a quantity and the
| | 04:18 | extended price is what I want to calculate.
| | 04:20 | By the way all of these fields are left
-justified and I would like them to be
| | 04:24 | right-justified, so we can just
skip along and do that, if we wish to.
| | 04:28 | Easy enough to do on our way
to the Text Box Properties.
| | 04:32 | Well, let's change our
control here to a Calculated Value.
| | 04:36 | Once again notice that the control has
a different format, a format that lets
| | 04:41 | our users know you're not going to
typing here, right-click, change its
| | 04:45 | Properties and once again I want to
go and edit my XPath expression, delete
| | 04:50 | what's there are already.
| | 04:52 | And in this case I'm not going to insert a
function, I'm actually going to build a formula.
| | 04:56 | You'll be tempted to type in equals,
don't bother, we don't need them here.
| | 05:00 | We're going to say that price times,
that's the asterisk (*) just like in Excel,
| | 05:07 | quantity equals our extended price,
verify the formula, we're all okay, let's go
| | 05:15 | take a look at our form now in Preview mode.
| | 05:18 | There is red sweaters, $330.
| | 05:23 | And we can continue to add
more items here to the form.
| | 05:29 | So this is how So this is how
our calculated value control works.
| | 05:34 | You can display read-only data as I said,
like I want to display a label that I
| | 05:38 | can change, because I've put it in a
calculated value control, so I can.
| | 05:43 | But more frequently it's
to do this kind of thing;
| | 05:46 | where we do some concatenation, where we
calculate a price based on other values
| | 05:52 | that a user has entered, or where we say
for example that we have a date control
| | 05:58 | that has lots of information, but
we'd like to convert it to text.
| | 06:01 | There is a small number of functions
that you can use, but they're really
| | 06:05 | powerful and they allow you to do
more than you might imagine here in
| | 06:09 | InfoPath 2013.
| | Collapse this transcript |
| Using the picture controls| 00:00 | For the first few years when I was creating
InfoPath forms, most of the people I
| | 00:05 | created forms for, simply wanted to
capture text and sometimes an attached file.
| | 00:09 | But increasingly I'm being asked to
create forms that allow users to insert
| | 00:14 | pictures and drawings into the form.
| | 00:16 | So I would like to show you the
two different drawing controls that
| | 00:19 | are available to you.
| | 00:20 | I have modified our form in a couple of
different ways. One is that I've added a
| | 00:25 | new field here for a drawing. And this
is a base64Binary field, so it can hold a
| | 00:30 | really rich drawing of different
types, but I've done something else.
| | 00:34 | I have resaved our particular form here, so
that it is an InfoPath filler form template.
| | 00:42 | Up until this point, we've actually been
working with a form that was created to
| | 00:46 | be posted as a thin form or an intranet form,
which we'll talk about in the next chapter,
| | 00:51 | but in order to use the ink drawing control,
I actually need to have
| | 00:56 | the support of the InfoPath filler.
| | 00:58 | If you think about how few websites
there are where you're allowed to go jump
| | 01:02 | online and draw, you'll understand
that that's something that browsers don't
| | 01:05 | do either well or at all. So I need the
InfoPath Filler to be able to use these controls.
| | 01:12 | So here's this extended control set.
| | 01:14 | We have more objects like Picture button,
Ink Picture and so on. And I have in
| | 01:19 | our Post group, this Drawing field.
| | 01:23 | So first let's see what our Picture control
looks like. I'm going to drag and
| | 01:27 | drop this and say I want my user to
be able to add a picture here. And this
| | 01:31 | looks a lot like Click here to attach
a file, but instead it's Click here to
| | 01:36 | insert a picture. When I go into
Preview and click, we have a couple of
| | 01:41 | things going on. One of the first is
it actually knows to go to My Pictures
| | 01:45 | folder. I didn't have to navigate here
like I did when I clicked Click here to
| | 01:49 | attach a file. It knew right where it
was going, it finds my default pictures
| | 01:53 | library on my device.
| | 01:55 | If you don't have images in your
Pictures folder or don't want to use those
| | 01:59 | images for whatever reason, we've also
included an Images folder in the exercise
| | 02:04 | file set and I can then choose whatever
image I would like, maybe this time I'd
| | 02:08 | like to show image of this slicker.
| | 02:12 | Now notice it just isn't going to
want to fit in here, so I could choose a
| | 02:17 | different one or I can do something to resize this.
| | 02:21 | That's what this Picture control looks like.
| | 02:23 | When I right-click and then look at
the Picture Properties, you'll find that
| | 02:26 | there are a lot of properties. I can
say that it's Read-only to display a
| | 02:30 | picture. I can display a default picture,
so that I can change the image in here
| | 02:35 | programmatically, or change the image
by using a rule based on the value that a
| | 02:40 | user enters. So that's the purpose of
specifying a default picture is the user
| | 02:45 | can't change it, in this case only I can.
But here we're going to show a picture
| | 02:49 | placeholder and allow the user to change the image.
| | 02:53 | What happens if I want to have a drawing
in here instead for my many tablet users?
| | 02:58 | So let's drag and you'll find Ink Picture
that's a drawing here below the line
| | 03:04 | not as popular of choice, but a good
choice nonetheless. And we have a little
| | 03:10 | more space given, stakes out a bit of
territory. Let's go to Preview now, and
| | 03:15 | we actually have a drawing space here.
| | 03:17 | Notice as I move my mouse, I'm able to
start drawing. I have Ink tools up here,
| | 03:23 | so I can say I'd like to use Felt Pen
and I would like that Felt Pen to be green.
| | 03:30 | Now I could create a drawing here.
| | 03:32 | I bet you can tell at this point that
I'm not working on a tablet, but notice
| | 03:40 | that I can actually include a
drawing right here on the form.
| | 03:44 | So these are two different approaches
to allowing users to provide graphic
| | 03:49 | information within your form in InfoPath;
your Picture control and your Ink Picture control.
| | Collapse this transcript |
|
|
9. Creating Browser FormsUnderstanding browser, or thin-client, forms| 00:00 | This is a great time for us to have a
short conversation about thin-client forms,
| | 00:05 | or what are also called web forms or web browser forms.
| | 00:09 | With InfoPath there are two ways you can fill out a form.
| | 00:12 | One way is to use InfoPath Filler,
but we might want to have people who complete
| | 00:17 | a form in our organization
who don't have access to InfoPath Filler
| | 00:21 | or our company might have a policy or at
least a belief that the best forms are all
| | 00:26 | enabled for use on the web.
| | 00:28 | For either of these reasons we might end
up choosing to create forms that can be
| | 00:32 | completed in a browser.
| | 00:33 | Now whenever you use a tool like InfoPath
or InfoPath Filler or even a browser,
| | 00:39 | there's a relationship between where the
form lives, that's the server, and where
| | 00:43 | the user completes it, and that's in
this case on a PC. But when you're using
| | 00:48 | InfoPath Filler, you actually need to
run software on your local computer. That
| | 00:53 | software takes up some memory, whereas
if we are completing a form in a browser
| | 00:59 | all of the work all of the memory
work happens on the server.
| | 01:03 | The kind of forms that we create for
tools like InfoPath filler are called Thick
| | 01:08 | client forms, because they require
software locally and they're thick because
| | 01:13 | you need to have some depth in your client software.
| | 01:15 | On the other hand forms that take advantage
of somebody else's server, somebody
| | 01:21 | else's memory and computing power,
these are called thin client forms or web
| | 01:26 | forms. Thin because at your end, at the
user's end, you just don't need all that
| | 01:30 | much computing power, you rely on
the computing power of the server.
| | 01:34 | So in this case all of these different devices
can complete a form, because
| | 01:38 | what they have in common is
all of them can run a browser.
| | 01:41 | So you'll see that the world is dominated
right now by thin forms, because the
| | 01:46 | devices that we carry are getting thinner
and thinner and thinner. We're more
| | 01:50 | able to do more in a browser, because
we're carrying lighter devices and that
| | 01:56 | requires that kind of design or that kind of architecture.
| | 02:00 | If we published our form for use in a browser,
it's going to look amazingly like
| | 02:04 | the form that we publish for use in InfoPath Filler.
| | 02:06 | Except, things that need to be done by
software will all need to be done on the
| | 02:11 | server, they won't be being done
locally on our client machine.
| | 02:16 | So welcome to the web browser
or thin client experience.
| | 02:19 | In the next movie, we'll look at our form
and use the design checker to get it
| | 02:23 | ready for publishing on a
SharePoint site as a thin client form.
| | Collapse this transcript |
| Checking a template for use in a browser| 00:01 | So I've developed my form and I want
to know whether or not it's a good
| | 00:04 | candidate for uses of thin client, a web browser form.
| | 00:08 | Why in the world would I even wonder?
| | 00:10 | It could be that originally I designed
this form aiming at it to use in the
| | 00:14 | InfoPath form Filler, but I liked what
I saw and thought well maybe we could do
| | 00:19 | this in a browser or it's possible that
this form is one of many forms that
| | 00:23 | already exist in my organization that
people are using with the InfoPath Filler
| | 00:28 | and now we've changed our standards
and have said, we really want these to be
| | 00:32 | supported by devices like tablets,
we're going to need to take this form and
| | 00:37 | make it browser-ready.
| | 00:38 | I know that I'm in the InfoPath Filler mode,
not only because I put that in my
| | 00:43 | name here for my file, but more importantly
when I click just look in the
| | 00:48 | gallery of the containers group and when
you start seeing things like horizontal
| | 00:51 | repeating table and horizontal region,
things that you don't see as much in our
| | 00:58 | web settings, then you'll know master
detail, there is a real giveaway and of
| | 01:03 | course Ink Picture, which we
know isn't supported in browsers.
| | 01:07 | So what I want to do is check this form
and we already know it'll have
| | 01:13 | problems, because I pointed to the Ink Picture,
but if I take this form that's
| | 01:18 | set up for a filler and I simply choose
File>Save As and I say, you know, I want
| | 01:25 | to switch from the Filler Template to
the Web Browser Form Template, that's all
| | 01:29 | it's going to take to kick a number
of supporting mechanisms into motion.
| | 01:33 | By the way, I originally started this form
you may recall as a web browser form
| | 01:39 | and to make it a filler form I just
chose Save as Filler Form, that's all the
| | 01:43 | harder this is, but let's save this as a
web Browser Form Template. I'm going to
| | 01:47 | actually take Filler out of its name
when I do that and maybe put browser, just
| | 01:52 | for right now and click Save.
| | 01:55 | Immediately when I make that switch,
because I'm switching from the more
| | 01:59 | capable, the thicker client InfoPath
Filler form, to a thinner type the Design
| | 02:05 | Checker pane opens. It was open and already
checking the form before I even got back here.
| | 02:10 | There are three kinds of information
that you can get here, you can get warnings
| | 02:14 | and information and errors. Even
the items that are warnings are really
| | 02:18 | informational, you'll notice the little
i in them and let's go take a look and
| | 02:22 | see what we have here.
| | 02:24 | First, we'll start with the warnings.
| | 02:26 | This says the placeholder text is not supported.
| | 02:28 | We actually knew that because we saw
this information earlier when we were
| | 02:32 | looking at this as a web form.
Placeholder text isn't going to be displayed when
| | 02:37 | somebody sees this form in a browser.
| | 02:39 | So you wonder, hmm, what is that
I should be able to do about this?
| | 02:43 | Well, we have some different options.
| | 02:46 | Really, what we're doing here is we're
saying that this title is going to be
| | 02:49 | used as a file name and we don't
want people putting commas or any other
| | 02:53 | character that would be supported by
Windows as a file name, but really can't be
| | 02:58 | supported in a file name when we're
using it and for example SharePoint, because
| | 03:04 | every character there has to be a
character that would be allowed in the URL.
| | 03:08 | So what we could do here is I could
simply press Enter and say let's add this
| | 03:12 | type of information a placeholder as
small text, italicized and say this title
| | 03:20 | will be used as part of your file name,
so please, no punctuation other than
| | 03:23 | the underscore (_). That looks great.
| | 03:25 | Did that take care of my problem?
| | 03:28 | Actually no, I can refresh this, it doesn't
take care of my problem because I
| | 03:33 | have the same problem here in my control.
| | 03:35 | So I can right-click, go to my Text Box
Properties, click on Display and get rid
| | 03:41 | of my placeholder, click OK,
refresh and that warning is gone.
| | 03:48 | Now my other choice was simply to leave it
and to know that when I published
| | 03:53 | this form, so that it would be served
up by SharePoint, that I wasn't going
| | 03:58 | to get that placeholder. That would give me a
more dual-purpose form, but this works fine.
| | 04:03 | This so is an error. The difference
between a warning and an error is
| | 04:07 | that the warning is saying there's
something here that's going to be a
| | 04:10 | little bit different.
| | 04:11 | It won't look the same in the filler and
in a browser, but here it's saying this
| | 04:16 | control is not supported.
| | 04:18 | When I click on that link, it gives me the
exact same information, but in a few more words.
| | 04:23 | What this means is I can't include an
Ink Picture control because a browser
| | 04:27 | can't render this at all.
| | 04:29 | So what are my choices?
| | 04:31 | Well, right now, because I've changed
over to my Thin Client mode, I can take a
| | 04:38 | look and see is there anything here
that would actually allow me to still
| | 04:41 | capture information from my user, not as
a picture perhaps that they're drawing,
| | 04:46 | but I could allow them to draw it, save
it and upload as a picture, either using
| | 04:52 | picture or file attachment, either of these.
| | 04:55 | Don't get excited about Picture button,
it's a regular button with a picture on it.
| | 04:59 | But this is actually to
insert a picture in the form.
| | 05:03 | So what we could do is we could
change this control to a Picture control.
| | 05:07 | I'm going to refresh here.
| | 05:09 | Notice now I have no errors or messages.
| | 05:11 | This is going to work fine. What
I'd need to do then is to provide some
| | 05:15 | information, so my user knew
what it was I wanted them to do.
| | 05:19 | So we'll go back and have our smaller font.
| | 05:24 | Think of this as our help text font
as opposed to our label font or
| | 05:28 | our descriptive font.
| | 05:30 | So here using our Calibri 8 point,
italicized tip or help text I'm going to say,
| | 05:38 | I have a lot of room to provide
instruction, so I can provide high quality
| | 05:42 | instruction, not in a placeholder, but
right here. Again now I have a form
| | 05:48 | that is going to work in a browser even
though I've lost a little bit of ability.
| | 05:55 | Now it's a two-step process for my tablet users.
| | 05:57 | It's still not a bad deal.
| | 06:00 | You can use your own judgment about
whether you want to actually get rid of the
| | 06:04 | things that cause those informational
warnings like placeholders, or whether you
| | 06:08 | simply want to provide help text or
that kind of a secondary system to
| | 06:12 | remediate the warnings to provide the
information your users need. But if you
| | 06:17 | see a circle with an X through it that
critical warning that we saw, that tells
| | 06:21 | you that you have to address that,
because that form could not be published
| | 06:25 | until you do fix that.
| | 06:27 | So we need to get rid of the error that is a critical error.
| | 06:31 | This is how you're going to use the
Design Checker to be able to determine if
| | 06:35 | a form that you created is ready to
be published as a web form, to find out
| | 06:39 | what features won't be supported if
you publish it that way, and then to
| | 06:44 | address the issues.
| | 06:45 | So now we're ready with a form that's
great to publish as a Thin Client form,
| | 06:48 | but we could still turn around
and publish this for use in the
| | 06:52 | InfoPath Form Filler.
| | 06:54 | The choice is up to you and we'll be
using both ways to publish these forms
| | 06:59 | in a couple of chapters.
| | Collapse this transcript |
|
|
10. Finishing a TemplateChecking spelling| 00:00 | Some days I think there is nothing
worse than spending time knocking yourself
| | 00:04 | out creating a great product and then
put in it out with small errors in it that
| | 00:08 | make people wonder about the entire enterprise.
| | 00:10 | Mean after all if I send something out
with spelling errors, how can they trust
| | 00:14 | anything else I put in this form?
| | 00:16 | We're at the point where we're ready
to think about publishing this form and
| | 00:19 | letting other users look at it.
| | 00:21 | Before we do its really smart to check our spelling.
| | 00:23 | Let's take a look at what our options here.
| | 00:26 | Under Spelling we have Spelling,
Spelling Options and Proofing Language.
| | 00:30 | When we simply click Spelling,
the spellcheck will start automatically.
| | 00:34 | If you're relatively new to Office,
you might not know that this is the
| | 00:39 | same dictionary that we're going to see
when we are in Word or Excel or any
| | 00:43 | place else and that the options are actually
generic options that are bundled together.
| | 00:47 | But one of the things that's being
checked here is, I have first spelled with
| | 00:51 | two capital letters at the start, and
you might wonder how does that get caught.
| | 00:56 | Well let's click the Option buttons
and see what's being checked.
| | 00:59 | Here are the options that are
being set everywhere in Office.
| | 01:02 | So if you were in Excel and you said
Ignore words that are in UPPERCASE, they'll
| | 01:07 | be ignored here as well.
| | 01:09 | If you were in Word and you said,
you know I don't want you to spellcheck
| | 01:13 | internet and file addresses anymore,
it wouldn't check them here either.
| | 01:17 | So you'll want to think about that as
you're working with different applications
| | 01:22 | that many of the spelling options are shared.
| | 01:25 | Down below, I have a couple of choices
that are only choices in InfoPath.
| | 01:29 | One is to Check spelling as you type and
that's the same choice that you have in Word.
| | 01:34 | But again if I change it here it doesn't affect Word.
| | 01:37 | If I change it Word, it doesn't affect InfoPath
and that's why I have these underlines.
| | 01:41 | I also have the ability to hide all
of my spelling and grammar errors.
| | 01:45 | If I do that of course and I check spelling
and it doesn't show them to me, only
| | 01:49 | InfoPath will really know that I've
got some spelling and grammar errors that
| | 01:53 | were placed in this form.
| | 01:54 | So I could choose simply to capture data
or to publish a form that has errors in it
| | 01:58 | and say I'm fine with you checking,
but please don't tell me about it.
| | 02:02 | You also have the ability to have other Dictionaries;
| | 02:05 | we have a RoamingCustom dictionary
that's used and an English dictionary.
| | 02:08 | But I can add other Dictionaries.
| | 02:10 | And if I create forms that are used in
multiple languages, it's a really good
| | 02:14 | idea to add other Dictionaries
that would allow me to do that.
| | 02:18 | I can also add dictionaries that are
specific to a particular industry or a
| | 02:23 | particular kind of endeavor.
| | 02:24 | And finally there is a word list that's kept;
| | 02:27 | the only two things in this one right now
are my first and last name.
| | 02:30 | But I can add other items to this Roaming dictionary.
| | 02:33 | So this is another this is another way
that we keep track of words that are used
| | 02:37 | in our organization by simply saying.
| | 02:39 | These are words that we all use;
| | 02:40 | they are spelled correctly, whether
it's your name, the name of your department
| | 02:44 | or the name of a product that you create.
| | 02:46 | Here are our Options.
| | 02:48 | Let's go ahead and click OK and say Yes,
I'd like you to change this to first.
| | 02:53 | Now it says description is spelled incorrectly.
| | 02:55 | If this was actually the name of some
software that we created Descript on, than
| | 03:00 | what we would do is we'd add it to
dictionary and would go to that custom
| | 03:03 | roaming dictionary you saw a moment ago.
| | 03:05 | But in truth, it's just typed wrong, let's
change it and correct it and let's say OK.
| | 03:10 | And now we'd like to just kick back and go cool!
| | 03:13 | No spelling errors.
| | 03:14 | This is all ready to go.
| | 03:16 | But you know that's actually not true.
| | 03:18 | The spellcheck is complete and it's
checked every single label on this form.
| | 03:23 | To be clear, it is not checking the
way my field names are spelled and it
| | 03:28 | shouldn't, because I'm using abbreviations over there.
| | 03:30 | But everything on the form, with one
set of exceptions, placeholders are not
| | 03:36 | checked by spellcheck.
| | 03:38 | I'd like to think they would be
because when a user types information in this
| | 03:42 | post title, that's going to be spell
checked if spelling is enabled, but the
| | 03:46 | placeholder itself, no.
| | 03:48 | So I need to actually look at the placeholder
myself and I have some errors in it.
| | 03:53 | Let's go back to the Properties and it
says this title will be used as parte day
| | 03:57 | of the fielname, rather than file name.
| | 04:00 | We ran spell-check, it said everything
passed but I still have to manually check
| | 04:04 | the placeholders, punctuations please.
| | 04:08 | One strategy that some people use is
they type their placeholders first in
| | 04:13 | Microsoft Word, run spellcheck on all
their placeholders and then copy and paste
| | 04:18 | them into the Display page of the
Textbox properties, so that they know all of
| | 04:23 | them have all their spelling correct.
| | 04:25 | So that's great, my spelling is good,
but what about my grammar.
| | 04:29 | There is no grammar check on this dropdown
and you'll get used to Spelling and
| | 04:33 | Grammar operating together, but they don't here.
| | 04:36 | So there is nothing to tell me that I
should not have check here if this are a
| | 04:41 | "news" story, but I should have
check here if this is a "news" story.
| | 04:46 | I'll need to catch that on my own.
| | 04:48 | You know they say about text that you
write yourself, you're not going to see
| | 04:52 | the errors and the reason is, you know
what's supposed to be there and that's
| | 04:56 | what you're looking for.
| | 04:57 | It's always a good idea to have somebody
else look at your form before you
| | 05:02 | publish it, somebody who hasn't been
embedded in the process of creating it
| | 05:06 | and tell them specifically to look for grammar
errors or grammar issues that are in the form.
| | 05:11 | If you create forms that use more
than one language, then you can set your
| | 05:16 | Proofing Language to just the same
way as you would if you were in a
| | 05:20 | Microsoft Word document.
| | 05:21 | Normally what you'll have is you'll have
localized copies of the form, so you'll
| | 05:25 | have a view that is for people who
speak English, a view for people who are
| | 05:30 | speaking Spanish, a view for
people speaking French and so on.
| | 05:33 | And you'll actually set the Proofing
Language as part of what the view is.
| | 05:38 | But right now this current view is
English (United States), that's because this
| | 05:43 | is installed as English (United States) InfoPath.
| | 05:46 | If I create another view though,
I could say that my other view is
| | 05:50 | specifically, we're scrolling to my first choice here,
there are a lot of them, Mexican Spanish.
| | 05:57 | Then when I'm doing spelling, the
spellcheck will actually use a Mexican
| | 06:02 | Spanish dictionary to check all of the text.
| | 06:05 | Again, notice that we're not marking the form;
| | 06:07 | we're marking a particular view of the form.
| | 06:10 | Even though InfoPath won't check your
grammar, the spelling tool is good and
| | 06:14 | strong because different languages
in terms of localization and it checks
| | 06:19 | everything that you've typed on the
form as a developer and it's exactly the
| | 06:23 | same spellcheck then that your users
can use as they're completing forms.
| | 06:27 | When you're all done checking grammar
and using the built in spellchecker,
| | 06:31 | you're really in good shape.
| | 06:33 | Spelling check by InfoPath, grammar
check by you and now we get ready to release
| | 06:38 | this form for others to use.
| | Collapse this transcript |
| Testing a template| 00:00 | We're approaching the end game for this particular form.
| | 00:03 | In the next few movies, we're going to
be creating views, preparing the form to
| | 00:07 | be submitted, and then publishing the form.
| | 00:10 | When we create our views, the current view,
right here in front of us, will serve
| | 00:14 | as the basis of all of our new views.
| | 00:16 | So if we've made an error in this view,
and then we copy it four times, we'll
| | 00:21 | have five errors we have to fix.
| | 00:23 | So before we move on to creating
more views in publishing, this is a great
| | 00:27 | time to test this form.
| | 00:28 | There are two approaches to form testing.
| | 00:30 | Well, perhaps there are three.
| | 00:32 | There are the people who don't test their
forms at all, they let the users find their errors.
| | 00:36 | But we're not going to do that.
| | 00:37 | If you think about real testing, there's
a more casual approach, and then one
| | 00:41 | that's fairly formal.
| | 00:42 | And I'd like to hit a testing position
that leans towards the formal but
| | 00:46 | actually begins with some casual testing.
| | 00:48 | So at this point, I'll usually have a couple
of people in my office test this form.
| | 00:53 | I'm asking them to just take it out for
a spin but drive it really, really hard.
| | 00:57 | And if they can break it, if they can make
its wheels fly off, then they get extra credit.
| | 01:02 | I'll take them out for dinner because I want
to know now if this form can be easily broken.
| | 01:06 | So the tester's job is to go into Preview
mode, and to try everything on the form.
| | 01:11 | When I say try everything, this is the
part where I'm leaning more towards the
| | 01:15 | formal, because there's actually a list
of things that they need to check, and I
| | 01:18 | want to make sure that they
know how to check them very well.
| | 01:21 | First, testers need to make sure that
every input and object control works.
| | 01:26 | They need to make sure that it has the
correct contents, and it behaves in the correct way.
| | 01:30 | So they're going to type text into
the text boxes, and make sure that if
| | 01:34 | controls are supposed to accept text
that they do, or numbers if that's what
| | 01:38 | they're set up for, or ink drawings, or
file attachments, whatever content that
| | 01:42 | control is designed to accept.
| | 01:44 | They also need to ensure in terms of
contents that the department list includes
| | 01:48 | the actual departments, and that they're
in a logical order, that every category
| | 01:52 | that should be in the categories list in our form is there.
| | 01:55 | And this is just the start.
| | 01:56 | Testers actually test every single control,
so they make sure that a checkbox
| | 02:00 | will check and uncheck, they make sure
that if you click to attach a file and
| | 02:05 | it's supposed to be a picture, that you
can actually open the Attach File dialog box;
| | 02:09 | it either allows pictures or allows all types of files.
| | 02:12 | For option buttons, they want to assure that
if one is turned on, all of the others are turned off.
| | 02:18 | That's the normal behavior.
Why would that not work?
| | 02:21 | Perhaps we didn't set them up properly.
| | 02:23 | They're going to check to ensure that
labels and placeholders are correct.
| | 02:27 | That if for example the first choice
in a dropdown says Selector Type, that,
| | 02:31 | that's not a list box, but a combo box
because you have to be able to type if
| | 02:36 | we tell the users you can.
| | 02:38 | Second then, they will test the
functionality of all the containers.
| | 02:41 | If there are optional sections, they
will make sure that they can insert them,
| | 02:45 | and that they can remove them,
and they can enter information.
| | 02:47 | If there's repeating tables, then they
will make sure that if you tab to the end
| | 02:52 | of a row, you get a new row, and they
will use the buttons to be able to move
| | 02:56 | items up and down, or to be able to
remove or insert rows and repeating tables.
| | 03:00 | They don't just test input controls,
they test all the container controls to
| | 03:04 | make sure that they work as well.
| | 03:05 | Third, our testers are going to check
all the rules. And I'm going to give my
| | 03:09 | testers a list of rules and
conditions that they need to check.
| | 03:12 | But remember for example that we have
a rule that says that if you're going to
| | 03:16 | enter an email address, it has
to be a valid email address.
| | 03:20 | Question is, what happens
when they break that rule?
| | 03:23 | If a tester enters something that's not
in email address, then it should provide
| | 03:27 | them with a message box, or some
information or whatever we've set up.
| | 03:31 | And elsewhere in a form if a checkbox
is checked or an option is selected, and
| | 03:35 | only then should another control be enabled,
we want to make sure that those
| | 03:39 | formatting rules we created work as well.
| | 03:41 | You can create a rules list for your tester.
| | 03:44 | Let me show you how.
| | 03:45 | If I click Manage Rules here, I'm actually
managing the rules for the selected control.
| | 03:51 | I want us instead to go over here to
the Data Tab, and this is a feature that
| | 03:56 | we're seeing for the first time called the Rule Inspector.
| | 03:58 | And the Rule Inspector provides a summary
of all of the rules that are in this form.
| | 04:02 | So we can tell for example that on the
NewsExpiry field, the condition is that
| | 04:08 | it has to be within this range and not blank.
| | 04:12 | And if not, it should say 'Enter a date in the future'.
| | 04:15 | On the email address, we have a
rule called 'Is Not a Valid Email'.
| | 04:19 | You begin to see why it's important that
we add really good descriptions when we
| | 04:23 | create our rules, because other
people are going to read them later.
| | 04:27 | And if they don't enter a valid email
address, if it doesn't have an at (@) in
| | 04:30 | it and a dot (.), then they're going to
be asked to enter a valid email address.
| | 04:35 | Finally, we have some calculated values in our form.
| | 04:37 | Today should equal today(). Check it out.
| | 04:39 | I can print this list and hand it to
my testers, because this Rule Inspector
| | 04:44 | provides a summary that's of exquisite
use when we're doing our testing.
| | 04:49 | We might have some other advanced
features that we also need to test.
| | 04:53 | Later in this course, we'll talk about digital signatures.
| | 04:56 | And if we've enabled them, then we want
our testers to ensure that users will be
| | 05:00 | able to use digital signatures in the form
as we've suggested that they can.
| | 05:04 | They need to test that signatures can
be applied and removed and the users can
| | 05:07 | make changes after they remove signatures.
| | 05:09 | And if all of this works, then our testers
need to make sure finally that our
| | 05:13 | users can actually save and submit this form.
| | 05:17 | It's really frustrating for a user to
spend a lot of time filling out a form and
| | 05:21 | then not be able to submit it and to not be able to save it.
| | 05:24 | Probably something that's happened to
all of us on a website where we've tried
| | 05:27 | to fill-in a form, we can't, we back
up and we lose all of our information.
| | 05:32 | We know how unhappy that makes us.
| | 05:34 | We don't want to make our
users have that same experience.
| | 05:37 | And then finally, if all of this works,
when and if we have other views, which
| | 05:41 | we're going to talk about in the next chapter,
| | 05:43 | the testers need to check every single view.
| | 05:45 | One common reason for form failure is
that there's a field that's required, and
| | 05:50 | it's in some views but not every place we need it to be.
| | 05:53 | So we're going to have a couple of
folks start testing our form, we'll give
| | 05:57 | them information on what to
test out of the Rule Inspector.
| | 06:00 | Feel free to walk them through the
process or even have them watch this
| | 06:03 | movie, so they know what you expect of
them while they're testing your form,
| | 06:07 | and then give them a log;
| | 06:08 | either a worksheet you've created
in Microsoft Excel, or you could even
| | 06:12 | create an InfoPath Form so they can
type what it was they were trying to do,
| | 06:15 | what control they were in, and what problem
or issue had raised somewhere in your form.
| | 06:20 | After you've tested your form with
colleagues or friends and made whatever
| | 06:23 | changes are required after that testing,
then the real testing begins when you
| | 06:28 | have people who aren't necessarily your
friends, but who also have an interest
| | 06:31 | in the form performing well, using the
form without your assistance, without any
| | 06:36 | guidance, and without a test plan.
| | 06:38 | Users who are unfamiliar with your form
will stretch its boundaries by trying to
| | 06:42 | enter information that they think you're
asking for rather than what you've told
| | 06:46 | them they should enter.
| | 06:47 | And in that way, you'll discover more
issues with the form that you and your
| | 06:51 | friends were not as likely to find.
| | Collapse this transcript |
|
|
11. Creating ViewsCreating a view| 00:00 | In this chapter we'll be talking about
how we create views and make them
| | 00:04 | accessible for our users.
| | 00:06 | I've added one more section to our form,
so if you've been following along from
| | 00:10 | the last movie, let me show you what
we have here; a new section at the bottom
| | 00:14 | with the group of fields and their
controls to allow the folks in the office who
| | 00:19 | actually do this work, to be able to
keep track of what it is that they've done.
| | 00:24 | This is a section that in many forms
would be shaded in gray and say, for Office
| | 00:28 | Use Only. We chose yellow, but it
still says for the Office of Electronic
| | 00:31 | Communications Only.
| | 00:32 | On a paper form this needs to be there,
or in some organizations what they do
| | 00:37 | is have a separate form that they'll
staple or attach to this, so that we
| | 00:40 | don't bother users with this information
that they don't need to know anything
| | 00:44 | about. But in InfoPath we can ensure
that our original user doesn't even see
| | 00:48 | this section of the form, so they won't
be tempted to type in it, and we'll do
| | 00:52 | that by using Views.
| | 00:53 | A View is simply one way to look at
my dataset over here, to look at the
| | 00:57 | controls and the other containers so that a
user can enter or edit print or view the data.
| | 01:03 | When I want to have different ways to
View the data I'm going to still store all
| | 01:07 | of those views in the same template.
| | 01:09 | I won't have five different templates here,
just one that contains all of
| | 01:13 | these different views.
| | 01:14 | Let's go to the PAGE DESIGN tab because
that's where we work with Views here in InfoPath.
| | 01:20 | When I created this form, automatically
InfoPath created a view called View 1
| | 01:25 | and made it the default view.
| | 01:27 | And I've been putting all of my controls
and rules and other form stuff into
| | 01:31 | this view, so really is the form,
it's everything that we have.
| | 01:35 | I'm going to change the name of this view
as a way to start working with it. I'm
| | 01:39 | going to click its Properties, and I'll
sometimes name this something like All
| | 01:44 | Fields, but really this is the developer's view,
this is my view of this form.
| | 01:53 | And while some people would go to a view
that said All Fields, most of them know
| | 01:56 | to stay away from something
that's called the developers.
| | 01:59 | I'm always getting keep one version,
one developer's view or all sections or all
| | 02:04 | fields view for every single form that
I create, a comprehensive look at the
| | 02:08 | entire form, because when I start to
create other views of this form then each
| | 02:13 | of those views will be a variation
of this Developers View.
| | 02:17 | So I'm going to take this view, save
it for myself, and then I'll copy it and
| | 02:22 | deconstruct it to create custom views for my user.
| | 02:26 | One more thing, right now this is set
as the default view still, it's the only
| | 02:30 | view there is it has to be the default,
there isn't any choice.
| | 02:33 | So I'm going to click OK, notice this is
now called Developers, it's the default
| | 02:37 | view and there aren't any others here.
| | 02:40 | I want to create first, the view that
my users are going to see, that does not
| | 02:44 | include this for OEC Use section,
down here at the bottom.
| | 02:47 | And there's a real cadence to how we're
going to do this, we're going to start
| | 02:52 | by clicking somewhere in the form,
and holding Ctrl and hitting the letter A,
| | 02:55 | which selects the entire form.
| | 02:57 | I'm going to hold Ctrl and hit the
letter C to copy, two good Windows
| | 03:01 | shortcuts right back to back.
| | 03:03 | Now let's create a new view.
| | 03:06 | It asks me for the view name.
| | 03:08 | Well, this is going to be the default view
for users for right now.
| | 03:11 | I could call it default view, I could
call it User Data Entry that's probably
| | 03:16 | clearer, and notice that I am
allowed to use spaces in my name.
| | 03:20 | So we're going to call this User Data Entry.
| | 03:22 | We could also call it New Web Post Request,
whatever we think is going to work,
| | 03:27 | that our users will understand
and I'm going to click OK.
| | 03:30 | As always in the new view, I get a
layout table and I don't want it, there
| | 03:34 | it goes, but I do want to paste all of
that information that's sitting on my
| | 03:39 | clipboard, hold Ctrl, hit the letter V, here
is an exact duplicate view of my original view.
| | 03:46 | So look at here is User Data Entry,
here's the Developers View, they look the
| | 03:50 | same, they'd better.
| | 03:51 | But my User Data Entry has sections
that I don't need, right here down on the
| | 03:55 | bottom, I don't need this.
| | 03:57 | So I'm going to select this, hit Delete and it's gone.
| | 04:00 | So now the Developers View has everything,
but the User Data Entry View, does not.
| | 04:08 | Now I want to create a view for the
folks who are going to complete the request.
| | 04:12 | So let's do this again.
| | 04:14 | Don't start with this view, go back to
your Developers View each and every time.
| | 04:18 | This is your one source of truth.
| | 04:20 | I have colleagues who say that, this Developers View
is the Bible for this particular form.
| | 04:25 | It's everything that should be in it, could be in it,
all the rules and everything well tested.
| | 04:30 | Ctrl+A to select, Ctrl+C to copy and I'm
going to create a view for the folks in
| | 04:37 | the Office of Electronic Communications.
| | 04:39 | So I could say OEC Only or OEC,
but I'm going to say OK.
| | 04:43 | As always there's our table, I don't need it and let's paste.
| | 04:47 | So now the question is are there things
that we don't need here?
| | 04:50 | Well as soon as they give me a description,
I would take this out, but actually
| | 04:54 | I can get rid of this right now.
| | 04:56 | This table is just a one row table,
and so I could just right-click and say
| | 05:00 | I want to delete this row and that
actually deletes the whole table and I can
| | 05:05 | move this up, and even if there had been
instructions in there, they don't need the instructions.
| | 05:09 | They do need to know where this comes from,
so here's my user's information.
| | 05:13 | I'm just tightening up the form as I go down.
| | 05:17 | It looks like most of the rest of this
is information they need, and they need
| | 05:21 | the for OEC Use Only, that looks good.
| | 05:25 | There's my Developers View, it's got everything in it.
| | 05:29 | Here's my User Data View, that has
the instructions at the top, but doesn't
| | 05:33 | have the Office Use Information and
here is my OEC View that has the OEC
| | 05:40 | section down at the bottom.
| | 05:44 | Now there's one other View that I would
like to provide, we have a really big
| | 05:48 | form here with everything in it, but we
have folks who simply loved the old form
| | 05:52 | where they could jump in, fill in some
basic information about themselves, drop
| | 05:56 | in information on a post, not categorize it,
not ask for new areas, not even
| | 06:02 | talk about anything, except here's
my post, it might be a news story.
| | 06:05 | That's all they want to do.
They want an express form.
| | 06:08 | And I don't need to create a separate form,
all I need to do is create a separate view.
| | 06:13 | We're used to how this works, so let's
go back to our Developers View, select it
| | 06:17 | all and copy it, New view and we'll just
call this the Express Entry and say OK.
| | 06:24 | It has a layout table, we don't need it,
paste from the clipboard, I really
| | 06:30 | didn't have to copy again, it
was on the clipboard already.
| | 06:33 | And so what do we need here?
This is our Express View.
| | 06:35 | We'll still need to have this information at the top.
| | 06:38 | Here's something we want to check;
before I delete this make sure that none of
| | 06:41 | these fields are required here,
because if they are required and I get rid of
| | 06:46 | the section, there is no way
for my user to enter information.
| | 06:49 | Not likely with an optional section.
If it's optional, I shouldn't have a required field in it.
| | 06:54 | Nonetheless, it's a good habit to take
a look at everything you're deleting to
| | 06:58 | make sure that you're not creating a
form than that can't actually be used.
| | 07:02 | So here's the post that we want somebody
to be able to be able to enter, they
| | 07:06 | don't care about the category.
| | 07:07 | I'm going to go over here and check this out,
nothing required, that's all good.
| | 07:11 | So we can actually pull this table as well.
| | 07:14 | They do want to indicate if it's a news story
and they want to be able to attach a file.
| | 07:20 | They don't need this section.
| | 07:21 | So there is my shorter basic form that sort of
lets me slide through here and do not too much.
| | 07:29 | Now it might also be that the old form
didn't have these fields on it and
| | 07:32 | they're not required either.
I don't have to delete whole sections.
| | 07:36 | I can actually just delete some fields
that we don't need, much shorter.
| | 07:39 | We have our user information, basics
about the post, if it's a news story or not,
| | 07:44 | and then a file attachment, because most
of the time we're going to be pointing to something.
| | 07:49 | That looks good and this one's done as well.
| | 07:51 | Now when I save this, it's going to save
of these all of these different views
| | 07:55 | right here within this one form.
| | 07:57 | This is my Express Request, the Preview on,
it's going to look really good, much
| | 08:02 | like the short little form we started out with.
| | 08:05 | It almost all fits on one screen.
| | 08:06 | I'd worked hard to try to get it,
so it didn't require scrolling.
| | 08:10 | Nice and short, but if my user wants
to do something more complex, they can
| | 08:14 | simply access the detailed user entry form
with all of those additional fields that we'll talk about.
| | 08:21 | In the next movie, let's see how to create
a print view that will work for these
| | 08:25 | different views of our form.
| | Collapse this transcript |
| Creating a print view| 00:00 | In addition to the views that we've
created for express request and office use
| | 00:04 | in user entry, we might want to
create a print view for our form.
| | 00:07 | I want to begin with a very significant caveat.
| | 00:11 | If you know you want to create a form
that's going to print on two pages, it's
| | 00:16 | really incredibly helpful to begin
by laying out two pages for your form.
| | 00:21 | For example I'm in an empty form here
and I have a Page Design, Title and Heading.
| | 00:28 | I'm going to press Enter and I am going
to insert another Page Design, right here.
| | 00:33 | Now let's go take a look if we could
at the INSERT tab and you'll find here an
| | 00:39 | option called Page Break.
| | 00:41 | Now notice that if I am within the Page Layout
anyplace in here, I can't place a Page Break.
| | 00:46 | I can put a Page Break here between the
Page Layout or here at the end of a Page Layout.
| | 00:53 | Within a Page Layout, there is no
opportunity to place a Page Break.
| | 00:58 | So if we create a form, it's very
helpful to have a different Page Layout for
| | 01:03 | each and every page in our form.
| | 01:06 | If I don't want this title here on the
second page, I just get rid of this row.
| | 01:10 | So let's return now to our form and
take a look at the challenges that we have
| | 01:14 | in most of our forms when we're trying
to decide do we want to print form, or do
| | 01:17 | we want an on-screen form.
| | 01:19 | In the same way that I can't put a Page
Break anywhere but between pages,
| | 01:25 | I can't span pages with a section.
| | 01:27 | So my form has this incredibly long Post section here.
| | 01:31 | It's pretty short in this version,
this is the express view, but when I
| | 01:36 | switch over to one of our other views,
for example the Developers View, you
| | 01:41 | begin to see exactly how long this
section is, it's spans from here all the
| | 01:45 | way to the bottom of the form.
| | 01:47 | Because of that if I wanted to be
able to have this form print in separate
| | 01:52 | pages, what I'd need to do
almost is print it in three pages.
| | 01:56 | At the top I'd have this very small section,
then the next thing I'd have
| | 02:00 | would be this Post Section, and
finally at the end the Office Use section,
| | 02:04 | three different places.
| | 02:05 | So remember that sections can't span pages.
On the other hand, Page Breaks
| | 02:11 | can only take place between page layouts.
| | 02:14 | Fortunately this is often going to be
experienced as a form that will be used on
| | 02:19 | a website, and I think almost everybody
who's tried to print from the web, or
| | 02:23 | who prints pages from Google or
anywhere else, realizes the pages just print,
| | 02:28 | then they stop, then they continue,
and they get used to that.
| | 02:32 | So let's see how we will create a
print view for this particular form.
| | 02:37 | By creating my own best print view,
I can ameliorate the conflict between
| | 02:42 | sections and page layouts and page breaks;
it simply lives as part of this tool.
| | 02:48 | So I want to create a print view for
my User Data Entry, that's this form right
| | 02:54 | here, and this view of it.
| | 02:56 | Because this is the one I want to print from,
I'm going to copy it, and then
| | 03:03 | we're going to create a New view, and
I'm going to say this is User Entry Print
| | 03:10 | View, or simply Print, I want to say OK.
| | 03:15 | Once again there's my table and I'm simply
going to paste what I'd like to have here.
| | 03:20 | How does a print view differ from a regular view?
| | 03:23 | Well, if I'm going to print this for example
on a black-and-white printer, I
| | 03:27 | might want to get rid of a lot of the shading here.
| | 03:29 | It's nice and it's visual when it's on
the screen, but this shading isn't all
| | 03:33 | that helpful when I'm printing this.
| | 03:35 | So I have the ability to go in and
to remove things like Shading, go to my
| | 03:40 | Tables and say I want No Fill here.
| | 03:44 | The form has already filled out.
| | 03:45 | I probably don't need to have the instructions anymore.
| | 03:50 | And I can tighten up everything else.
| | 03:52 | So if this is what my user is walking
away with, the odds are pretty good, they
| | 03:56 | don't need their own department and
phone number for example, they need to know
| | 03:59 | what they submitted, and when they submitted it.
| | 04:02 | Again back to some Shading that we
could remove, you can tighten up anything in
| | 04:06 | the form that you feel you want to
tighten up and this area down at the bottom,
| | 04:11 | Click here to attach a file that would
show the file name, we could perhaps keep
| | 04:15 | that and not need the rest of this.
| | 04:16 | So you make choices about what the attributes
are that you'd like to be able to include here.
| | 04:22 | But what you're trying to do is you try to
create a form that will look good on a printer.
| | 04:27 | We also have the ability on any Print View
to add a header and footer.
| | 04:33 | Here are my Print Settings.
| | 04:34 | So when I'm using this particular view
that I am in, we're going to use the
| | 04:39 | User Entry Print View, and I can say
I'd like a Header, I can insert AutoText a
| | 04:45 | particular field, a Short Date, a Long Date,
the current Page Number.
| | 04:49 | So this is how you could do page
of for example X of Y, Total Pages.
| | 04:55 | You have the ability within this form to
say that you'd like to put a Footer in,
| | 05:02 | in the same way that you'd placed a
header and that's simply for our Print View.
| | 05:06 | Now you know normally when this prints,
you want to print one copy collated,
| | 05:09 | these are default Print settings.
| | 05:11 | All the pages or specific pages, and
then finally I'm allowed to define what
| | 05:16 | are called Multiple Views on form, and
what the Multiple Views allows me to do
| | 05:21 | is to set up sort of an omnibus print view
that's says, okay the users just
| | 05:25 | printing from this view.
| | 05:27 | But I don't want them to walk
away with just one printed view.
| | 05:31 | They filled out a form and it has four sections
there seing one, every time
| | 05:35 | they print I actually want them to print
several different sections of the form together.
| | 05:40 | So if you create a complex form that
has multiple sections and you always want
| | 05:45 | the user to print them all, you have
the ability to print them all running together,
| | 05:49 | to put a Horizontal line between each of them,
or to put a Page Break,
| | 05:55 | so each would print on its own page.
| | 05:57 | So imagine that we wanted our user to
be able to print whenever they printed
| | 06:01 | from this view these two, but I'd like
them to print this one sect, there is
| | 06:06 | what I'd like to have printed and I
would like to have them each print on their
| | 06:10 | own page, and these are the default
settings for printing the entire form.
| | 06:14 | So again a real high-end thing for large forms
that have multiple views but you
| | 06:18 | want to dictate how they're printed.
| | 06:19 | Now the user can always choose a
different view to print, they can always choose
| | 06:24 | a different number of copies.
| | 06:25 | But you have the ability to determine
some of the information about how this
| | 06:31 | particular form is going to print by default.
| | 06:34 | So I am going to say OK, we're going
to go back HOME, after we're here in our
| | 06:39 | Preview, we're going to go to FILE,
we're going to choose Print, and we're going
| | 06:43 | to do a Print Preview. Here's our Header.
| | 06:47 | Notice that even though we were
seeing yellow on the screen, we're seeing
| | 06:51 | black-and-white here and this is the
Print View that we just created for our
| | 06:55 | users to use here in InfoPath.
| | 06:58 | In the next movie, we'll see how to
make the print views even more accessible.
| | Collapse this transcript |
| Setting view properties| 00:00 | Each of our views has a set of properties
that won't surprise you at this point,
| | 00:04 | everything in InfoPath as properties.
| | 00:07 | And these properties are used to
determine when the view will be available
| | 00:11 | whether or not it's the default view
and what view is used to print, if a user
| | 00:16 | prints from this particular view.
| | 00:18 | We're looking at the Express View right now.
| | 00:21 | Here's our Express Entry and I'm simply
going to click Properties in the Views
| | 00:26 | group on the Page Design tab.
| | 00:28 | On the General tab, we see the view name
and this is where we would edit this.
| | 00:33 | If I want to set this as the default view,
which I do, I would simply click that checkbox.
| | 00:38 | The question is if someone goes to
this View menu here, do they see this
| | 00:43 | particular view on it? Yes.
| | 00:45 | Is this view only available with InfoPath Filler?
Not, it's available all the time.
| | 00:50 | And is it a read-only view?
| | 00:51 | We can actually create a view that all
a user can do is see information in and
| | 00:56 | there is a utility for that because I
might have information in InfoPath that I
| | 01:01 | want some people to edit and some other
people only to view, so that's what this
| | 01:05 | Read-only view is for.
| | 01:07 | I have the ability to provide a background
color that will sit behind this entire view.
| | 01:13 | I can place a picture behind it.
| | 01:15 | So these are our really page view properties
if you think about it.
| | 01:20 | I can have a custom layout width.
| | 01:22 | I can provide scrollbars when they're
necessary across the bottom if I create a
| | 01:26 | view that's incredibly wide.
| | 01:27 | I'm going to try to avoid that whenever I can.
| | 01:30 | Text Settings, we actually saw earlier,
because this determines how different
| | 01:36 | controls are formatted in this particular view.
| | 01:40 | Here are our Print Settings.
| | 01:42 | This Express Entry view was created
as a screen view, but there's a
| | 01:46 | corresponding print view we'd
actually like to use and it's that view.
| | 01:51 | So I can specify whatever print view
I'd like to match with my screen view.
| | 01:57 | I can talk about how I'd like this to
be printed, I can add a header and a
| | 02:00 | footer here. These are all of the same
properties that I have when I create a print view.
| | 02:06 | Let's go ahead and say OK.
| | 02:09 | If I go now back to Home and I
click on Preview and I simply go to
| | 02:14 | File>Print>Print Preview, notice that
it uses that print view that we just said
| | 02:20 | should be matched up with this particular view.
| | 02:23 | So return to Page Design and now I'd
like to switch to my Developers view.
| | 02:29 | This is my view and I really don't want users using it.
| | 02:34 | So the easiest way to do that is simply
to say, don't put it on the View menu.
| | 02:38 | I don't want users to be able to find it.
| | 02:41 | So if I click OK and we go back to Preview,
our user doesn't have a choice to
| | 02:48 | choose the Developers view here anymore.
| | 02:51 | Then finally, let's go back to our
Page Design Properties and we have our
| | 02:55 | Express Entry as the default.
| | 02:57 | We have a Developers view and you might
wonder well, why can't they just come here?
| | 03:01 | Well, we're in InfoPath Designer.
They're going to be in InfoPath filler.
| | 03:05 | So when they're in InfoPath Filler,
they don't have a Page Design tab.
| | 03:09 | So here in Page Design, where you and I
make these choices, that's not available
| | 03:13 | to our everyday user.
| | 03:15 | If I don't want users to be able to switch
to print views, I can do the same thing.
| | 03:19 | I can say for example, I don't want a
user looking at this print view and trying
| | 03:23 | to enter data using it.
| | 03:25 | Let's go into our specific print views
like User Entry Print and let's say that
| | 03:30 | this isn't on the View menu either.
| | 03:32 | So now, when we go back to Home and we
choose Preview and my user clicks the
| | 03:37 | Current View, they have User Data Entry,
OEC and Express Entry.
| | 03:41 | Now if I wish, I can take OEC off the
list as well and give them a different
| | 03:45 | way to work with this, but there's an
advanced feature that allows us to assign
| | 03:49 | roles and it would be easier for me to
make this available to them on a role-basis.
| | 03:54 | But right now, I have a view that has
User Data Entry, has OEC use and finally
| | 04:00 | allows for Express Entry, that's the default view
every time somebody comes into this form.
| | 04:05 | This is how we use views and print views
to create a dynamic user experience with InfoPath 2013.
| | Collapse this transcript |
| Using buttons to switch views| 00:00 | So we have a long form with a lot of
detail in it, but the default form that
| | 00:04 | users are going to see is this Express
Entry. I'd like to make it really easy
| | 00:08 | for the user to be able to switch from
here to the more detailed entry form.
| | 00:14 | Remember that my users are going
to have access to different views.
| | 00:18 | When we go to Preview there is a view
list here on the Ribbon and I'll have
| | 00:24 | something similar to this on a toolbar
above and/or below the form if I publish
| | 00:30 | this as a web form or as a thin client form.
| | 00:33 | But I want to put a button right here
and if I do that over and over again, I'm
| | 00:37 | going to create a really nice
standardized user experience.
| | 00:40 | They'll know that if there are other
views, they can access them here with
| | 00:43 | one or more buttons.
| | 00:44 | So let me begin because I'm in a
small table here by choosing Draw Table and
| | 00:50 | I'm going to simply draw right here a
space for my button to live in because if
| | 00:55 | I drop it up here, it'll try to snuggle up against text.
| | 00:58 | Remember that we want to use tables for
layout whenever we can, because it makes
| | 01:03 | our life easier. I'm going to create a new button.
| | 01:06 | Notice it threw it over there because I was over there.
| | 01:09 | So let's come back here and do this again.
| | 01:12 | Now if the buttons scoot it over here
and its part way off the form, don't let
| | 01:16 | that bother you until we actually know
how big we want it to be.
| | 01:20 | I'm going to right-click, choose
button Properties and I'm going to say More
| | 01:23 | Details... that's how that works
and I'm going to say OK.
| | 01:29 | Now I could decide, Oh!
| | 01:31 | Look at it, I could make this a little
bit smaller, it doesn't have to be that big.
| | 01:35 | So especially if I want multiple here, that looks good.
| | 01:39 | I am going to and throw that to the right
if I want to tighten this up.
| | 01:44 | That way I know exactly how
much more room I have over here.
| | 01:47 | Now I can say okay. We'll center that up
here in the cell between these borders.
| | 01:51 | So what I need to do now is say, what
happens when a user clicks on the button?
| | 01:55 | Because when I Preview this, just
creating the button didn't do anything.
| | 01:58 | It's really a non-riveting user experience right now.
| | 02:00 | What I need to do is assign an action to
this particular button so that when the
| | 02:05 | user clicks it we actually have something happening.
| | 02:07 | So let's select the button.
| | 02:08 | Let's click Add Rule.
| | 02:10 | When this button is clicked, Switch Views.
How easy is this?
| | 02:15 | What's the new view? Not Developers, that's my view.
| | 02:17 | I actually want them on User Data Entry.
| | 02:21 | Express Entry is the one we're in now,
User Data Entry, OK.
| | 02:24 | Here is my rule, it says Condition.
| | 02:27 | There is no condition. The condition
actually is user clicked the button, Run
| | 02:32 | these actions, Switch to view.
| | 02:33 | Let's go ahead and preview it first.
| | 02:35 | Here we are. I know I'm in the shorter form.
I click More Details;
| | 02:39 | I go to longer view. Cool!
| | 02:41 | Now clearly, I could create a button
and in this one this is fewer details or
| | 02:45 | less details, it's the same thing.
| | 02:48 | But now that I know my Rule runs, I
can say that this is a Rule that shows or
| | 02:54 | switch, it's actually a Switch. Switch
to User Entry View. If I want to I can
| | 03:03 | proceed this with something like btn for button,
or I could say Switch to User
| | 03:09 | Entry View on button Click.
| | 03:10 | You saw the area and the rules inspector.
| | 03:14 | There is lots of room for a long rule name.
| | 03:16 | It's just that I won't see a long rule name here.
| | 03:19 | But it's nice to be able to know what
kind of a rule it is when I am testing
| | 03:24 | these rules later on.
| | 03:25 | Now as I said, I also have the ability
to do this exact same thing with a
| | 03:29 | Picture button. If I do that,
then I'll want to choose a picture that
| | 03:33 | makes some good sense.
| | 03:34 | I also have the ability here to modify
this button some with borders and shading.
| | 03:38 | Right now it's a basic gray button
with particular corners, but I have the
| | 03:42 | ability to change its color.
| | 03:43 | It's possible that if I had different views
with different color backgrounds
| | 03:48 | that I might want to have buttons
with those same backgrounds to provide
| | 03:52 | visual cues to user.
| | 03:54 | Lots of different things we could do
with that, but this is the easy way to be
| | 03:58 | able to place a button and use it to switch
from the current view to a new view in InfoPath.
| | Collapse this transcript |
|
|
12. Publishing OptionsUnderstanding submit options| 00:00 | If we were developing this form in an
organization instead of using it as a
| | 00:04 | learning tool, we would be just moments
away from getting this form published so
| | 00:09 | that folks could use it.
| | 00:11 | Our testers could go in and check it out,
the people we've been working with to
| | 00:14 | create it for could take a look at it, but
we have a few more steps that we need to do.
| | 00:20 | And they're important steps,
although they won't take long.
| | 00:22 | We need to understand how the
security for this form is going to work.
| | 00:27 | We need to set options that determine
where the contents of this form will go
| | 00:32 | when the user submits the form data.
| | 00:35 | And then we need to understand how
we can publish this form so that it's
| | 00:40 | available for our users to open and fill out.
| | 00:42 | Submit options, security options
and then finally publishing options.
| | 00:46 | So there are two broad ways I can submit a form.
| | 00:50 | I can submit the form so that when the
users says I've got all my data in here,
| | 00:55 | click Submit, it goes to one and only one location.
| | 00:58 | The other possibility is that when
the user clicks Submit that data goes to
| | 01:03 | two or more locations.
| | 01:05 | If I submit to one location,
I have all of these choices:
| | 01:10 | I can submit my data to a SharePoint library.
| | 01:13 | I can submit it to a database using a web service;
| | 01:16 | I can submit it by sending an email
to someone with the data in it.
| | 01:20 | I can submit it to SharePoint using a data connection.
| | 01:24 | I can submit it to a SharePoint list,
the easiest way to do that is actually to
| | 01:29 | choose SharePoint list when we begin
or to start in SharePoint.
| | 01:33 | All of those submit options are one location only.
| | 01:37 | If I want for whatever reason to submit
to two or more of these types of
| | 01:42 | locations by email and using a web service,
then I need to create some rules
| | 01:49 | in order to submit the form and I will
write a different action rule for each
| | 01:54 | submit action; a rule for submitting by email,
a rule for submitting to a SharePoint library.
| | 02:01 | Now before you get into the business
of send, well I'd really like to email
| | 02:04 | someone as a result of the form
being submitted but I want to save it in
| | 02:08 | SharePoint, don't immediately assume
that that requires to submit, because you
| | 02:13 | can also put workflows on your SharePoint
lists and libraries so that when
| | 02:18 | someone like you is saving the contents
of a form to a library, immediately that
| | 02:24 | form can generate an email to someone saying, hey!
| | 02:28 | Your form got submitted or here's your new form.
| | 02:32 | Most of the forms you will create and publish
will be submitted to only one location.
| | 02:36 | So let's go over to InfoPath and
see where we create those settings.
| | 02:41 | In the Data section we can submit to Email,
to a SharePoint Library, to a web
| | 02:46 | Service, to a SharePoint Server Connection
or we can click Submit Options and we
| | 02:52 | can choose any of these items from the list.
| | 02:54 | Notice that SharePoint list is not here.
That's a specific template, we'll talk about that later.
| | 03:00 | If I want to send it to anything other
than a single destination, then I need
| | 03:05 | to perform a custom action using rules and
I'll need to create the rules to do this with.
| | 03:10 | So this is the area where we will set
all of the rules either that we write or
| | 03:16 | that InfoPath generates for us that
determine how the content from this form is
| | 03:21 | going to be submitted.
| | 03:22 | As well as submit options though, we
need to care about our publishing options
| | 03:27 | and to understand the publishing options
available to us, we need to
| | 03:30 | understand how security works.
| | Collapse this transcript |
| Understanding security and publishing| 00:00 | The security level or trust level
for a form determines whether that form
| | 00:05 | can access information on a user's
computer or information outside of the
| | 00:10 | form itself, like external data.
There are three specific security levels
| | 00:15 | for InfoPath forms.
| | 00:16 | The first is called Restricted and every
form we create begins as a restricted form.
| | 00:23 | It can't access any external data, all it does is
open, allow a user to enter data and to save it.
| | 00:30 | But as soon as you or I begin adding
external data sources to a form,
| | 00:35 | automatically InfoPath Designer will kick
up the forms trust level to domain trust.
| | 00:42 | That means that this form has the ability
to access external data but only
| | 00:47 | in the same domain.
| | 00:49 | The easiest way to think about this is
if we publish our form on a SharePoint
| | 00:53 | site, then we could also use lists
and libraries in that same site as
| | 00:59 | dropdowns for this form.
| | 01:01 | They're in the same domain,
the same .com, .gov, .edu.
| | 01:06 | The third possibility is called Full Trust.
| | 01:09 | With Full Trust, a form can actually
access data in other trusted domains and
| | 01:15 | can access files and settings on the user's computer.
| | 01:18 | Wow, this is exactly the kind of form
that somebody would want to create if they
| | 01:23 | were going to do something nasty to
other users or to other domains. Because
| | 01:29 | of this, Full Trust is a way that you
just can't publish this on your own.
| | 01:34 | If you want to publish a full trust form,
it requires more than what we've seen so far.
| | 01:40 | If the form is a full trust form
that's going to be filled out using InfoPath
| | 01:45 | Filler, it has to be digitally signed.
| | 01:47 | We'll talk about that towards the end of this course.
| | 01:50 | And if it's a web browser form then
the administrator for the SharePoint form
| | 01:55 | actually has to publish that form for you,
that has to be installed.
| | 01:59 | So if a form has superpowers, full
trust powers, then it has to have a
| | 02:06 | higher level of oversight.
| | 02:08 | So InfoPath Designers automatically
selecting the level required by the form
| | 02:12 | based on the controls that we're using.
But you can set a higher level if you
| | 02:17 | need to and there's one other piece of this.
| | 02:20 | InfoPath uses exactly the same security
zone settings that internet Explorer uses.
| | 02:27 | So when we publish a form, it needs
to be published to a location that's
| | 02:31 | a trusted location for your user, like your
intranet for example in your organization.
| | 02:37 | When you're first setting up accounts
and doing testing with InfoPath, if you
| | 02:41 | don't have a great command of how the
Internet Explorer security settings work,
| | 02:45 | have a conversation with folks
in your IT department about this.
| | 02:49 | Let's take a look at where we will
set the security level for our form
| | 02:53 | in InfoPath Designer.
| | 02:56 | Here we are back in our form.
| | 02:57 | Let's go to File>Form Options and
here in Security and Trust, you see the
| | 03:03 | security level for this form;
automatically determines security level as the
| | 03:07 | default, but because we've included
some dropdowns and some external data those
| | 03:11 | kinds of things here, we actually have
a domain level form already.
| | 03:16 | Now if it was restricted and we needed domain,
we would come in here and turn this on.
| | 03:21 | I'm going to leave it as it is.
I mentioned that if we want to make a form full
| | 03:26 | trust then we need to sign a template,
I'll show you later in the course how to
| | 03:30 | do that, but this is where you'd
would sign the form template right here.
| | 03:35 | Finally, we need to publish this form
someplace that our users can access.
| | 03:40 | My first choice is to publish this as an email message.
| | 03:44 | It's almost like doing a Word mail merge.
| | 03:47 | The downside of email message as my
publishing method is that I can only use a
| | 03:53 | form with a restricted security level.
| | 03:56 | I'm not allowed to have any dropdowns
or some specific types of controls that
| | 04:01 | allow users to embed files.
| | 04:03 | So this is for light-duty forms that I simply
want to send and not really have published.
| | 04:10 | There are other reasons not to do email
message publishing that will talk about
| | 04:14 | later in this chapter.
| | 04:16 | The second possibility is a network share.
I then can have a restricted form,
| | 04:21 | a domain form or even a full trust form if it's signed.
| | 04:25 | So one way to get around the email issue
is to save the form or publish the
| | 04:30 | form in a network share and then email it from there
or direct users to that share to pick it up.
| | 04:36 | I can also publish my form as the template
for a Microsoft SharePoint library or
| | 04:41 | a Microsoft SharePoint list. If I do
that, I have access to restricted domain
| | 04:47 | and full trust forms and full trust
need to be installed by the administrator.
| | 04:51 | Effectively, most of my forms in SharePoint
are going to be domain or full trust form.
| | 04:57 | So these are my choices and let's
take a look then at where our publishing
| | 05:01 | options are broadly set. So here we are.
| | 05:04 | Let's go to File, here are our Submit Options,
another place I can find them and
| | 05:10 | here are my publishing options. When
I choose to Publish, I have the choices
| | 05:14 | of saving this in a SharePoint library
to email it or to publish the form to a
| | 05:20 | network location or a file share.
| | 05:22 | That's the series of issues that we need
to deal with to get our form out the door.
| | 05:28 | Submit options bearing in mind our security settings
then how we want to publish
| | 05:32 | our form and make it available.
| | 05:34 | In the rest of this chapter and then in
the next chapter, we'll be implementing
| | 05:38 | these different submit methods.
| | Collapse this transcript |
| Submitting using email| 00:00 | In this movie, I'm going to show you
how you set the submit options for a form
| | 00:05 | when you want the contents of the form
to be emailed to a group or a user or
| | 00:11 | even a Microsoft Exchange Public folder
that can accept emails or posts.
| | 00:16 | When the forms all filled out by the user
and they click Submit, we want to use
| | 00:21 | email as our method for submitting this information.
| | 00:24 | Here's how it goes.
| | 00:26 | We can click on the DATA tab and we
can choose To Email in the Submit Form
| | 00:31 | section and it opens the Data
Connection wizard; or we can choose Submit
| | 00:35 | Options, Allow users to submit the form
and choose Email, and we can add a
| | 00:40 | data connection; or you can sort of do this
one stop shopping here backstage in InfoPath.
| | 00:48 | You could use the Design Checker, if we
hadn't already, and then you can submit,
| | 00:52 | and then go on to Publish.
| | 00:54 | So I think a number of developers
simply get used to doing all of your Submit
| | 00:59 | and Configuration back here in InfoPath
backstage because you also have access
| | 01:05 | to your Advanced form options.
| | 01:06 | So once the form's done, we're going to
go backstage and do things like Submit.
| | 01:10 | If I choose Submit, I can choose
Submit>To Email, and here's that same
| | 01:14 | dialog box all over again.
| | 01:16 | All I give up is the ability to actually see
myFields list on the right-hand
| | 01:20 | side, when I'm working in the form.
That sometimes a helpful thing, because
| | 01:26 | I might want to be able to tell what
myFields are and as a matter of fact, I'll
| | 01:30 | often think well, I'm actually going
to expose more of this, so I can see the
| | 01:34 | information that I might want to
have in my form submit options.
| | 01:39 | So let's go to Email again and
we're going to send this to someone.
| | 01:43 | Now during the testing phase, I'll often
just send this to me, but even now it's
| | 01:51 | not a bad idea to ask my information
technology folks or specifically my
| | 01:55 | exchange administrator to set up an account
that I can access and get into, but
| | 02:01 | it doesn't clutter up my own inbox as I'm doing work.
| | 02:05 | So I might have an account for example
that's called SharePoint Dev or SP Dev
| | 02:10 | or SPDev@no-obstacles-inc.com and I could
use that address to capture all of these
| | 02:15 | different kinds of things that I want to test.
| | 02:17 | We could just have an alias then.
| | 02:20 | And when we actually create this form in
production, I am going to suggest we do
| | 02:24 | exactly the same thing.
| | 02:25 | For example, if this form is being sent to OEC,
I'm not going to send it to a
| | 02:32 | specific person. I'm actually going
to ask to have an Office of Electronic
| | 02:36 | Communications email set up, if it
doesn't already exist, and there is really a
| | 02:41 | compelling reason for this from my point of view.
| | 02:44 | Not only does it not make sense to
send this to a particular person like, for
| | 02:48 | example, if we wanted to send it to
Raul Garcia, I wouldn't want to put
| | 02:53 | Raul's name here, because what happens
when he gets promoted and it's somebody else.
| | 02:56 | Now I got to come back to the form and fix the form.
| | 02:59 | So when you're actually using email
addresses, if it's OEC post, it doesn't
| | 03:04 | have to be an email address anybody
else uses, but an alias here, so that
| | 03:08 | when people change positions in the organization,
I don't have to go to modify the forms.
| | 03:13 | We just have a new alias set by the
exchange administrator. That's something
| | 03:17 | that they're used to doing, they do
it every time there's a new employee or
| | 03:20 | everytime there's a new group.
| | 03:22 | Aliases here are a good thing.
| | 03:23 | For right now, I'm testing.
| | 03:25 | I don't have that account set up, so we're
going to send this to gini@no-obstacles-inc.com.
| | 03:29 | I can also copy someone,
I can also blind copy someone.
| | 03:33 | I also have the choice.
| | 03:35 | If I'm sending for example that copy
and I want the user to know that their
| | 03:39 | form has been submitted.
| | 03:41 | I have the choice to insert a field
or group here and I can go get the
| | 03:45 | requester's email address right here.
| | 03:47 | Let's just verify the formula, so now
I'm copying the Requester on this email
| | 03:53 | that's been sent, if that makes sense;
that's a good way to do it.
| | 03:56 | So I could type for example that this
is a New Web Post Request, but then every
| | 04:03 | single Web Post that comes in to my
business users email in the Office of
| | 04:07 | Electronic Communications,
will have the same exact subject.
| | 04:10 | I would like it to have a similar subject,
I would like it to have some of
| | 04:15 | the same words in it, so that user
can write an Outlook rule, and put all
| | 04:19 | these messages for example in one folder, but
I don't want them all to say the same thing.
| | 04:23 | They are going to know that it's a New
Web Post Request, so let's just put Post
| | 04:27 | Request from and I want to grab this
information right here, and we're going to
| | 04:32 | create a customized subject using the InfoPath Controls.
| | 04:35 | I've copied that, just Ctrl+C, we're
going to insert a function and anytime I
| | 04:40 | want to put strings of text together, we use concat.
| | 04:43 | So I'm going to concat. The first
thing I am going to contact, Ctrl+V to
| | 04:48 | paste, is that Post Request from right here.
| | 04:51 | Now I can insert the Requester's information,
their FirstName, and their LastName.
| | 04:58 | In between I'd like to have a space.
| | 05:00 | So I'm going to put a quote ('), a
space, a quote (') and another comma (,)
| | 05:05 | just as I would if I was concatenating
to get a full name in Microsoft Excel.
| | 05:09 | So concat all these things, verify the formula,
doesn't contain any errors, we're all good.
| | 05:14 | I am actually going to copy this, because I
have another use for this in a little bit.
| | 05:19 | So I could do a Ctrl+C -- even if you
don't have a Contacts menu that Windows
| | 05:23 | Ctrl+C overrides everything.
| | 05:25 | I am going to say OK.
| | 05:27 | This message was created by Microsoft
InfoPath form, the form data may be
| | 05:30 | included as an attachment, that's fine.
I can type other information.
| | 05:34 | You know this says, here's a New Web
Post Request that's has been received,
| | 05:38 | whatever I want to put here is fine.
| | 05:40 | Anything that's informational helpful,
it will be at the top of the form.
| | 05:43 | Now I am going to click Next.
| | 05:46 | This says that this form has a domain
trust right now, and it can't be sent as
| | 05:51 | an email attachment.
| | 05:52 | To fix this problem I could change the level of security.
| | 05:55 | Well, you will recall that the reason
we have this level of security is that we
| | 06:00 | are using dropdowns.
| | 06:01 | They are external data, and as soon as
I started adding these to my form, now
| | 06:07 | I'm not able any longer to keep this restricted.
| | 06:11 | So it says go change the security level,
but I'd have to change the form as well.
| | 06:15 | This is sort of a simplistic piece of information.
| | 06:17 | I am just going to send the active view
of the form and no attachment.
| | 06:21 | Now I don't have an issue, so what will
happen is this form will actually appear
| | 06:25 | within that same email in the body of the email message.
| | 06:29 | So that's one possible way to do this.
| | 06:33 | Another possibility is to say well,
maybe I then would want to write this
| | 06:37 | information to database, maybe I want
to write it to SharePoint, but I'm doing
| | 06:42 | with it exactly what I want.
| | 06:43 | If my form is going to include dropdown lists,
that have external data in them,
| | 06:47 | I really have a couple of choices in terms of security.
| | 06:50 | And the easiest choice is to say that
we'll just send the active view of the
| | 06:55 | form and we won't send it as an attachment.
But if it was imperative that it
| | 06:59 | was sent as an attachment, then the
choice I have is to bump my level all the
| | 07:04 | way up to full trust.
| | 07:05 | If it's in SharePoint, publish there
to have it published by my SharePoint
| | 07:08 | administrator, or I could have this digitally
signed in some other kinds of environments.
| | 07:13 | So I have choices, I can jump
beyond this domain level of security.
| | 07:17 | But we're just going to send only
the active view of the form.
| | 07:21 | This is an Email Submit, it's the
default submit connection, because it's
| | 07:24 | the only one we have.
| | 07:25 | We see some basic information about it.
This is a good time to review this and
| | 07:30 | make sure we're in good shape, and
then we can go ahead and click Finish.
| | 07:34 | If I want to go back and look at these
Submit Options again, I can click Submit
| | 07:38 | Options, and now when I go back in,
this Email Submit, the name that was just
| | 07:42 | provided, is something that we can manage,
if we wish, right there; and modify it,
| | 07:48 | remove it, or add another different way to submit a form.
| | 07:53 | When we go to Preview now, we have Submit Options.
| | 07:56 | Therefore we have a Submit button.
| | 07:58 | And when my user fills out this form,
and clicks Submit, it's going to fire off
| | 08:02 | the email message right now going to me,
and right now copying the user back.
| | 08:08 | So I would want to make sure I am
filling in my own information to my own
| | 08:12 | email, so that I can see how that's working
as I'm testing my form.
| | 08:16 | That's what it looks like to set up
submit options when you want to send your
| | 08:20 | form by email in InfoPath 2013.
| | Collapse this transcript |
| Publishing on a network share| 00:00 | In this movie, we're going to publish
this form in a network share or other
| | 00:05 | shared location, so that it
can be used by our colleagues.
| | 00:09 | So let's click on File.
| | 00:11 | We've already set our Submit Options,
so this isn't highlighted.
| | 00:14 | But Design Checker and Publish your form are.
| | 00:17 | Click on Design Checker. Notice that
it's checking for the InfoPath Filler Form.
| | 00:21 | That's because we need to have
InfoPath Filler to complete this form, if it's
| | 00:26 | saved on a network share.
| | 00:28 | There's nothing to serve the form in a browser,
if it's simply sitting out on our network.
| | 00:33 | So let's click Design Checker.
| | 00:34 | It says there are no errors or messages.
| | 00:37 | If there were, we would handle them,
and then click Refresh.
| | 00:40 | Let's go back to FILE and notice that
all that's left is Publish your form.
| | 00:45 | Now this isn't a bad time to click Save As,
just to make sure that our Save as
| | 00:49 | type is an InfoPath Filler Form Template.
But I'm going to now click Publish
| | 00:53 | your form and I'm asked where to save it.
| | 00:56 | I can save it in a SharePoint Library,
I can publish it to a distribution
| | 01:00 | list or even to only one email recipient;
not really the same as the kind of
| | 01:05 | publishing we're going to do now,
which is to publish it to a network
| | 01:08 | location or file share.
| | 01:11 | Notice that it says, you use this option
when you don't have access to a
| | 01:14 | SharePoint Server. That's true, but you
also use this option, if you have a form
| | 01:18 | that has a very limited distribution,
and you want to be able to save it
| | 01:22 | somewhere, that a few people can get to it.
| | 01:25 | Not every InfoPath Form needs to be
in SharePoint even when you have a
| | 01:29 | SharePoint Server, users must have
InfoPath Filler to fill out the form.
| | 01:33 | For both of these types, the only type
that can be served by a server is the one
| | 01:38 | that's saved in SharePoint Server.
Other than that, our users need to have a
| | 01:42 | thick client or in other words InfoPath Filler.
| | 01:45 | Let's choose Network share. Where do
you want to publish this? I'm going to
| | 01:49 | click Browse, and I want to save this
on a network. I don't want to save it to
| | 01:55 | my exercise files, and someplace that,
perhaps now I'm the only person who has
| | 02:00 | editing permissions on. But you could
have a small group of people who are able
| | 02:04 | to modify forms. In many organizations
they'll actually create a folder that's
| | 02:09 | called InfoPath Forms that sits on a network share.
| | 02:12 | For now I'm going to do the same thing
but I'm going to save it here on my local drive.
| | 02:19 | I've set up a folder for InfoPath Forms
that I used for testing, we're going to
| | 02:23 | jump on in here, and I need to give
this a name, and the name that I'm going to
| | 02:25 | give this is Web Post Request
and I'm going to click OK.
| | 02:31 | Notice that when I change the name in
the Save as dialog, I actually get that
| | 02:35 | name change here as well.
| | 02:37 | I'm going to click Next.
| | 02:38 | It says that if all the users can access
the location I entered, I can just click Next.
| | 02:44 | However it might be that they use a different name.
| | 02:47 | Let me give you an example of that.
| | 02:49 | I might have chosen a mapped drive in the prior step.
| | 02:52 | It's my drive called L, but for other users
it might be called Z or J or
| | 02:57 | something else because it's mapped.
| | 02:59 | So I would want to have a path here
that is accurate for all the people who
| | 03:03 | would use my form, that's what we're looking for here.
| | 03:06 | So if I've got an alternate URL or a
private URL, I want to make sure that this
| | 03:11 | is the full network path or the public URL
for this particular location, then
| | 03:17 | I'm going to click Next.
| | 03:18 | It says, Verify the form information below.
| | 03:21 | This is where it's going, this is
where other people find it, it has Domain
| | 03:24 | level security and I'm going to click Publish.
| | 03:27 | My form has been published successfully.
Isn't that great?
| | 03:30 | If I'd like to open this form now from
the published location, I can just click
| | 03:34 | this checkbox, close the Publishing Wizard dialog
and here's my form ready to be filled out.
| | 03:40 | Now let's be clear when I fill this form out
and I submit it, it's not going
| | 03:45 | back to the Network share.
| | 03:46 | Publish and Submit are two different options.
I'm opening it from my network
| | 03:50 | share and I'm publishing it to email.
| | 03:53 | So it will come back to me in the form
of an email. That's how we publish this
| | 03:57 | form in a network share.
| | Collapse this transcript |
| Distributing using email| 00:00 | We've been publishing our familiar Web
Post Request form and now we're getting
| | 00:05 | ready to publish a form that can be distributed using email.
| | 00:10 | Actually the distribution is the publication
method. We can't do that with
| | 00:15 | this particular form, because Microsoft
Exchange and Outlook don't know how to
| | 00:20 | handle some of the types of controls that we've used.
| | 00:23 | For example this rich control here that allows a drawing.
| | 00:27 | Think about the last time you opened an
email that you were allowed to draw in it.
| | 00:30 | Or the ability to insert a hyperlink
using this type of control, but this is
| | 00:35 | our problem child right here, more than anything else.
| | 00:39 | If I'm going to send a form to people
by email, I need to send a form that they
| | 00:43 | can fill out easily with the client that Outlook provides.
| | 00:46 | They need to be able to type text.
| | 00:49 | They can use a Date Picker and a dropdown,
but when we start including fields
| | 00:54 | and controls for fields that have lots
going on in them in terms of imaging,
| | 01:00 | I probably have a form that I can no longer publish.
| | 01:03 | It'll be easy to tell that I can't publish it
as soon as I start I'll actually start tripping over it.
| | 01:08 | So when I choose that I want to publish my form
and I want a publish it to email,
| | 01:13 | it tells me right away, it's restricted, I can't do that.
| | 01:16 | So I'd have to choose to do something
very different with my form if I wanted
| | 01:20 | this to be an email-only form.
| | 01:21 | Now remember at this point all I need
to do to be able to distribute this form
| | 01:26 | is to publish it differently.
| | 01:28 | If I go back to the last movie and say,
let me publish this in a Network share,
| | 01:32 | it's fine, and then I can send it to
people using email, but I can't publish it
| | 01:37 | to email with all of these rich features in it.
| | 01:40 | So let's look at a form that we can publish to email.
| | 01:44 | Here's a form that we used earlier in this course,
and you'll see it again towards the end.
| | 01:49 | It's our Benefit Use Request.
| | 01:50 | It's a nice form there's nothing wrong with it.
| | 01:53 | It just doesn't have as many
fancy controls as the last one did.
| | 01:57 | You'll notice that, we have text boxes
and checkboxes and date pickers and the
| | 02:02 | kinds of things that we can appropriately put in an email.
| | 02:05 | So let's now go to FILE.
| | 02:07 | It has a Submit setup.
| | 02:09 | I actually set up a Submit identical to
the Submit that we used in our last form.
| | 02:13 | I can run the Design Checker, always a
good idea; it says there are no errors.
| | 02:17 | I'm happy to know that.
| | 02:19 | Let's now go and publish our form.
| | 02:22 | I'm going to publish this form to a list of email recipients.
| | 02:25 | So it says, what do you want to name your form template?
| | 02:29 | Well, I would like to name this form template
Request for Benefit Use.
| | 02:35 | There's a great name.
| | 02:36 | Everybody understands what that is.
| | 02:38 | It's what everybody in the organization calls it,
and I am going to click next.
| | 02:42 | Now it says, The fields listed below
will be available as columns and SharePoint
| | 02:46 | Sites and Outlook folders.
| | 02:48 | You might wonder why am I being
asked about SharePoint here?
| | 02:51 | Remember that I could publish this
form using email and submit it to
| | 02:56 | SharePoint in the same way that I
could publish this form in SharePoint and
| | 03:01 | submit it with email.
| | 03:02 | Also Outlook folders have the ability to expose columns.
| | 03:06 | So let's imagine that I have all of these
emailed back to one folder that email
| | 03:10 | is my Submit method, as it is.
| | 03:12 | What fields or columns here would I like
to see as columns in my Outlook folders?
| | 03:19 | So when you see the words fields
and columns, it's the same thing.
| | 03:23 | So imagine that I'm looking in Microsoft Outlook
and I want to be able to see
| | 03:28 | information about this request.
| | 03:29 | Well, I probably want the person's last name,
and then I want the person's first name.
| | 03:36 | I won't necessarily need their email
address because I'll be in Outlook and it
| | 03:39 | will have an email address, but I
might want to know their form date, and a
| | 03:44 | little bit of information about the request;
what type of request it is, and
| | 03:48 | the request Start Date.
| | 03:52 | There's a request for a maternity leave
starting at a particular date or a
| | 03:56 | vacation starting at a particularly day.
That looks good.
| | 03:59 | That's all I really want right now.
I can return and republish this form and
| | 04:04 | choose different columns next time; remove
some of these put some others in its place.
| | 04:09 | It says, Click Publish to create an email
message that contains this form template.
| | 04:14 | So as I said distributing and publishing
are one solitary act here, it's all
| | 04:19 | bundled together. Then to display
the promoted properties in Outlook
| | 04:23 | columns, I need to actually create
a form folder and select a form to
| | 04:27 | associate with the folder.
| | 04:29 | Some other steps that I would
need to do elsewhere in Outlook.
| | 04:33 | I'm going to publish this form now.
Here we are in Outlook in my email
| | 04:40 | message and I'm able to send this out to
somebody, so that they can complete it.
| | 04:45 | I could put a distribution list here,
I could put several different usernames.
| | 04:50 | If I'm one of the first people in my
organization doing this, I'm going to spend
| | 04:54 | some time in this introduction. I'm
going to say, welcome to InfoPath.
| | 04:57 | This is a new form.
| | 04:58 | Here's how you fill it out. Then
I'm also going to tell them that when
| | 05:03 | they're all done, all they
really need to do is click Submit.
| | 05:06 | Now you don't see a Submit button here,
that's because we're the sender, but
| | 05:10 | when our recipient receives this email,
it will have a submit button in it, so
| | 05:14 | that they can send it wherever it's supposed go;
| | 05:17 | in this case, using the Email Submit
option that we completed earlier to
| | 05:22 | email it back to me.
| | 05:24 | We've published directly into Outlook
and this is what it will look like every
| | 05:28 | time, and we'll follow those
same steps every time as well.
| | 05:31 | So you can see that it might be easier
to have published this in a network
| | 05:36 | share, so I could simply open it and
send it as part of an email message.
| | 05:40 | But this method, where we publish
and distribute at the same time, is a
| | 05:45 | strong method that works very, very
well here in Microsoft InfoPath
| | 05:50 | paired with Microsoft Outlook.
| | Collapse this transcript |
| Using Quick Publish| 00:00 | Some of this publishing has taken a fair
number of steps and so you might wonder
| | 00:05 | do I have to do this every single time I
publish a form to a network share or to
| | 00:10 | email or to SharePoint for that matter,
and the answer is no.
| | 00:15 | All of the publishing choices, that we made
have actually been saved for us.
| | 00:19 | So here's a form that we have published
recently. I'm going to click FILE,
| | 00:23 | and notice now on my Info tab, I have
Quick Publish, Publish the Form in the
| | 00:31 | email location and Submit by Email.
Instead of this being published now and
| | 00:36 | we need then to set up the options, I
can Quick Publish, and for example when I
| | 00:40 | Quick Publish here, that's how easy it is.
| | 00:45 | So I don't need to set this up over and over again.
| | 00:49 | But what if I want to do something different?
What if I want to publish in a way
| | 00:53 | that I haven't previously?
| | 00:54 | Then I'll choose FILE>Publish and have
access to all of the options that I had
| | 00:59 | previously; SharePoint Server, Email,
Network location, source files. And
| | 01:05 | I'll also have enabled the Quick Publish option,
because I've published this form successfully previously.
| | Collapse this transcript |
| Viewing the files InfoPath creates| 00:00 | There is one more way that you can
publish your form. I want to show it to
| | 00:04 | you briefly because the odds are good
that you will not have a need for this.
| | 00:08 | And yet I want to show it to you because,
if you do, it's a really cool feature.
| | 00:13 | Every time you look at the InfoPath Form,
you see something that looks like one thing,
| | 00:17 | but truly there are many,
many parts and pieces of this form.
| | 00:22 | I don't mean the fields and the controls.
I mean that this form has an entire
| | 00:27 | package behind it that and we
really haven't seen up until now.
| | 00:31 | I'm going to go ahead and click File and
Publish and choose to Export Source Files.
| | 00:38 | When I do that, I'm asked where I
want to store these forms and their
| | 00:42 | associated files. Your exercise files
folder includes a Source Files folder
| | 00:46 | that you could drop this into.
| | 00:48 | But no matter where you are, you can
simply choose to make a brand-new folder.
| | 00:52 | So if you're sitting on the desktop
you could make a new folder, if you're in
| | 00:56 | your My Documents folder, just make a
new folder and call it something like Web
| | 01:00 | Request Source Files.
| | 01:02 | So I'm going to say OK, that's it.
| | 01:05 | That was the whole thing.
| | 01:06 | So now I'm going to go open my Source Files folder.
| | 01:10 | We have a whole list of items that are in here
that have been extracted out of
| | 01:15 | the file that looked to be simply one thing.
That's pretty cool.
| | 01:20 | So here's a view called ExpressEntry.
| | 01:22 | That's a view we created and it's
actually not a view. It's actually a
| | 01:27 | stylesheet, the kind of stylesheet that
works with XML. It's called an XSL stylesheet.
| | 01:33 | So each time we created a view what
really happened was we created an entirely
| | 01:38 | new stylesheet here, pretty cool.
| | 01:40 | Then we have the schema.
| | 01:43 | The schema is what we were designing
when we were dragging and dropping
| | 01:47 | different fields and creating and assigning
attributes to those fields over in the field list.
| | 01:53 | So when I double-click to open his XSD
or XML Definition File, it might be that
| | 02:00 | your computer, like mine, doesn't quite
know what to open it with. But I'll tell
| | 02:04 | you that you can view it in a browser,
here's what it looks like.
| | 02:08 | And it would look the same way if we were in Chrome.
| | 02:11 | This is the data description that we built.
For example at the top there's
| | 02:15 | myFields, Today, the Requestor, do they
want a NewArea, Posts, forOEC.
| | 02:22 | Our major sections are described here.
| | 02:24 | And then below here's the Requestor
section itself with the Requestor's E-Mail,
| | 02:29 | First Name, Last Name and so on.
| | 02:31 | These all began and end with standard tags,
so we have an element, and then
| | 02:38 | we close an element.
| | 02:39 | We have another element here
that's got a close tag at the end.
| | 02:43 | If you're familiar with HTML, you'll
be pretty familiar with what this text
| | 02:47 | looks like right here.
| | 02:48 | If you'd like a more friendly tool to
open this in, you could use a tool like
| | 02:52 | XML Notepad that's free or Notepad++,
in order to look at this file, but it looks just fine here.
| | 02:59 | Remember that we had the ability to create
a new form based on a schema.
| | 03:05 | I told you that if we didn't have one,
it would be created for us, here it is.
| | 03:10 | And we could send this to another user
and they could use it to be able to place
| | 03:15 | data in an Excel file for example, or to
be able to create an entirely new form
| | 03:21 | that's shared the same data.
| | 03:23 | That's the power of a schema.
| | 03:25 | We also have our XML file.
| | 03:27 | Now we can open that using some pretty
fancy things that we might have, but we
| | 03:31 | can open this file here in Notepad.
| | 03:33 | And here's the XML itself, a very short
version that matches up to the schema, so
| | 03:40 | that we can see oh, okay, this is very
human readable as it's supposed to be.
| | 03:44 | This isn't organized by sections.
| | 03:46 | This is actually organized with sections around it,
but as it actually appears in our field list.
| | 03:53 | So this should look incredibly familiar,
myFields from top to bottom, including
| | 03:58 | things like default settings here.
| | 04:01 | Finally, we have a manifest and that's
used to hold this whole thing together.
| | 04:05 | It looks like it has almost the same icon
as our form does, and that's because
| | 04:11 | this is the part that makes this InfoPath
as opposed to a collection of XML
| | 04:17 | and XML related files.
| | 04:19 | So the XML is a little difficult to read.
| | 04:21 | It even looks ugly when you look at it
the first time. And I'm glad that you and
| | 04:26 | I didn't have to type any of this in,
in order to actually create a form.
| | 04:30 | Imagine if we'd had had to begin by
typing a schema or typing out an XML list.
| | 04:36 | We would never have gotten to InfoPath.
| | 04:38 | But any time you want to be able to
extract these files to be able to use them,
| | 04:43 | just go behind the scenes choose
File>Publish>Export Source Files.
| | 04:47 | Choose a location, say OK and you can unpack
all of InfoPath into its component pieces.
| | Collapse this transcript |
|
|
13. Publishing a Template in SharePointPublishing InfoPath templates in SharePoint| 00:00 | We have a couple of different options
for publishing InfoPath templates in
| | 00:04 | SharePoint Libraries. The reason
we have different options is we have
| | 00:08 | options based on what our submit options are.
| | 00:11 | So two different paths that we could take;
the first is let's imagine for some
| | 00:15 | reason we've decided that we want to
have a form sitting in a SharePoint
| | 00:20 | Library, but when that form is used
and the user clicks, it gets emailed to a
| | 00:26 | particular destination.
| | 00:28 | Now there are many reasons you might
want to do this. For example, you might
| | 00:32 | have a SharePoint site that has a
number of different forms sitting there.
| | 00:38 | Each sits in its own library and you
just want the user to be able to go in and
| | 00:41 | open one up and fire it off.
| | 00:43 | So what's unusual, but not unheard of
to have an Email Submit for a form that
| | 00:48 | a user picks up out of the SharePoint Library.
In that case you can configure
| | 00:52 | the Email Submit, and then you can
publish that form in SharePoint and
| | 00:57 | everything works just fine.
| | 00:58 | So you've got the submit setup and you
publish and it looks really similar to
| | 01:02 | the steps that we did in the last chapter
where we'd can figure submit, then we
| | 01:06 | go publish whether it was to
a Network share or To Email.
| | 01:10 | However, if you want to have a form that
lives in a library in SharePoint that a
| | 01:16 | user goes to Library, fills out the form,
and then submits it back to the same
| | 01:21 | library, we need to do these steps in a different order.
| | 01:24 | We actually have a three step rather
than a Texas Two Step that we'll do for
| | 01:28 | that usual circumstance, where we
have a library that has its own form that
| | 01:33 | users go fill out and submit right back to the same spot.
| | 01:38 | We'll begin by publishing the form in SharePoint.
In doing so we will create
| | 01:43 | the library during the act of publishing.
| | 01:46 | The library will not exist ahead of time.
| | 01:49 | Now occasionally, I've gone into circumstances
where there's already a library
| | 01:53 | and we publish a form to it.
| | 01:54 | InfoPath and SharePoint don't like
that so much; so this is the tried and true
| | 01:59 | method. Do not create your libraries
ahead of time, let InfoPath work with
| | 02:03 | SharePoint to create it for you.
| | 02:05 | So we're going to publish this form in
SharePoint, then we're going to return to
| | 02:09 | the form and configure the submit afterwards,
because the library we want to
| | 02:14 | submit it to, won't even existence until
we publish the form in the first place.
| | 02:18 | Then we will republish the form back to
the same library again. That's how this
| | 02:23 | is going to work most of the time
when we work here in SharePoint.
| | 02:27 | Let's go see how we publish a form in
SharePoint in the first place, this first
| | 02:32 | step, then what we'll do is take a look
at how we would configure our Submit and
| | 02:38 | Promote columns and finally we'll republish again.
| | 02:41 | Here we are in our familiar Web Post
Request form. It has a whole lot going on.
| | 02:46 | I am just going to do a Quick Click here,
and you'll notice that this version is
| | 02:51 | the web version, not the Form Filler version,
because we only have six container
| | 02:55 | controls sitting here.
| | 02:56 | You could also go to Save As
to learn that same information.
| | 02:59 | So now let's go to FILE. I always like to
run the Design Checker, it's a good thing to do.
| | 03:06 | There are no errors and it knows
it's checking it for a web browser form.
| | 03:10 | That's what I want.
| | 03:11 | So now let's go publish our form. I want
to publish this form to a SharePoint Site.
| | 03:17 | The first thing I need to provide is the
location of our SharePoint Site. It's
| | 03:23 | not asking me for library, its asking
me for the site that the library will be
| | 03:27 | created in. Let's jumped sideways
for a second and take a look at that
| | 03:31 | SharePoint Site that we're going to be using.
| | 03:33 | This as our No Obstacles internet,
also called Inside No Obstacles, and we'll
| | 03:38 | be using this site for this chapter
of the course. We have a number of
| | 03:43 | different subsites but this particular
form we're going to create the library
| | 03:47 | right here at the main site sitting at
the top or the root of our site collection.
| | 03:53 | What we need is this information right here.
| | 03:56 | We actually need everything up to the .com, right here.
| | 04:01 | I can go ahead and copy that, that's
going to make my life easier when I return
| | 04:05 | to InfoPath and click in the Publishing
Wizard. So it says, where's your site?
| | 04:10 | I grabbed one extra character.
| | 04:11 | I'll get rid of that actually, I don't
even need to, but that's fine. It helps
| | 04:15 | when what I'm entering looks just like
the example, and I'm going to click Next.
| | 04:19 | Now you'll like me, may be prompted to
provide some credentials right now, it
| | 04:24 | depends on how you're configured and
whether or not you have single sign-on
| | 04:28 | and lots of other things, but don't
be offended if you're asked to provide
| | 04:32 | some information here.
| | 04:33 | Next there's a checkbox that says Enable
this form to be filled out using a browser.
| | 04:39 | If we turn this off then first I'll have
some different choices about the type
| | 04:43 | of place I can publish it, because
browser-based forms can be submitted for
| | 04:48 | administrative approval. But that's not
the big issue here because I'm creating
| | 04:52 | a form library. Its the very first thing.
I would really like this form to be
| | 04:56 | filled out using a browser.
| | 04:58 | You might wonder, well what happens if
one of my users has InfoPath Form Filler?
| | 05:02 | When they click on the form in the
library there are some Library Settings,
| | 05:06 | that determine whether it'll try to open
it in the thick client, the InfoPath Filler, or
| | 05:11 | whether it will always open the browser
even if they have InfoPath Filler.
| | 05:16 | Those are settings that you can set in SharePoint.
| | 05:18 | I'm creating a new form library right here,
because I don't want to update any
| | 05:23 | of the existing libraries, but here they all are.
There are number great libraries in this site.
| | 05:28 | I'm going to create a new one.
| | 05:29 | Don't worry that this doesn't scroll,
it does as soon as I choose to update.
| | 05:33 | So we're going to create a new library.
Next, Type a Name and Description
| | 05:37 | for this form library.
| | 05:38 | Now this isn't asking about this
form this is the name of a library.
| | 05:43 | If we go back to our SharePoint Site,
libraries here have names like Admin,
| | 05:48 | Calendar or Training Courses or
Orientation Links. You get a feel for the types
| | 05:53 | of information that is provided here.
| | 05:56 | Let me tell you something else. The odds
are really good that this library, or this
| | 06:01 | list actually, is probably called something
like AdminCal in camel case, because the name that
| | 06:07 | appears at the top and the name that
appears in list can be modified. What I'm
| | 06:12 | really creating back here in InfoPath is
a URL. And a good rule in SharePoint is
| | 06:17 | URL's don't have spaces in them.
| | 06:20 | So when I enter a name for this
library, knowing that I can edit it in
| | 06:23 | SharePoint, I'm actually going to use
the camel case that we're very familiar
| | 06:28 | with from creating our field names in our schema.
| | 06:31 | So this is a WebPostRequest also it's
taking up space in the URL so I'm going to
| | 06:36 | keep this pretty short. I should
spend really good time entering a great
| | 06:39 | description because this is going to
describe this particular library for lots
| | 06:43 | of users. So you could even say
something like, Sponsored by the Office of
| | 06:48 | Electronic Communications, this library
allows users to request new posts, new
| | 06:52 | content areas and news items, something like that.
| | 06:54 | Again, this can be edited later, but
let's do a good job when we first start.
| | 06:58 | Now I'm going to click Next.
| | 07:00 | Now at this point I'm being asked
what columns should show up in
| | 07:04 | SharePoint libraries.
| | 07:05 | And I'm going to simply add one column.
| | 07:08 | We'll come back here later and talk more about this.
| | 07:11 | I'm actually going to add two columns;
| | 07:13 | I'm going to add Today for the date and
the Requester's last name, and we will
| | 07:18 | spend more time on this later.
| | 07:20 | We also have the ability to pass some
parameters to a particular web part.
| | 07:24 | That's beyond the scope of this course.
| | 07:27 | I'm going to click Next, I'm creating
this form library in this SharePoint Site.
| | 07:32 | This SharePoint Site is running InfoPath
Form Services or I couldn't do this and
| | 07:38 | it has a domain level of security,
we'll discuss that later. Let's click Publish.
| | 07:44 | InfoPath is connecting to InfoPath
Form Services in SharePoint.
| | 07:48 | My template has been published successfully.
| | 07:51 | That was very fast.
Don't be surprised if it takes a little bit longer.
| | 07:55 | Now I have some choices.
| | 07:56 | I can open the form library by clicking
this checkbox before I close, or I can
| | 08:01 | click to Open the form in a browser.
| | 08:03 | I'm going to go open the Form Library.
| | 08:05 | Here it is, the library we created.
Again, this name can be changed.
| | 08:10 | You can go to the Library Settings here
and modify it. But if I want to create
| | 08:15 | a new document, I can go to FILES>New
Document and here's my form published
| | 08:22 | here in SharePoint.
| | 08:24 | It's published, it doesn't know what to
do when we submit it. There's not even a
| | 08:28 | submit button yet because we haven't configured that.
| | 08:31 | But we do know how to get this form
published to our server.
| | 08:34 | Every form we've created up until now
has been freestanding.
| | 08:38 | It's been in InfoPath only.
| | 08:40 | But now that we've published this form,
it has a relationship to the library.
| | 08:45 | So you need to make sure when you're
working in this chapter,
| | 08:48 | that you're working with your
own files, your own forms.
| | 08:52 | And that's why there are no exercise files
included for the rest of the movies in this chapter.
| | 08:57 | Because if you have now published to SharePoint,
you can't open a form that I give you.
| | 09:03 | You need to work with your own that has
that special unique relationship
| | 09:06 | that you created through the act of publishing.
| | Collapse this transcript |
| Submitting a form to a SharePoint library| 00:00 | In the previous movie, I've showed you how
to publish a form in SharePoint to create a library.
| | 00:06 | Now that that library exists, we can
configure the form to submit to that
| | 00:11 | SharePoint library. Here we are in
our familiar Web Post Request form.
| | 00:15 | If you've been using the exercise files,
you'll notice that there's no file for
| | 00:19 | this movie. That's because the file
that we created to start this chapter now
| | 00:24 | has been published to SharePoint and
therefore you need to use a file that you
| | 00:29 | also have published to your own SharePoint server.
| | 00:32 | If you want to have an exercise file
then return to 13_01 and create it.
| | 00:37 | I am going to click File, you'll remember
that we've published the form; here's
| | 00:41 | where it is, we've checked the design.
Now we need to configure our submit.
| | 00:45 | We can either go there from here or if
we hadn't come backstage in the form, we
| | 00:50 | could've chosen either Submit Options,
or Submit Form To SharePoint Library.
| | 00:55 | Any of those choices will bring you right here.
| | 00:58 | The first thing is where is the library that we just created?
| | 01:02 | Well, I can actually paste part of this
and open it up. But these are
| | 01:06 | in alphabetical order, a little difficult
to follow at times, but there's my library.
| | 01:11 | Notice that I'm being asked also for
a library that ends in a slash (/).
| | 01:16 | I'm not being asked for a site. When I
created the library through publishing,
| | 01:20 | I was asked for a site.
Now I am being asked specifically for the library.
| | 01:24 | The second thing I'm being asked is
what File name should be attached to each
| | 01:30 | instance of the form being submitted by a user.
| | 01:34 | If I name it form, I'll have a whole bunch
of files named form. No I can't, they
| | 01:38 | are all in the same place.
| | 01:40 | SharePoint won't allow that, Windows
won't even allow it. I would either have to
| | 01:45 | allow an overwrite. in which case I'd
never have more than one, the one most
| | 01:49 | recently saved; or I have to find a
better way to create a file name.
| | 01:55 | Form is not going to get it.
So I'm going to click our function button here.
| | 01:58 | Let's go ahead and insert a function.
This is familiar already. Let's use concatenate.
| | 02:03 | Now this is a file name that will be present in a URL,
so when a user clicks on
| | 02:09 | the form there's a long URL.
| | 02:11 | URLs are uniform resource locators,
are capped at 255 characters.
| | 02:17 | You may think well, we'll never use 255 characters.
| | 02:21 | But this is exactly the space that we do,
because we already have a URL that's
| | 02:26 | the start of the name, that includes
the server and the library and then if we
| | 02:30 | create long file names, or if we have
a site and then a sub-site, and then a
| | 02:35 | library and you begin to see
you really can bump up to 255.
| | 02:39 | So we don't want to have really,
really long file names, but we do want to be
| | 02:43 | able to tell one form from another.
Most importantly we want to make sure
| | 02:47 | that we're not in a position
where a user is trying to save a form,
| | 02:52 | and it's a genuine new instance of the
form, but they can't without overwriting
| | 02:56 | another form that exists. Because we
turned off that overwrite checkbox, they
| | 03:00 | won't be allowed to save it,
if they're the second form of the same name.
| | 03:05 | So we can begin by saying something like PostRequest.
| | 03:09 | We don't need to say WebPostRequest
unless there would be other types
| | 03:13 | of requests in here.
| | 03:14 | PostRequestFrom and then I might put a
dash (-) because every time I render a
| | 03:19 | space in a URL that space is replaced
with the ASCII key character for space,
| | 03:25 | which is percent 20.
| | 03:27 | So every space is three characters
and makes it harder to read.
| | 03:30 | So PostRequestFrom, if I wanted in
here, I could put underscores (_) to make
| | 03:35 | this more human readable, I am not
going to worry about for example one space.
| | 03:40 | But if I have a bunch of on them,
it starts to create an issue, then I'm going to
| | 03:44 | double-click to insert a field here.
This is actually going to come from a
| | 03:49 | first name, and then I can insert
another dash (-) or an underscore (_) if I
| | 03:57 | prefer, with a comma (,), so quote_quote.
| | 04:05 | Let's go grab this person's last name.
I don't know about your organization,
| | 04:09 | but I have seen have many organizations where
we've a number of people with the same last name.
| | 04:13 | So we want to get first name and
last name both in there. Then I could
| | 04:19 | enter some more text, another
underscore (_) for example and a coma (,).
| | 04:25 | Right now if one person tries to save
two posts, they won't be able to, they
| | 04:30 | will be making up other names in order to do that.
| | 04:32 | This isn't what we want our users to do.
| | 04:34 | So let's go ahead and insert another
field or group, and the field or group
| | 04:39 | that I'm going to insert is today.
| | 04:42 | So now I could do one new post everyday.
What if I wanted to be able to say
| | 04:48 | well I also want to make sure that the
user could post multiple posts in a day.
| | 04:52 | I need a little bit more information then.
| | 04:55 | So let's have a comma (,) a quote (')
and underscore (_) a quote (') a coma (,),
| | 05:00 | and let's add one more field here.
| | 05:04 | What else would make this unique?
| | 05:05 | We're going to add the actual post.
| | 05:09 | Now we told in this would be part of
file name, so that's not a bad thing.
| | 05:13 | We can go ahead and say Post Title is okay,
and that would be the name of this form.
| | 05:19 | That's really long.
| | 05:21 | So if we had people doing unique
post titles, it might be then that we can
| | 05:27 | start to take some of these things away here.
| | 05:29 | For example we might be able to back out
the From and get rid of the first
| | 05:36 | name, because the user now can put in a post
title and those can be radically different.
| | 05:41 | I'm going to get rid of the first name
and when I do, I also want to get rid of
| | 05:46 | its comma (,) so I don't have two
commas (,) in a row. So, PostRequest_
| | 05:53 | LastName_ the date and the post title.
| | 05:56 | Let's see how that works out.
| | 05:57 | That might be longer than I want,
it might be just right.
| | 06:01 | Let's verify the formula doesn't contain
any errors, that's good, let's click OK.
| | 06:06 | Now I'm not going to allow an overwrite if the file exists.
| | 06:09 | There are times that you want this, but
they are very controlled circumstances.
| | 06:13 | You really don't normally set up a library
with this checkbox turned on. We'll click Next.
| | 06:18 | This Submit is called SharePoint Library Submit.
| | 06:21 | It's the default, it's the only one
we have and I'm going to click Finish.
| | 06:25 | Those are the choices that I make to set up the Submit.
| | 06:29 | Now when we go back to our library,
all we need to do is republish this form,
| | 06:36 | so that the templates sitting in
SharePoint has an enabled Submit.
| | Collapse this transcript |
| Promoting columns to SharePoint| 00:00 | In this chapter we're using one file
all the way through and that's why there
| | 00:05 | are no exercise files for this movie.
| | 00:07 | If you need to have an exercise file,
return to 13_01, and go ahead and publish
| | 00:13 | that file to SharePoint, and
use it throughout this chapter.
| | 00:17 | In previous movies in this chapter,
we began by publishing our form in
| | 00:21 | SharePoint and that created a SharePoint
library and saved our form as a
| | 00:26 | template in that library.
| | 00:28 | Then we returned to InfoPath and
configured a Submit to go back to that
| | 00:32 | same library. So that when a user
fills out a form and click Submit, it
| | 00:36 | will drop right there.
| | 00:37 | But the template that was saved
when we published that form still
| | 00:41 | doesn't include the Submit.
| | 00:42 | So now what we need to do is republish
this form and take advantage of all the
| | 00:48 | different choices that we would want
to make about promoting columns.
| | 00:52 | So I'd like to review how promoted columns
are going to work in SharePoint, so
| | 00:57 | you understand the choices that
you're making when you republish the form.
| | 01:01 | This would probably be the last time
we need to publish this form unless
| | 01:05 | we change it again.
| | 01:06 | So let's go take a look at our SharePoint Library.
| | 01:09 | We created this library by publishing
our form and when we did that, we had
| | 01:14 | a choice to add some columns, and I just
want to show you that they're actually right here.
| | 01:19 | Here's the Today column we added and
the Req Last Name column that we added.
| | 01:24 | These other columns, which are of the
form name, when it was modified and by
| | 01:29 | whom and whether it's checked out
are defaults that were provided in this
| | 01:33 | particular SharePoint Library View by SharePoint.
| | 01:36 | So when you go to a Document library
or almost any library, you'll find that it
| | 01:41 | has a name, it has an icon and some
modified and checked out attributes.
| | 01:45 | But these we added. These are custom
columns that come from our form and adding
| | 01:51 | these columns is called promoting columns.
| | 01:54 | So let's now return to InfoPath and Republish.
| | 01:58 | We'll go to FILE, if we do Quick Publish,
we'll publish exactly the columns
| | 02:04 | that we promoted before. We'll get the
new template and Submit will work, but
| | 02:09 | we won't have the ability to say hey I'm not
sure that we want to have just those two columns.
| | 02:14 | So when I don't want to publish in
exactly the same way, I'm going to click
| | 02:19 | Publish here and we're going to
choose SharePoint Server once again.
| | 02:24 | Notice that it knows where this form goes.
| | 02:26 | If I was working on a form on for example
a development server and wanted to
| | 02:32 | publish it on a production server,
I can make choices here that are different.
| | 02:37 | But in this Publishing Wizard what
InfoPath does is retains the values that are
| | 02:41 | already in the form. Let's click Next.
| | 02:43 | All of these settings are the same;
Form Library in a Browser, this is new,
| | 02:48 | because we actually have a library.
When we published it the first time,
| | 02:52 | we didn't, now we do. Let's click Next.
| | 02:56 | I have these two fields, Today and the
Req Last Name. I can add other fields as
| | 03:01 | well or I can remove fields.
| | 03:02 | This is already in the file name,
so I actually don't need it.
| | 03:05 | So what might I want to have that's not here?
| | 03:08 | Remember, that some of the users of this
will be people who posted forms. Some
| | 03:12 | others might be folks who work in the
office of electronic communications.
| | 03:17 | Maybe I'd like to know for this form,
what department it comes from. Or
| | 03:21 | maybe what I'd like to know for this
form is whether or not they want to
| | 03:26 | have a new proposed area.
| | 03:28 | Perhaps I'd like to know if
the work has been done already.
| | 03:30 | There are many, many different
fields that I could place here.
| | 03:34 | And every field that I want to end up
anyplace in this SharePoint Library,
| | 03:39 | I need to choose right here.
| | 03:41 | Although, I'll create different views
based on the fields, just like we created
| | 03:45 | different views for our form, the only
way I have a view available is to promote
| | 03:51 | it here into SharePoint.
| | 03:53 | So the date that this was worked on
and who worked on it in OEC, a list of
| | 03:59 | things I would like to have.
| | 04:00 | I can also say for some fields that
users can edit data in them, and that's
| | 04:05 | beyond the scope of this course.
| | 04:07 | We can talk about debt in other courses
for example in a SharePoint course.
| | 04:11 | I am going to say OK, there are
my fields 1, 2, 3, 4, 5, of them.
| | 04:15 | I'm going to click Next.
| | 04:17 | And now I'm going to click Publish to republish my form.
| | 04:21 | Before I do, to be clear, the only
reason I needed to run the Publishing Wizard
| | 04:25 | was to modify the columns that
I want to promote to SharePoint.
| | 04:30 | Our form template has been published successfully.
Let's go ahead and open our Form Library.
| | 04:36 | When we open our Form Library, here are
our new columns that we promoted here,
| | 04:42 | fields from our InfoPath Schema.
| | 04:44 | I'm going to go to FILES and choose
New Document. Notice now we have a
| | 04:49 | Submit button, because our
Submit Options have been configured.
| | 04:53 | Our user will fill out the form, will save it
if they wish, will submit it when they're done.
| | 04:58 | They have the ability to switch between
the views that we allowed them to switch to.
| | 05:04 | So the changes that we made including
things like adding a button all of our
| | 05:09 | dropdown lists, all the functionality
shows up here in SharePoint and when a
| | 05:14 | user fills out a form they can submit it here.
| | 05:16 | Let me just show you what that looks like.
| | 05:19 | This field cannot be blank.
| | 05:21 | I can't put a placeholder in, but as I
click in the field, I'll get some basic
| | 05:25 | information about settings that you and I set already.
| | 05:35 | Remember that we put a Rule on this field
that said it has to look like an email
| | 05:40 | address, and it doesn't right now
because I forgot the .com, but I can go
| | 05:44 | modify this and fix it.
| | 05:52 | I can change the Date. I'm required to
put in a Post Title and a Description.
| | 06:04 | I think that's everything I need
to be able to submit my form.
| | 06:09 | Notice that when I'm in a Rich Text box
I have Rich Text tools. I'll need to
| | 06:12 | leave that Rich Text box to be able to
Submit my form. There it is, right here
| | 06:18 | in my SharePoint Library.
| | 06:20 | Here's my information from my promoted
columns. Here's my name based on the
| | 06:25 | settings that we provided, when we set
up the Submit Options; Post_Request, my
| | 06:30 | last name, today's date, and the name of the post.
| | 06:33 | And this little green special asterisk (*)
looking thing, simply means it was new.
| | 06:37 | It will hang around there for amount of time
set on the server, normally till midnight tonight.
| | 06:42 | So that's how we republish and promote
our columns from InfoPath through our
| | 06:47 | Schema right out here to SharePoint.
| | Collapse this transcript |
| Changing SharePoint library views for InfoPath forms| 00:00 | You'll find several excellent SharePoint
courses in the lynda.com library.
| | 00:05 | Teaching you all about SharePoint
libraries is beyond the scope of this
| | 00:09 | InfoPath course, but I do want to show
you two specific things that you should
| | 00:13 | know about libraries.
| | 00:15 | One is how you could modify this view
so that the columns that we just promoted
| | 00:20 | actually have some precedence.
| | 00:21 | And the second is how you would go
into a library and edit the form that's
| | 00:26 | already there. So in this movie were
going to talk about how we change the
| | 00:31 | view here in SharePoint.
| | 00:32 | In a SharePoint library I have a tab
that says LIBRARY and Library Settings.
| | 00:37 | Now if you were able to create the library
you also have access to its settings.
| | 00:41 | I'm going to choose Library Settings
and the first thing is, I want to modify
| | 00:45 | the name. That's because I asked
you not to leave a lot of spaces here and
| | 00:50 | this is where we're going to fix the name
that we provided from Web Host Req all
| | 00:56 | in CamelCase to WebPostRequests for example.
| | 01:00 | Also, if you want this library to
show up here on the list on the left of
| | 01:07 | important things in this particular site,
that's called the quick launch and
| | 01:10 | you would turn this on.
| | 01:12 | If you don't list this library on the quick launch,
you need to provide another
| | 01:16 | way that your users can find it. Let's click Save.
| | 01:20 | Notice now we're in the newly named Web
Host Requests library and the URL that we
| | 01:26 | created based on that shorter name
is still the URL for the library.
| | 01:29 | Now what I'd like to do is I'd like
to modify the view of the library and
| | 01:34 | there's a view that exist called All Documents
and a built-in view called My Documents.
| | 01:38 | My Documents are documents that have
something to do with me, that I either
| | 01:42 | created or modified those forms.
| | 01:44 | But let's see how we would modify All Documents.
| | 01:48 | What we see here is a list of all of
the different columns that are currently
| | 01:53 | included. So if I don't want to show
who a form was checked out to, because
| | 01:57 | normally forms aren't checked out, I
would turn that off. And if I didn't want to
| | 02:01 | include the last name any longer because
it is included in the field name, I can
| | 02:06 | turn that off as well.
| | 02:08 | We have an icon at the start that's
linked to the document, that means the user
| | 02:11 | can click it to open up this form and
see it. Then we have the document name
| | 02:16 | based on the specifications that we provided.
| | 02:18 | If the next thing that you want to have
for example is the department, we
| | 02:22 | simply move that up so this is one this is two
and we can make department for example number 3.
| | 02:29 | I don't want to show today because it's
included in the file name. The Proposed
| | 02:33 | Area we'll leave here and
the date it was worked and OEC.
| | 02:37 | But I would like these Modified and
Modified By items to follow these.
| | 02:41 | So I'm simply going to move them further down
the list into about the 10th and 11th place.
| | 02:47 | Now it doesn't matter that there are
other items inbetween because only the
| | 02:51 | checked columns are going to be displayed in the view.
| | 02:54 | So this is how I change a view here in
SharePoint to better see what I have on a list.
| | 03:00 | I also have the ability to sort these,
right now it's sorted by name.
| | 03:04 | Maybe what I'd like to do is instead of
sorting by name, sort by when they were
| | 03:08 | created and even perhaps show the newest ones on top.
| | 03:12 | I can do multi-level sorts, I can filter
the view that's called My Documents is
| | 03:17 | actually a filtered view based on documents just for me.
| | 03:21 | And I'm all set I'm going to click OK.
| | 03:23 | Now what I have is simply the Name, the
Department, the Proposed Area, there isn't one.
| | 03:28 | The date it was work on by OEC
and the last time it was modified.
| | 03:31 | As I said, there are entire SharePoint
courses in the lynda.com library, but
| | 03:36 | this quickly lets you see how you can
modify a view for a SharePoint Library
| | 03:41 | that you've created by publishing an InfoPath form.
| | Collapse this transcript |
| Modifying a form library template| 00:00 | I have learned something while I've
been publishing this form and working with it.
| | 00:04 | I actually I think I don't necessarily
want the Date in this form, Name.
| | 00:09 | I might want to make some
other changes here as I go along.
| | 00:12 | So the question now becomes, how do I modify this?
| | 00:15 | Well we've got two options. One, I still have
the form in the version that I published last.
| | 00:22 | And so, that's great. I can just go back
into that same form modify it and republish it.
| | 00:28 | But what if I'm in an environment
where I wasn't the person who created this
| | 00:32 | form to begin with? Or what if two or
three of us are modifying this form and
| | 00:37 | despite our best efforts or maybe
the efforts weren't that good, we don't
| | 00:42 | necessarily know, who has the
version, that was last published?
| | 00:47 | Now it's really helpful if somebody is
keeping a library of the last published
| | 00:52 | versions of the form, either in
SharePoint or outside of SharePoint.
| | 00:56 | But if you don't know what you need to
be able to do is go back and actually get
| | 01:01 | the form that is the template in this library right now.
| | 01:04 | So if you're not sure where the last
published template is, or even if you
| | 01:09 | are, but you want to make sure that you're
working with the current one, this is how you do it.
| | 01:14 | Here in SharePoint I click on LIBRARY
and I choose Library Settings. I want
| | 01:18 | to go directly to the Advanced settings.
Here's the document template, it is
| | 01:23 | named template.xsn. It didn't matter
what I called it, the default template in
| | 01:28 | every SharePoint library is named Template,
which begins to give you an idea of
| | 01:34 | how hard it is to keep track of what the last one was.
| | 01:37 | So if I want to edit this template
and I have permission I just click Edit
| | 01:41 | Template. I might be prompted, that's
fine, here I am in the current template.
| | 01:48 | I can make whatever changes I need to
make save a copy of it to wherever I'm
| | 01:52 | keeping that safe source of all InfoPath templates,
and then publish this again back in the same library.
| | 01:59 | So that's one method that I can use,
and it's really the best method.
| | 02:04 | Let's return to SharePoint though
because I want to show you one other thing
| | 02:08 | while we're here that's worth noting.
| | 02:10 | Some of the people who complete your
forms will have InfoPath form filler,
| | 02:15 | some of them will not.
| | 02:16 | And so, the question of how this behaves
is determined in two different places.
| | 02:21 | When a user opens the library and says,
I want to create a new instance of this
| | 02:25 | form based on the template. Does it open in
InfoPath Filler or does it open in a browser?
| | 02:30 | Here is where you set it locally for
the library. So you can say, you know if
| | 02:35 | they have InfoPath Filler, I want you
to use it. Or you can say, no matter what
| | 02:39 | they have I want you to use the browser.
| | 02:41 | The default however is to say what does
SharePoint say, because you're SharePoint
| | 02:46 | administrator will have set a default
for all of the forms across all of the
| | 02:51 | libraries in this site collection.
| | 02:53 | So by default, whatever the setting is,
which in this case is, Open in the browser
| | 02:59 | ignore that they have InfoPath Filler,
that's the setting that will be used for
| | 03:04 | this library by default.
| | 03:05 | But if for example, you're SharePoint
administrator has set Open in the
| | 03:10 | client application, and you have a reason to
require people to use the browser or vice versa.
| | 03:15 | This is where you would change that setting,
another one of the advance library settings.
| | 03:20 | When you're all done with these settings
you can click OK, if you've changed any.
| | 03:24 | But if you're editing the form right now,
this page will stay open here in SharePoint
| | 03:28 | while we edit the form and republish it
again to save our most recent
| | 03:33 | changes to the template back to this library.
| | Collapse this transcript |
| Publishing a form to a SharePoint list| 00:00 | I've mentioned several times in this
course that if you want to be able to
| | 00:04 | create a form for a SharePoint List, you need
to choose the correct template to do that with.
| | 00:08 | So it seems like maybe I've been
teasing you about that, but let me show you
| | 00:12 | how you actually do it.
| | 00:14 | First you need a SharePoint List.
If you don't have one, when you have one
| | 00:18 | later you can return here. Let me
still show you the steps. If you have a
| | 00:22 | SharePoint List, whatever list you
have, go ahead and navigate to it.
| | 00:25 | And what I'll need you to do is capture
part of the address, specifically the
| | 00:29 | part that ends with the name of the list.
The way our site is set up we have the
| | 00:34 | URL followed by /lists/employees, so
there is our main URL. As soon as you
| | 00:41 | click in it you're going to go all the
way to the end, you can just hit the Home
| | 00:46 | key to back up though.
| | 00:47 | And I need all of this plus the slash
at the end, but I can always type it.
| | 00:52 | So I'm just going to go ahead and copy that.
| | 00:54 | Let's switchover to InfoPath
and choose New SharePoint List.
| | 00:59 | When we do, remember that you're asked
to provide information about where you're
| | 01:04 | SharePoint List is. I had you copy
the entire URL all they way to the list,
| | 01:09 | mostly to make sure that you're in the right site.
| | 01:12 | We could have just done this much, the
first half, but if you have sub sites, if
| | 01:16 | you go all the way all out the end of the
list, you'll usually be in pretty good shape.
| | 01:21 | Notice that SharePoint provided enough
information in InfoPath that it has no
| | 01:26 | trouble telling you where you are.
| | 01:28 | And I actually can create a brand-new
list from here in the same way that I was
| | 01:32 | able to create a new library, by
publishing a form. Because our InfoPath forms
| | 01:38 | have schemas, and those can be
used to create libraries and list.
| | 01:41 | But I want to customize an
existing list and it's this one.
| | 01:45 | Here's a good reason to have great
descriptions in SharePoint, this let's me
| | 01:49 | know where I am. I'm going to click Next.
| | 01:52 | I don't have to configure a data
connection for this. I don't have to set up
| | 01:57 | a submit. All of that is done for me
because the list already exist and I'm
| | 02:01 | selecting the list.
| | 02:02 | I have one choice here. And the choice is,
do I want to be able to manage
| | 02:06 | multiple list items? Do I want to have
repeating sections set up so that a user
| | 02:12 | could work with multiple list items in one form?
| | 02:15 | I don't want that in this case, I want
to be able to create a form that's going to
| | 02:20 | allow my user to be able to enter one item.
| | 02:22 | But you can imagine particularly for
a form, where we might view items that
| | 02:27 | having multiple items works well. So
I'm going to go ahead and click Finish.
| | 02:31 | And what I have are all of my fields
from SharePoint right here, and here's my
| | 02:37 | form. Now I can begin to modify this
form really however I would like. I can
| | 02:42 | show an advanced view and this looks
amazingly like the view that we've been
| | 02:46 | used to working in, including being able to show details.
| | 02:49 | The types of field names are different.
We have for example a CounterType. We
| | 02:54 | didn't have a CounterType in InfoPath,
but that's simply counter a TextType, a
| | 03:00 | DateTimeType, you'll figure this
out though, it's not that different.
| | 03:03 | And so, I can say well I'd like to have
Full Name be shorter for example, and I
| | 03:07 | can modify this. I can set up a background.
I can decide that I'd like to insert
| | 03:12 | a table to have this look a particular way.
| | 03:15 | I could take my First and Last Name fields
and concatenate them to create the Full Name.
| | 03:20 | So everything that you already know how
to do, you can do here. This is actually
| | 03:26 | a default form that's been created by
SharePoint. So if we want to do something
| | 03:31 | different here you should feel free to do that.
| | 03:33 | If I want to modify my table, all these
same tools that I'm used to using, so I
| | 03:38 | could decide that I want to split
this cell into two columns, this one the
| | 03:42 | same. And say, well you know we're going to put
the First and Last Name fields in the same place.
| | 03:49 | Here's my Last Name, here is my First
Name and just put Name here. So I can
| | 03:54 | modify this really however I'd like to,
here is my name I don't need this any longer.
| | 04:01 | So whatever modifications you want to
make to the form go ahead and make them.
| | 04:06 | When we're done, it knows where it comes from.
| | 04:08 | I can check on the Design Checker.
| | 04:13 | No problems and it's actually gone
right to the server to ask that verify on
| | 04:17 | server checkbox is fired up.
| | 04:19 | So there aren't any errors, I haven't
created any errors, that's great.
| | 04:23 | Now we can go back and Publish our form.
| | 04:25 | Again, the submit method already exists
and all I need to do is Quick Publish.
| | 04:30 | So here we're back in our Employees list
and when a user says that they want to
| | 04:36 | add a new item to the list, now they'll
actually get the form that we changed.
| | 04:41 | I only made one change.
| | 04:42 | I collapsed Name here onto one line,
but notice that I was editing the form for
| | 04:47 | this list, which is pretty cool.
| | 04:49 | I could make all kinds of other changes here as well.
| | 04:52 | So know that you can modify the template
used for any SharePoint List
| | 04:58 | in the same way that you can modify a
template that we're going to use for our
| | 05:02 | SharePoint Library.
| | 05:03 | One more thing; we don't have to start in
an InfoPath we can start here in SharePoint.
| | 05:09 | SharePoint allows me to click here where it
says LIST, go to the Customize List group,
| | 05:14 | and notice the icon I see, for Customize
Form. It's my InfoPath designer icon.
| | 05:21 | So I can actually click this, I might
be prompted, you probably will be to say
| | 05:25 | OK, but here comes our form back for
me to modify right here in InfoPath.
| | 05:30 | So if you're already in SharePoint
you don't need to copy that URL.
| | 05:34 | Simply go back to the list and say I want
to edit the form for this list using InfoPath.
| | Collapse this transcript |
|
|
14. Advanced Data TechniquesUnderstanding data connections| 00:00 | In this chapter I'm going to show you
how to get data from external sources
| | 00:05 | here into your form in InfoPath.
| | 00:07 | We'll take a look at connecting to a
SharePoint List, which you could also use
| | 00:12 | those same tools to connect to any
other SharePoint List or library.
| | 00:16 | I'll show you how to connect to an
XML file and how to bundle that XML file
| | 00:21 | right with your form, so it's convenient for offline use.
| | 00:24 | And we'll talk about how to connect to a database;
| | 00:27 | this could be in Microsoft SQL Server
or in Microsoft Access.
| | 00:31 | So let's look at all of the data connection
possibilities before we begin though.
| | 00:36 | In my opinion the best data always is
a solid data source, a good source of
| | 00:42 | truth that you don't have to be responsible for updating.
| | 00:45 | So when we get external data, we're
really looking at this group here.
| | 00:50 | Data Connections will show us all of the
connections and it actually sits between
| | 00:54 | Get External and Submit, because it will show
us all of the external data connections,
| | 00:59 | whether its data coming into our form
or data being submitted somewhere else.
| | 01:04 | I can start with a web service,
this is high end stuff and it's great.
| | 01:09 | So if you have expertise in your organization
and your IT department to be able
| | 01:15 | to write web services to go reach out
and touch your data and bring it close to you,
| | 01:19 | this is a great way to get data into an InfoPath form.
| | 01:25 | So you can inquire; are you creating web
services in your organization and often
| | 01:29 | they're created for the things that
are harder to hit. You might for example
| | 01:34 | have a particular accounting database or
a particular customer database, a vendor
| | 01:40 | database, really large sets of data,
transactional data in your organization,
| | 01:46 | accounts payable, accounts receivable.
| | 01:48 | Those types of databases, when folks
want to be able to work with them, they
| | 01:52 | often need to write web services or
other connections to move from one set
| | 01:58 | of data to another.
| | 01:59 | Now if your databases are old enough,
they might've done some direct coding that
| | 02:03 | says, we do a data dump.
| | 02:05 | When you hear that we do a data dump you're
not using web services; it's an older method.
| | 02:10 | But if you have web services don't be afraid to use them.
| | 02:14 | When you choose a web service you're
prompted to enter the definition of the web
| | 02:18 | service, and this is actually a URL that is provided to you.
| | 02:22 | If you enter that URL in a browser and
just press Enter, you'll actually see the
| | 02:27 | web service. It will look a lot like for example an XML file.
| | 02:31 | You might also have a UDDI which is an
index of all of the various web services
| | 02:38 | that are available to you, so that you could go search.
| | 02:41 | So talk to your IT folks about whether
you have web services, whether you have a
| | 02:45 | UDDI to search for them, or whether
they'll just give you here, here's your URL
| | 02:50 | for this SOAP web service.
| | 02:52 | Now the web service will almost always
do multiple things; it'll have what are
| | 02:57 | called methods. So if you want for
example to get the vendor name there may be a
| | 03:01 | method in the vendor's web service
called get vendor name. Another method in the
| | 03:05 | vendor's web service that's
called get vendor address and so on.
| | 03:10 | Our next choice is SharePoint List.
You obviously have to have a
| | 03:14 | SharePoint Server for this;
| | 03:15 | you'll be prompted to enter
information about the SharePoint Site.
| | 03:18 | You need to have permission to that
site because you'll be prompted and it will
| | 03:22 | use your credentials. That's also
true for all of your users. So when you
| | 03:27 | connect to a SharePoint List, you need
to ensure that your users have access,
| | 03:32 | have read permissions at least to the
data that you're linking to in the form,
| | 03:36 | because its their login that will be
used as the credential to pull the data.
| | 03:42 | We also have the ability to get information
that's been saved as a connection in
| | 03:47 | SharePoint. This is much like web service,
because somebody is thinking ahead and
| | 03:52 | has gone to the trouble of going out
and saying, well we should be setting up
| | 03:56 | some data connections because here are
some data stores that people are going to
| | 04:00 | want to hit on a regular basis.
| | 04:02 | So you can choose a site or you need to add the site.
| | 04:06 | If it's not there you're not going to be able
to go visit the site and get your data connections.
| | 04:12 | If you have a store of data connections
in SharePoint then this is how you
| | 04:16 | would use one of those. Then we have
two other possibilities; From a Database
| | 04:20 | and From an XML File.
| | 04:22 | So if you have a database and it's local
to you, you don't need a lot of help to
| | 04:27 | do that and you don't need a
lot of help to use an XML file.
| | 04:30 | So unlike web services and data
connections stores in SharePoint this is
| | 04:34 | something that many developers can use.
| | 04:37 | When you choose from database you're
prompted to select a database. And you can
| | 04:41 | create a connection to SQL Server, you
can just go browse and find your database
| | 04:46 | because it's looking for all data sources here.
| | 04:49 | So for example, you'll find that in your exercises file,
| | 04:57 | you have a database from Microsoft
Access and it will find it, not a problem,
| | 05:01 | you just need to know where it is.
| | 05:03 | But there is a beauty to clicking on
Connect to New Data Source here, because
| | 05:08 | not only can you access, Access and SQL
Server, but you can also access the OLE
| | 05:15 | database provider for Oracle running
through Access, and almost any other large
| | 05:21 | database has some driver to connect to it using ODBC.
| | 05:26 | So if you have a database that you
need to connect to, this is the way you're
| | 05:30 | going to get there, unless someone has
built SOAP services, rest web services or
| | 05:36 | perhaps SharePoint data connections for you.
| | 05:39 | Once you've chosen where you're going,
you have lots of information you now
| | 05:42 | need to put in to establish this data
connection. You only have to do it once
| | 05:46 | but you have to do a right.
| | 05:48 | And if you don't know what these
settings are, this is a great time to have a
| | 05:52 | conversation with the database administrator
in your IT department and say, I
| | 05:56 | need a connection. They'll actually
have some feelings about how you should be
| | 06:00 | doing this, and they'll help you set it up
or they'll tell you that they won't.
| | 06:04 | The last possibility here is an XML file.
| | 06:07 | You can create XML using very simple tools
like the Notepad that comes with Windows.
| | 06:13 | You can also create XML using Microsoft Excel.
One of the major ways you'll get
| | 06:19 | an XML file, is that some large
database is able to export XML.
| | 06:24 | So let's say, for example we wanted a
list of all of our vendors. We could ask
| | 06:29 | our database administrator could you
export this in XML for us. And that might
| | 06:34 | be an alternative that would be even
better in some particular circumstances.
| | 06:39 | These are our methods; if you have
data somewhere in your organization that's
| | 06:43 | not sitting for example in Microsoft Word,
but its sitting in any good institutional database.
| | 06:49 | If you have data in SharePoint, if you
have data can be exported to XML, if you
| | 06:55 | have data that can be connected to from
SharePoint or with a SOAP or rest web service
| | 06:59 | you can bring it into your form here in InfoPath.
| | 07:03 | And in the rest of this chapter I'll show you
three specific examples of how to do this.
| | Collapse this transcript |
| Creating a data connection to a SharePoint list| 00:00 | I have a simple form here. You can start
with this form as well and to actually
| | 00:05 | create this dropdown connected to
SharePoint list you need to have a
| | 00:08 | SharePoint list somewhere.
| | 00:10 | My particular list is a list of departments.
Yours may be something else.
| | 00:14 | If you don't have a SharePoint site just hang
out with us and watch stay around for the ride.
| | 00:19 | So I have a form where a user is going
to enter a first name and the last name
| | 00:24 | and then they're going to enter
their department. I want to have some
| | 00:28 | really standardized data. I have a list of
departments that's sitting out in SharePoint.
| | 00:31 | So what we're going to do is right-click
change this control to a Drop-Down List Box.
| | 00:35 | I won't make it a Combo Box. I
don't want them to edit that list sitting
| | 00:39 | out there, but there's my Drop-Down
List Box. Now let's go ahead and check
| | 00:44 | its properties and rather than entering
our choices manually or getting choices
| | 00:48 | from fields in the form, we're going
to go to an external data source.
| | 00:51 | We don't have that data source connected
here yet, so what we need to do is add it.
| | 00:56 | We're going to create a new connection to receive data.
| | 01:00 | InfoPath knows if it's a dropdown we're
not submitting data through that dropdown.
| | 01:05 | I could search for connections on a
Microsoft SharePoint server, but this is
| | 01:09 | actually looking for a specific type of
connection that's been set up as opposed
| | 01:14 | to going and heating the list,
which is what we're going to do.
| | 01:17 | So I'm going to remain here with the default;
| | 01:20 | create a new connection to receive data
and click Next. Notice that my
| | 01:23 | choices here include a SharePoint
list or library, as well as two different
| | 01:28 | types of web services, SQL Server and an XML
document, which we'll see later in this chapter.
| | 01:34 | I'm going to click Next, and it says
where is your SharePoint site?
| | 01:38 | It's good if you slide out at this point
and copy the URL to your site and come
| | 01:43 | back here unless you're used to typing
it all the time. That's being fired by
| | 01:47 | Control View when I do that. Isn't that interesting?
| | 01:50 | So this is the list that I want. I can
simply provide this information here.
| | 01:57 | Because when I do what's going to
happen is SharePoint is going to search and
| | 02:01 | look for all of the different list
that are available on the site and it is
| | 02:05 | actually this list that I'm
using and I'm going to click Next.
| | 02:09 | Now it says the Data Connection Wizard
advises us that this list has fields
| | 02:13 | that we can choose.
| | 02:14 | Notice there's one field already chosen,
that's because in order to provide
| | 02:19 | information through this connection
SharePoint needs to use the ID.
| | 02:24 | That's going to be the way that it
connects back here to InfoPath.
| | 02:27 | But it might be that I want more
| | 02:32 | than one, and I would like these departments
sorted, if I could, in alphabetical order.
| | 02:37 | I had to scroll up to get to that D's
at the top of the list. I'm going to click Next.
| | 02:43 | Notice it says when a query occurs,
when you're working with the form then the
| | 02:48 | returned data is stored locally for off-line mode.
| | 02:51 | Let me unpack that for you.
| | 02:53 | If you're working on a tablet PC and
you go query this data, it actually sticks
| | 02:58 | around so that when you're not online
you actually have the contents of this
| | 03:03 | dropdown available.
| | 03:04 | So if you would like to have it stored in that way,
go ahead and click this checkbox.
| | 03:10 | Several things to think about here.
| | 03:12 | One is if this is data that sensitive
data you don't want it stored locally,
| | 03:17 | so you wouldn't click the checkbox.
| | 03:19 | Or if this is data that changes all the time
you don't want to risk working with
| | 03:24 | an off-line copy that's incorrect. You
would not click this checkbox. Or if this
| | 03:29 | is a list of all 14,000 customers in
your company, you don't want it taking up
| | 03:33 | space on your device. You wouldn't click
this checkbox for your users. But this
| | 03:38 | is a relatively short list, fewer than
40 items one column of information. I'm
| | 03:43 | going to say go ahead and store it here,
so when someone's working off-line they
| | 03:47 | still have access to data. I'm going to click Next.
| | 03:50 | I can provide a name for this connection.
| | 03:53 | If I have a number of different connections,
some to SharePoint, some to XML, some
| | 03:57 | to other places, I will usually precede
my SharePoint data connections with a
| | 04:02 | lowercase sp, so I know where they come from.
| | 04:04 | Our next checkbox is interesting. Let's
go back to that really large data source.
| | 04:10 | Let's imagine that my users opening
the form, so that they can retrieve some
| | 04:14 | information or fill out some
information while they're sitting with the client.
| | 04:18 | Before they can even do anything
they have to wait for 14,000 customer
| | 04:24 | records to come rolling into their form.
Not so much.
| | 04:28 | So if I don't want that to happen what
I'll do is turn this checkbox off.
| | 04:33 | That way we won't have data flowing into this
form until a user clicks a button. I had
| | 04:39 | to provide a button for them to do that,
or I can say it's only a few rows of
| | 04:44 | data go grab it automatically. I'm going to click Finish.
| | 04:48 | Now what I get is a data source that's
been configured; that says this is where
| | 04:53 | we find the entries. This is again XPath
describing the XML information.
| | 04:59 | It's saying just pull down the title, show
it to me, and when I choose it, use that
| | 05:04 | same title as the value.
| | 05:05 | In other words, if I choose accounting,
what will be stored will be accounting.
| | 05:10 | I could also configure this so that I was
choosing two different fields and my
| | 05:14 | user was choosing for example, a department
name, and if I had also stored who
| | 05:19 | the manager the department was, we
could then say choose the department, let's
| | 05:24 | store the manager name here in the form.
| | 05:26 | So different things that I can do with
this; this is exactly what I want though.
| | 05:30 | I'm going to click OK. Let's see what
this form now looks like in Preview.
| | 05:34 | Because I'm working in a unique
development environment where I'm not sitting
| | 05:37 | in the same place as my server is,
I'm getting a potential security concern
| | 05:41 | flagged to me. I'm just going to say yes,
I want to connect and let this go by.
| | 05:46 | I'm going to be asked for my credentials,
which is the more normal thing that I'm asked for.
| | 05:54 | The forms open, remember I told that
it could go get data right away. So it
| | 06:00 | should already be here when I get to the dropdown.
And there it is my data from SharePoint.
| | 06:06 | I love this data connection. Because
somebody else is maintaining this list,
| | 06:10 | I don't need to. I don't need to type it in.
I don't need to update it to be able
| | 06:14 | to maintain my form when departments change.
| | 06:17 | To me this is the perfect way to work
with the data set in SharePoint,
| | 06:21 | data maintained by others.
| | 06:23 | This is how you create a dropdown
list that accesses external data from
| | 06:28 | SharePoint in InfoPath 2013.
| | Collapse this transcript |
| Creating a list or combo box based on an XML file| 00:00 | In this movie I want to talk to you
about your option of using an XML file
| | 00:05 | as the basis of your list that
you present it in InfoPath form.
| | 00:09 | So there are a couple of scenarios
where this is the best way to do this.
| | 00:14 | One is you need data that you either
don't care that it's a little bit aged
| | 00:19 | or that you know that it's fresh
because it's only updated periodically.
| | 00:23 | For example, the new set of programs
that comes out every quarter. It doesn't
| | 00:29 | change till the end of the quarter
and then you have a new program guide.
| | 00:33 | Or a vendor list that is updated only
periodically, the generally used vendors
| | 00:38 | that are available from purchasing. There
are lots of vendors, but those that are
| | 00:42 | used most generally across the organization.
That list of preferred vendors is updated
| | 00:47 | perhaps once a month or once every six months.
| | 00:51 | Now the reason that it makes sense for us
to use an XML file is more than this though.
| | 00:57 | It also is useful when I know that I'll
have to use the form off-line. So I want
| | 01:02 | to use an InfoPath filler form, because
if I was going to use the form online
| | 01:08 | I would just keep a list someplace in
SharePoint. But I want off-line use for list
| | 01:13 | and it's a list that I don't want to
have to go into my forms and modify
| | 01:18 | dropdown lists. Maybe more than one
dropdown relies on the same data set or
| | 01:24 | it's possible that it's just a really long list.
| | 01:26 | Off-line use and I have a data set that is
good enough all the time. Here's how we do this.
| | 01:33 | I want a place a Vendor dropdown out
here in my form right here where it says Vendor.
| | 01:38 | So let me just go grab a dropdown
and pull it out here that looks good
| | 01:44 | and I'm going to right-click and change
this control to a Drop-Down List Box.
| | 01:48 | Now I'm going to right-click and let's set its properties.
| | 01:52 | This is an external data source and I'm
going to add a data source. It's going
| | 01:56 | to be used to receive data and
it's going to be an XML document.
| | 02:01 | Now there are various ways to create
an XML document. You can create an XML
| | 02:06 | document from Microsoft Excel by
creating a worksheet and then saving it.
| | 02:13 | Often what you get is a lot more XML than
you want, many more tags than you
| | 02:18 | would like. But if you have a really
regular table saved in Excel, it's a good
| | 02:24 | candidate to save as XML.
| | 02:26 | You can also use a tool like XMLSpy,
which is not a free program, but there's an
| | 02:32 | old XML Notepad kicking around from
Microsoft that still works; and XML++, which
| | 02:39 | is also free that you can use to create
some XML. But the odds are good that we
| | 02:43 | have this XML, because we have data in
SQL Server or another database and we're
| | 02:48 | exporting it from there to create the
XML file on a periodic basis. We're going
| | 02:54 | to go choose our XML document and I can go get it,
but if I do then I'm connecting to it where it is.
| | 03:01 | What I'd like to do is bundle it along
with my template Resource files in the
| | 03:06 | form template right here. I'm going
to click Resource Files, click Add and
| | 03:12 | then I'm going to go out to my exercise
folder, same place you'll find this file,
| | 03:19 | and its called vendors.
So now this is going to be in the form template.
| | 03:25 | So before we leave here, let me tell
you that when I want to update this
| | 03:29 | I'm going to call this the same name over
and over again, I can't call it vendors
| | 03:33 | quarter one, vendors quarter two and so on,
because it's need to have the same
| | 03:38 | name for the connection.
| | 03:39 | But I'm going to make sure that I have a
new vendors file, and each time I do the
| | 03:43 | process is to remove the one that's here
and then to add the replacement.
| | 03:49 | That's how I get the fresh data each time
and then I republish my form template.
| | 03:55 | Say OK, click Next name for the data connection.
| | 03:59 | Now in the same way that normally I'll
put an sp in front of a SharePoint data
| | 04:04 | connection, I'll usually use XML
in front of an XML connection.
| | 04:09 | This checkbox allows me to automatically
retrieve data when the form is open.
| | 04:13 | Well, if I'm going to SharePoint or
someplace else I care deeply about whether
| | 04:17 | this is checked, but when the form is open
this data had better be here.
| | 04:21 | It's in the form, so I'm going to go ahead and click Finish.
| | 04:24 | So now I have a data source and I need
to choose. And what I'm going to choose is
| | 04:29 | I'm going to choose vendor as my set
of entries right here; and then within
| | 04:36 | vendor I can choose the company, the
contact name, whatever I want.
| | 04:40 | It grabbed company because it was first
and that happens to be right.
| | 04:44 | Notice also that in any of our data sources
if we have a source for example that
| | 04:49 | list lots and lots of transactional records,
but I only want unique names, I can
| | 04:54 | do that right here. That's not a bad thing to do.
| | 04:57 | I am going to go ahead and click OK.
Let's jump off into preview and there are
| | 05:02 | my three vendors, right here.
| | 05:05 | So anytime I need to swap this list out I can.
I have only three on it now,
| | 05:11 | because it's a small sample; but this
XML file can have as many in it as it wants.
| | 05:15 | Let me show you one other thing as well.
| | 05:17 | I am actually going out to our exercises folder;
| | 05:20 | I want to show you what this vendors list looks like.
| | 05:22 | Now if I have for example, Notepad on my
computer, that's a great way to show it.
| | 05:27 | So I could choose to show it to you
in Notepad. I can choose to see it in
| | 05:31 | Internet Explorer and browsers
actually do a really nice job showing XML.
| | 05:37 | Here's what my XML looks like, it's
human-readable text, and it also can be
| | 05:42 | collapsed or expanded. I have vendors
inside of that I have a vendor another
| | 05:47 | vendor, another vendor.
| | 05:49 | This isn't difficult to create, but again,
most of the time you're going to have it,
| | 05:54 | because you have received that file
from another system that's exporting it.
| | 05:58 | So you can use XML as your source for
any of the standard list controls; your
| | 06:03 | multi-pick list, your drop-down list,
your list box and even your combo box.
| | 06:07 | And in doing so, you have a file that
can be swapped out each time your data
| | 06:13 | changes, making maintenance easier than if
you had typed all of these items into the list.
| | Collapse this transcript |
|
|
15. Using Advanced TemplatesCreating and using template parts| 00:00 | InfoPath template parts are form sections
that you save, so that you can reuse them.
| | 00:06 | Now it would be great if you could
save these like you do templates in
| | 00:10 | Microsoft Excel or in Word, where you
already have something that exists and you
| | 00:14 | think oh, that's cool I could save that as a template,
then you back some things out and save it.
| | 00:19 | Here in InfoPath we have to actually have
the thought before we create the template.
| | 00:24 | There are three different types; there
is a template that's created for use in
| | 00:29 | any kind of form including a browser-
based form; a template that will give us
| | 00:33 | access to the controls that only work
with Microsoft InfoPath filler; and then
| | 00:37 | finally if we have a schema or an XML file,
we can create a template based on
| | 00:44 | that file in the same way that we would
create a template based on a field list.
| | 00:49 | So let's go ahead and create a template part
using the blank template.
| | 00:56 | For the very first time, we jump in here
and we don't even have a page layout.
| | 01:01 | That's because we may not have a page.
We're actually creating an alternate type
| | 01:06 | of control here when we are all done.
It needs some fields. Let's create a
| | 01:12 | template part that would encapsulate
the information that we would want to
| | 01:16 | gather from a forms user or the submitter.
| | 01:18 | I am going to add first a user group
or it could be a submitter group, if it's
| | 01:23 | a travel form a traveler group, at the very top
and then we're going to add some fields.
| | 01:30 | FirstName that's a text field, LastName
that's another text field, Email another
| | 01:39 | text field and let's say for example
an Address group. This is a candidate for
| | 01:46 | could be repeating right, because you could
have a home address and a business address,
| | 01:49 | but we won't. StreetAddress, City,
State or Province, Country, PostalCode all good.
| | 02:11 | Now that we have a field list we need to
decide how we would like this to appear.
| | 02:16 | Let's go ahead and insert a table to
hold this information, perhaps two tables.
| | 02:20 | Let's start with the table at the top
for first name, last name and email and
| | 02:24 | then an address table below. And we would
like to have a heading that says users.
| | 02:29 | So I'm thinking that we might
work with this two column set.
| | 02:37 | So here's the FirstName. We're going to get
a label and a control; LastName and Email.
| | 02:43 | I am simply going to delete here our
Add label and control. And then we want to
| | 02:51 | have an address. So I'm going to have a
street address right here. And we're used
| | 02:59 | to addresses looking in a particular way.
So here's our city, we'll move this
| | 03:05 | control and place it underneath.
| | 03:08 | When I make this control smaller that
works fine, but now I actually want to
| | 03:13 | separate this table a little bit.
I'm going to split this into three cells.
| | 03:21 | There's my city it splits them evenly
it doesn't pay attention to the fact that
| | 03:25 | I've actually already taken up some
space here. I want my state or province.
| | 03:32 | I don't need all of this information in
exactly this way, I can just put state.
| | 03:39 | Then I'd like postal code, and I'd like a country.
| | 03:47 | Now I'm struck that I really could put
the country here or here, but I'm going
| | 03:51 | to put it below. There's my country,
it takes up a little more space than I
| | 03:57 | would like. I could make some changes
to this, so it's a little more optimal,
| | 04:01 | but this looks pretty good.
| | 04:03 | Now what else can I put in a template part?
| | 04:05 | I can put in formatting. I can put in
rules. I can add anything to a template
| | 04:10 | part that I would actually add
to my form template if I wish.
| | 04:13 | I could have dropdown lists. I could
have data connections. I'm going to come
| | 04:18 | over here though and I'm going to go
ahead and check my design, because we're
| | 04:22 | going to use this in many places.
It says that there are no errors or messages.
| | 04:26 | To check the temple part again, I would
choose Refresh. And I'm now ready to save this.
| | 04:32 | Notice when I save it, I'm not actually
saving this template part as a form.
| | 04:38 | I'm saving it as an InfoPath 2010 web browser
template part, which is an XTP2 file type.
| | 04:47 | I need to give it a better name than this.
So let's name this for example
| | 04:52 | UserInfoBlock, that makes sense to me,
and we will save this.
| | 05:00 | Now what I can do is I can go up to
my list and I can add or remove custom controls,
| | 05:05 | I'm going to add a template part
and it wants to know where my file is.
| | 05:09 | It's right here, it actually is going to
go exactly back to that same
| | 05:14 | documents folder I put it in. So if I
put it someplace else I need to remember
| | 05:18 | where I put it. And I'm going to
click Finish this is now been added to my
| | 05:23 | controls task pane and then click OK.
You might wonder where that is.
| | 05:29 | Well, let's create a new form. I'm going
to go ahead and close this.
| | 05:34 | Let's create for example a new Blank Form
and let's say at the top I'd like to be able
| | 05:39 | to use this. So here it is my UserInfoBlock.
When I click check what I get.
| | 05:46 | I don't just get controls, I don't just get
controls and formatting, I get my field list.
| | 05:51 | Isn't that amazing?
| | 05:53 | So imagine if I'm creating a lot of forms
with user information in them, the
| | 05:57 | kind of time I have just saved.
| | 06:00 | If I had particular attributes that I
wanted to have for any of these, whether
| | 06:04 | they were required fields, whether
they had limits, any of the different
| | 06:09 | attributes that I assigned to my fields
are going to be saved in the template in
| | 06:14 | any formatting or rules that I
provide out here in the form.
| | 06:17 | If you are creating lots of forms, before
you jump in and say, wow I'm halfway done
| | 06:22 | and I'm excited, before you even
create five or six forms, I would love you
| | 06:28 | to think about what the forms have in common
and create some template parts that
| | 06:33 | will make your forms easier to
create an easier for your users to use.
| | Collapse this transcript |
| Importing an Excel form| 00:01 | In this movie, I'm going to show you how to
use the built-in form converter in InfoPath
| | 00:06 | to convert this Excel form to an InfoPath form
or at least the starting point for one.
| | 00:13 | If you have access to the exercise files,
you'll find this in the Chapter 15 folder.
| | 00:17 | If not, you might simply go into Excel
and put together a small form of your own.
| | 00:23 | This one has a formula here for example
and has some sums down at the bottom and
| | 00:29 | has a small table and some information up at the top.
| | 00:33 | The more of your form that looks like
this in some ways, the more happy you
| | 00:38 | might be with the results. But let's go
convert this and see what it looks like.
| | 00:42 | You have to close this form in order
to convert it, so I'm going to close it
| | 00:46 | here in Excel. We're going to switch
back to InfoPath and I'm going to choose in
| | 00:50 | the Advanced Form Template section
Convert Existing Form and choose the InfoPath
| | 00:55 | importer for Excel workbooks. Now I'll
click Next and I'm going to choose my
| | 01:00 | file and it is ExpenseReimbursement.
| | 01:03 | What do I want to import?
| | 01:05 | Three possibilities. The default is
Layout and form fields, so I'll get the table
| | 01:11 | and I'll get fields part of my schema
being built wherever Excel can find them.
| | 01:17 | I could choose just the layout, which
will give me layout tables with my labels.
| | 01:21 | Finally I can choose layout and
form fields, but say, you know,
| | 01:26 | I actually don't want you to convert cells
containing numeric data to text boxes.
| | 01:31 | So you have some choices;
| | 01:33 | I'm going to leave the default.
| | 01:35 | Normally I will use one of these first two here
in Excel and I'm going to click OK and Finish.
| | 01:43 | The Import Wizard tells me that we have
converted this and let's go take a look.
| | 01:48 | We have a lot of information over here.
So what I have got?
| | 01:53 | Name, email, department, I'd like to move that up a
couple of notches, move up.
| | 01:58 | Starting Date, move that down.
| | 02:05 | Ending Date, which is calculated. That's fine.
| | 02:08 | I'll replace this with a calculated field, but I'll still
need to have at my data source.
| | 02:12 | And Total Expenses, that works great.
| | 02:15 | Now I have a repeating table
and it got a little bit of it.
| | 02:18 | Here's my group for the repeating table,
that's the whole thing. Notice that we
| | 02:23 | have the group going way over here,
that's where it's bound at.
| | 02:28 | These two columns, which is not really clear,
why they're here or why they're here.
| | 02:31 | But that's okay we can clean those up
in a bit. And it got two of my repeating fields.
| | 02:37 | I got this one and I got this one.
| | 02:39 | This it thinks is field1 and this it thinks is field2
and it doesn't see them as
| | 02:44 | part of the repeating pattern.
| | 02:46 | I can if I wish simply delete this entire row,
that moves my repeating fields up
| | 02:53 | where I want them. I'm going to have to
then create fields for these three in my
| | 02:59 | repeating table. And everything else
here I'm basically going to get rid of.
| | 03:03 | Until I get way down to the bottom,
where I have another repeating table
| | 03:08 | that's supposed to show my totals,
but I won't need a repeating table there.
| | 03:11 | So you get the idea this is somewhat
what I want. The question of whether I'm
| | 03:17 | better off starting with this or better off
simply beginning from scratch, that's
| | 03:23 | an interesting question. I have a
lot of things to get rid of here.
| | 03:27 | Notice all these extra fields that were brought in.
On the other hand, I have a nice
| | 03:32 | looking repeating table, I just need to
go do some work with it. So that's how
| | 03:36 | this converter works.
| | 03:38 | It did really well for the section up here at the top.
| | 03:40 | I might have been better off had I
modified my workbook in Excel to get rid
| | 03:46 | of some of the extra fields. Let me
take a moment and do that. Let's pitch
| | 03:50 | this version, return to Excel open, our Expense
Reimbursement and simply say, you know what?
| | 04:01 | I'm going to get rid of everything else
down here, looks good.
| | 04:08 | I'm going to save this, close Excel.
Let's go back over here to InfoPath, choose
| | 04:22 | Covert Existing again, Excel workbook
now let's choose the one that we got rid
| | 04:26 | of the extra rows in.
| | 04:28 | Leave the same options that we did last time,
finish this, and you'll find that
| | 04:34 | there's a lot less to clean up.
| | 04:36 | If we think about how we would like to
have this work, what we would like to do
| | 04:41 | is do some of the work to make the form
easier to convert over in Excel, and then
| | 04:46 | do the remainder of the work that we
need to do after we've imported it here.
| | 04:50 | We have again, the issue with our fields
where we only have two of them, but
| | 04:55 | it's not a big deal to get rid of the others.
Remove our extra controls and
| | 05:07 | simply place our headers
where we would like them to be.
| | 05:15 | Again, a good way to get a good start on
our process with some work in Excel and
| | 05:22 | then, using the conversion utility.
| | 05:26 | And so, again some of the work being
done in Excel makes it much, much easier
| | 05:31 | for me to do a great job with the
converter and import a truly useful form
| | 05:35 | start here in InfoPath.
| | Collapse this transcript |
| Importing a Word form| 00:00 | In this movie I'm going to show you how to
use the converter that comes with InfoPath 2013
| | 00:05 | to convert a Word form into InfoPath.
| | 00:09 | So here's our Word form in Microsoft Word.
It has fields to allow my users to type,
| | 00:16 | it has checkboxes that they can check;
very simple while you were out form.
| | 00:21 | Before I can convert this, I need to close it.
| | 00:24 | So I have launched InfoPath and I want to
Convert an Existing Form and it's a Word form.
| | 00:30 | So I'm going to click Browse and
you'll find this out in your exercises
| | 00:36 | folder, if you are using the exercises file.
If not you can create a small form of your own.
| | 00:41 | This comes in two versions, we're going
to start with the one marked original.
| | 00:46 | I have options about whether I would
like the Layout only, in other words
| | 00:50 | just the layout table.
| | 00:51 | Whether I would like to use the default
settings to pull in form in layout fields,
| | 00:56 | or whether I would like to do a custom conversion.
| | 00:59 | Let me just show you some of the choices here.
| | 01:01 | We have converting word form fields to
InfoPath fields, detecting any repeating
| | 01:07 | tables and rich text areas, converting
any empty underline area, any area with a
| | 01:12 | space that follows a colon (:), or any
brackets around multiple spaces; any of
| | 01:17 | those would become text boxes and
brackets around signal space would be
| | 01:21 | converted to checkboxes.
| | 01:23 | Notice all you're getting it out of this
are text boxes and checkboxes. You're
| | 01:26 | not going to get date pickers, even if
there's a date picker being used in Word.
| | 01:30 | I am going to go ahead and click Finish, and OK.
| | 01:33 | So this is a time of a big disappointment.
But this isn't the first time I've
| | 01:38 | been disappointed in this way by the Word Converter.
| | 01:41 | So it took a look at my fields and said ah!
| | 01:46 | Okay well it grabbed those as text.
| | 01:48 | So here are my placeholders, text
labels here, I have no fields at all.
| | 01:52 | I would have been better off in this
case actually choosing layout table.
| | 01:55 | Let me show you what that looks like.
| | 02:04 | Layout only, here we go. I wasn't
expecting anything else. That's all I get.
| | 02:12 | There are times that this converter for
Word just isn't as strong as the Excel
| | 02:17 | Converter. I'm not surprised ever to
come in here and see no fields list.
| | 02:21 | But as with Excel, I can do some things
in Word itself to that form to help this
| | 02:28 | converter do a better job for me.
| | 02:29 | So I am going to go ahead and close
this version here. I am going to go
| | 02:36 | back to Microsoft Word.
| | 02:37 | I want to show you the modified file.
| | 02:39 | So let me tell you what I did here.
I replaced the fields that I had
| | 02:43 | that weren't being picked up with
some symbology that the converter
| | 02:47 | understands pretty readily.
| | 02:49 | Which is to say that after I have a label,
if I put a colon (:)
| | 02:53 | and then one or more spaces, it says, oh!
| | 02:55 | I bet there's a text box that belongs there.
| | 02:58 | So don't forget the spaces, but I
simply modified some of the labels I had
| | 03:03 | and added labels were I needed them.
| | 03:05 | Then what I did was remove the checkboxes
that weren't being seen and replace
| | 03:09 | them with bracket space bracket.
| | 03:13 | In doing so, that's the symbol
for a checkbox to the converter.
| | 03:18 | Now the converter itself, its documentation,
will tell you that if I do up a
| | 03:22 | bracket and two or more spaces, and
another bracket, it signals a text box.
| | 03:27 | I have actually found that it doesn't
quite read that as well as I would like.
| | 03:30 | But it does tend to read the colons (:)
| | 03:32 | and if you have people who have developed forms,
where they've used colons (:)
| | 03:36 | in the labels, all you need to do then is
run it through the converter like this.
| | 03:40 | So I'm going to go ahead and close this,
it will prompt me to save it, but I
| | 03:44 | don't need to, it's just because I
typed in it and undid it. There is my
| | 03:48 | original I am going to close it
and now let's go back to InfoPath.
| | 03:52 | So I'm going to convert an existing Form.
| | 03:56 | I'm going to use the importer, and I'm
going to go back to the exercises folder
| | 04:03 | and open up that modified version.
| | 04:05 | So I spent a minute and a half making this
one a little different maybe two whole minutes.
| | 04:11 | I want to make sure that I'm doing the
layout and form fields; either the default
| | 04:15 | conversion or turn on Custom Conversion
and leave the same choices if you wish.
| | 04:20 | Because we're hoping that these
empty spaces after the colons (:)
| | 04:23 | and the brackets around single spaces
are going to generate lots of text boxes,
| | 04:27 | checkboxes and a schema for us.
| | 04:29 | Let's click OK and Finish, and OK and there we go.
| | 04:35 | Every place that we put up a colon (:)
| | 04:37 | and a space, we get a text box,
properly named and in our Schema.
| | 04:43 | Every place we put a bracket space bracket, we
get a checkbox properly named in our schema.
| | 04:49 | Two minutes in Word gives me a huge
head start on my InfoPath form over here
| | 04:55 | in InfoPath 2013.
| | Collapse this transcript |
| Creating a template based on an XML or schema file| 00:00 | In the last chapter I showed you how to use an
XML list to populate a Drop-Down in InfoPath,
| | 00:06 | but remember that we can use a valid
XML file, or an XML definition
| | 00:13 | or Schema file as the basis for an entire form.
| | 00:17 | So now let's imagine that we need a
way to be able to have someone enter
| | 00:21 | this information and we want to capture it.
Here's our contact information for our vendors.
| | 00:26 | Let's use our vendors XML file
to create a new InfoPath Form.
| | 00:32 | I am going to switch to InfoPath.
Here we are ready to create a new template,
| | 00:37 | and I have a couple of choices.
| | 00:39 | I can decide that I'd like to just create a form,
or I could decide that I want
| | 00:43 | to create a template part.
| | 00:45 | You already know how to create a template part
and you could do it based on a Schema or an XML file.
| | 00:51 | But I'm going to simply create an entire form
because that's going to meet my needs.
| | 00:55 | It wants to know where our document is.
| | 01:03 | Notice that because I open this last with
Internet Explorer it has the IE logo on it.
| | 01:08 | Don't let that bother you, it's an xml file, click Next.
| | 01:13 | And it says do you want to add another
XML Schema, or XML document to the main
| | 01:17 | data source or so you could create a
data source that included parts of two
| | 01:22 | different XML documents, or all of two
XML documents, but we don't want to add
| | 01:27 | another we're all set.
| | 01:28 | So the structure will serve as the data source
for your template. Do you also
| | 01:33 | want to use the values as the ?.
| | 01:36 | Now remember that I have actually
three records their, the very first one is
| | 01:41 | Olivia's record. I only want to
extract the data description, I don't want
| | 01:48 | to have the data itself.
So I am going to say no.
| | 01:51 | So what I have vendors, now you could
think here for example, that this would
| | 01:54 | be the same as myFields. Here I
have vendor, and it's repeating and that's
| | 02:01 | because it repeated in the data source.
| | 02:04 | So this is actually a form that would
allow a user to enter multiple records
| | 02:09 | it's all set and ready to go.
| | 02:11 | So if I wish, check this out, I want to
have a Repeating Table and allow my user
| | 02:18 | to simply start entering information right here.
| | 02:22 | I have to clean it up some, but
look at how quick and easy that is.
| | 02:27 | Or let's undo and let's do this again and say,
we would like Repeating Section with controls;
| | 02:33 | there is our Repeating Section we throw this into Preview.
| | 02:36 | Again it's ugly, but we know how to make it beautiful.
| | 02:39 | Look at this great functionality.
I have an XML file I say let's use this as
| | 02:44 | the Schema but wait there's a little bit more.
| | 02:46 | What if I decide I don't want this to
repeat or what if I decide that I want to
| | 02:50 | have more data in here? I can, I can
now edit this just as I edited the Schema
| | 02:55 | for everything else that we've created.
| | 02:57 | Now a caveat; let's say that the schema
that I got, the XML that I got is from
| | 03:04 | a file, and I want when I submit to go right
back to that same data source for that same file.
| | 03:09 | If I do that, I don't want to modify this at all.
| | 03:12 | But if I am going to save this information
someplace else, then I can make
| | 03:16 | whatever changes here that I want.
| | 03:18 | So I can go in and say well actually this
doesn't repeat, I want a single use form here.
| | 03:23 | When I do that, not surprisingly, my
repeating section chokes a little bit
| | 03:28 | that's fine it's gone.
| | 03:30 | But I just wanted to one vendor at a time
and maybe I want to add another group
| | 03:35 | above this, who's going to recommend this.
| | 03:37 | So Recommender, (Group), Move it up to the top.
| | 03:45 | So now we have vendors, the person who
recommends them, Recommender's first name
| | 03:50 | and so on, and my vendor information.
| | 03:53 | So when we drag this out into the form,
I have a couple of optional sections I
| | 03:57 | can turn off. Notice how easy it is
to create forms based on, not even a Schema,
| | 04:03 | but an XML file right here in InfoPath.
| | Collapse this transcript |
|
|
16. Digital SignaturesUnderstanding digital signatures| 00:00 | Most organizations that have been
around for a while are awash in forms that
| | 00:04 | require a physical signature. They were
designed so somebody could sign their
| | 00:09 | name on the dotted line. Then that
form itself, that physical piece of paper
| | 00:14 | with its signature on it,
| | 00:16 | gets routed through the organization,
either in inter-office envelopes or with
| | 00:20 | sneakernet. Whatever the method is,
that physical form, signed, becomes important.
| | 00:26 | Digital Signatures are conceptually the
same as those written signatures, and in
| | 00:32 | this movie I'm going to show you how
we use digital signatures and how they work.
| | 00:36 | Don't worry about following along
with any file we're going to do that
| | 00:40 | later in this chapter.
| | 00:41 | But right now let's just understand
how these work and why.
| | 00:44 | Digital signatures, whether you use
them to sign emails or Word documents or
| | 00:49 | Adobe forms or InfoPath forms, do three things.
| | 00:53 | Digital signatures Provide:
| | 00:55 | Authenticity, a Digital signature is
authentic because only you can sign with
| | 01:00 | your name. Your identity is validated
when you sign into Windows, or to some
| | 01:06 | other system, and only you have access to your signature.
| | 01:09 | Next, Digital signatures ensure Integrity,
because when you sign some content
| | 01:16 | that content is locked down so no one can go
and change it, after you've signed it.
| | 01:23 | And then finally Digital signatures
provide something called Non-repudiation.
| | 01:26 | Non-repudiation means that, since
you've signed it and only you could sign it,
| | 01:31 | you can't say wait a minute I never saw
that form, I didn't sign that form someone
| | 01:36 | else must has signed it.
| | 01:37 | So these are the three features of Digital signatures;
that we know you signed it,
| | 01:42 | that the data you signed is unchangeable,
and that we can hold you to it.
| | 01:46 | So let's go take a look at how this
actually works in the form. This is how
| | 01:50 | our Benefit Use Request is going to look when
we're done with that at the end of this chapter.
| | 01:55 | But we've the ability to click here to
sign a section, so I'm going to enter
| | 01:59 | some information, real briefly, and
then I'm going to sign this section.
| | 02:12 | Oh let me say I want to go on Vacation
starting on Friday first, and I don't
| | 02:18 | want to be paid so I am going to sign this.
| | 02:21 | I'm asked to either select an image or
to ink my name or to type my name. I am
| | 02:27 | just going to type my name here, you
might think anybody could type your name,
| | 02:33 | yeah they could, but it gets better.
| | 02:35 | I created an approved the document,
actually I just created it I'm hoping my
| | 02:39 | manager will approve it.
| | 02:41 | I purpose for signing this form is I need
a Vacation probably something also
| | 02:45 | could've said, and I have different
certificates here on my computer.
| | 02:50 | This is actually a certificate I created
myself. You'll see about this later
| | 02:55 | in the chapter. It's not worth much,
because only I said I'm who I say I am.
| | 02:59 | This is actually a really good certificate.
| | 03:01 | It was issued by a certificate organization.
| | 03:04 | I am going to choose this Certificate and say OK & Sign.
| | 03:09 | So notice that even though I've
typed my name there's far more to this
| | 03:13 | signature. And the user can click on
it and go back and see that the Signed
| | 03:16 | Content hasn't changed, and
the Signer Certificate is valid.
| | 03:21 | In a world of Wite-Out this is actually
more secure than any physical form that
| | 03:26 | I signed could be, so that's how this works.
| | 03:29 | If a user tries to select or change
information in the form, they can copy and
| | 03:34 | paste but they can't change it,
because each time they click any part of this
| | 03:38 | form it that's been signed, that little
certificate symbol pops ups, and it won't
| | 03:43 | allow them to change the fact that I
want to start on the first, that I want a
| | 03:47 | vacation and I can't go back
and say oh and I want to be paid.
| | 03:51 | So by digitally signing this form,
I've locked it down and ensured its
| | 03:55 | integrity and I've provided the
authenticity that says I'm the user on this.
| | 04:00 | There are two different things that we
might sign in InfoPath first users will
| | 04:05 | sign forms or sections of forms like I just showed you.
| | 04:08 | And then as a developer you might
want to sign form templates to make them
| | 04:13 | available as full trust secured templates.
| | 04:17 | If you're going to sign a template,
also called Code Signing, because normally
| | 04:22 | you would do this, because it contained managed code.
| | 04:24 | You'll need to get a certificate, and
as a developer if you're mostly working
| | 04:29 | for yourself, you can go ahead and
obtain a certificate. Simply go and Google or
| | 04:34 | Bing digital certificate and you'll
find different places you can purchase them
| | 04:38 | and ways to be able to validate your identity,
so that you can actually buy a certificate.
| | 04:42 | If I want my users to sign documents,
I need to make sure that we have the
| | 04:46 | Infrastructure in our organization
for them to have Digital signatures.
| | 04:50 | It's not unusual to have only a handful
of users or even no users in an
| | 04:56 | organization that have Digital signatures.
| | 04:59 | There are two different types of
Digital signatures. One Type of Signature is
| | 05:03 | one that's good between organizations
that I can use to sign legal contracts,
| | 05:08 | that I can use to sign documents for
the government or for other organizations.
| | 05:12 | That type of a Digital signature
actually costs more, than the type of signature
| | 05:17 | that I can provide inside my firewall
using my Network Operating System.
| | 05:21 | So what's all I need to do is prove
that I signed this to the person in
| | 05:27 | human resources and payroll, that's a
different kind of signature than if I
| | 05:31 | needed a signature that could prove
to you in another organization, that I
| | 05:36 | actually signed this.
| | 05:38 | In the rest of this chapter, I'll show you
how to enable a form for Digital
| | 05:42 | signatures, how users will sign the forms,
and also how you as a developer can
| | 05:47 | code sign a template.
| | Collapse this transcript |
| Enabling digital signatures in a form| 00:00 | In this movie I'm going to show you how
to setup Digital signatures in a form;
| | 00:05 | whether you want to sign the entire form,
or you want assign to sections of it.
| | 00:10 | I developed this form with digital
signatures in mine, and it's my belief you
| | 00:14 | should design every form that way.
| | 00:16 | Even if your organization doesn't yet
use Digital signatures. When they do
| | 00:21 | you don't want an entire group of
forms that can't be signed without
| | 00:25 | significant rework.
| | 00:26 | It doesn't take any extra effort to
design a form so it's ready for signing;
| | 00:30 | it just takes a little extra thought.
| | 00:32 | Here's mine signable form. I actually
have different zones of data.
| | 00:37 | So I could in my form have had a group,
or section for Employee Info, one for
| | 00:43 | the Request Info, so here's the Employee
Demographic Info, and the Request Info,
| | 00:47 | and then separate area for Manager Approval,
three groups, three sections in my form.
| | 00:53 | What I have added to make this
more signable is two more sections.
| | 00:57 | First the Request, because a user is
going to want to sign not just their first
| | 01:02 | and last name, and their email, but
also when they want to start using their
| | 01:06 | benefit, their vacation, or maternity pay,
or whatever and whether they want to
| | 01:11 | be paid in their comments.
| | 01:12 | So they want to sign all of this,
so I wrapped it in one section.
| | 01:16 | And then when the manager signs they
really counter signing. They don't want
| | 01:20 | to assigned just their section and then have
the employee go back and change this to Paid.
| | 01:25 | Even if it happened accidentally or
change a date, so when the manager signs,
| | 01:30 | the manager is signing the entire form.
| | 01:34 | But I consign sections or the entire form.
| | 01:37 | So I inserted another group to hold
everything and so I could have a section
| | 01:41 | over here on the left.
| | 01:42 | My Schema was designed with signatures in mind,
but then I actually have to
| | 01:47 | place the sections in the form. And it
can get a bit confusing because you have
| | 01:52 | section here well this one's easy,
that's Employee Info. This one here, which
| | 01:56 | one is this? Now that's Request Info,
that's means the one below it is a request.
| | 02:00 | So you click on the Section tabs to
be able to see what they are, or you
| | 02:05 | right-click a Section tab, choose
Properties, and you'll see the name of the
| | 02:09 | Section tab right here.
| | 02:11 | So this brings right to what I believe
is the easiest way to enable digital
| | 02:15 | signatures, which is at the Section level.
| | 02:18 | So I want to allow the user to sign
the entire request. I'm going to click there,
| | 02:22 | right-click on the Section>Section Properties
Request, and I can simply
| | 02:28 | click Digital signatures, Allow users to
sign this section, Add Data that can be signed.
| | 02:34 | And I'm going to say that each
signature signs the preceding signatures.
| | 02:38 | I'm going to change the name of this
slightly. I can't use spaces, I can use
| | 02:43 | MyRequest or my_request. users will
actually get used to camel case if you use it.
| | 02:49 | There is a confirmation message
that I can modify, verify that your
| | 02:55 | information is correct as it
will be stored with your signature.
| | 03:03 | Now in this section what's true is, I'm
only allowing one signature in this section.
| | 03:08 | Each signature assigns proceeding
signatures allows multiple signatures.
| | 03:12 | I only want to allow one.
| | 03:14 | So the form itself we're going to countersign,
but this section just one, okay.
| | 03:19 | I'm going to the show Signatures in the
section and when this is signed I'm going
| | 03:24 | to make all the controls read-only.
Let's click OK and let me show you what this
| | 03:29 | looks like; Preview, click here to sign this section.
| | 03:32 | So let me to choose a couple of things here
and now I'm going to click to sign
| | 03:38 | this section, and that's opens a
dialog box; that's how this works.
| | 03:42 | I get hyperlink because I applied this at
the section level right here in the form.
| | 03:47 | I'm going to close my Preview and I can
setup the other signature, which is for
| | 03:53 | everything. I'm clicking the tab, I
think it is, yes its everything up there.
| | 03:59 | Right-click, Section, Properties, Request and Approval.
| | 04:02 | So it's our Request Approval group.
I'm going to click on Digital signatures.
| | 04:06 | Allow users to digitally sign this section,
Add Data that can be signed, because it's different.
| | 04:12 | This is going to be, well it could be
Request and approval, the whole thing
| | 04:16 | being signed. I could also say Manager
Signature if I wish. And I am going
| | 04:20 | to say each signature signs the Proceeding Signatures,
Verify the form you are signing is correct,
| | 04:25 | and I'm going to say OK, Show Signatures in Section, OK,
| | 04:31 | Preview, two different choices.
| | 04:34 | Let's go ahead and choose Date, and
let's Sign the Section. I have to put
| | 04:42 | some information here to be able to sign.
We'll show you this in the next movie.
| | 04:47 | But notice that when I do that these
controls now can't be modified. When I
| | 04:52 | click on them it shows that
they have actually been locked up.
| | 04:56 | And so then when for example, I go in
and sign this section, now the entire
| | 05:08 | form is signed, and it can't be modified.
There we go, none of it can be changed.
| | 05:14 | That's how this works.
| | 05:16 | So I can apply this signature at the
section level and that's my preferred
| | 05:21 | method. Part of why I preferred is it
gives me those nice hyperlinks, another
| | 05:25 | reason is that the next control and
going to show you doesn't work in a browser.
| | 05:31 | But might alternative two ways to set it
up is to say that I would like to use a
| | 05:37 | signature line; now this is the InfoPath Filler Control.
| | 05:40 | We just go click down here, add a
signature line, and I get this nice box.
| | 05:46 | As we have been adding signatures
there being collected over here.
| | 05:49 | Don't modify this, it's locked for a reason.
This is where the signature
| | 05:53 | information will be stored in
InfoPath is keep it up with that with us.
| | 05:57 | I am going to right-click here and
change the signature line properties.
| | 06:00 | I can put a message in here just like the
message that we saw earlier that says,
| | 06:04 | please make sure all of your data is correct.
| | 06:06 | I can provide some Optional Data if I
know who the signer is supposed to be, and
| | 06:11 | you might wonder, how would I know.
| | 06:12 | Well it could be that the manager name
has been provided earlier or that I've
| | 06:16 | gone to get it from active directory.
| | 06:18 | The same with the title and the email address.
| | 06:20 | If I have that information, I can
provide it right out of the form.
| | 06:25 | Next I can set its position, this control.
When we look at the advance choices
| | 06:31 | there is an interesting choice here, I
don't actually like this big X very much,
| | 06:35 | and it doesn't look much better we preview it.
| | 06:38 | I have the ability instead to use
what's called a Stamp. The reason that
| | 06:42 | it's called a Stamp as opposed to an
image or something else, is that this type
| | 06:48 | of a stamp for entire forms is often
used in Japan. So there's actually a
| | 06:54 | Stamp that is your identity
staying up its called a Hanko Stamp.
| | 06:59 | So if I want to do that I'll get a
slightly different control, it looks like this.
| | 07:02 | When I click to Sign in the Preview,
then I'm asked to select an image
| | 07:11 | along with my Signature.
| | 07:13 | If your users won't know what to do with that,
then there's no point in providing it for them.
| | 07:17 | Let's go ahead and returned to the signature line.
| | 07:20 | So again the signature line control
is used to apply Digital signatures to
| | 07:24 | forms filled out in the InfoPath filler,
and its signs the entire form.
| | 07:28 | Now you can change it, you have some
control over the controls, and can modify
| | 07:35 | how that control actually works in
its properties. And say that we're not
| | 07:42 | signing the entire form, we're signing
part of it, but by default it's usually
| | 07:46 | used for the entire form.
| | 07:47 | And again only for InfoPath Filler.
Our third possibility is that we want assign
| | 07:55 | Digital signatures. We don't want to
have this kind of a control sitting on the
| | 08:01 | front of our form, but we do
want to sign the entire form.
| | 08:05 | And we're usually going to do
this in InfoPath filler as well.
| | 08:09 | So my third choice of, let's get rid
of that control, is to go backstage.
| | 08:14 | FILE>Form Options>Digital signatures, and
you'll find all of these things that we
| | 08:19 | don't already done. But I am
going to say Sign the entire form.
| | 08:22 | I would have to configure my Submit
before this is actually going to work.
| | 08:26 | However when the user Previews this form,
and makes changes to it, notice that we
| | 08:31 | don't have any prompts anymore, because
we are signing entire form. But in the
| | 08:36 | Filler the user can go to FILE>Sign Form.
| | 08:40 | So I don't have that big X and I
don't want to leave a place for a personal stamp,
| | 08:46 | but I do want to be able to sign
the entire form, that's what this is for.
| | 08:50 | Notice then that I can add a
signature to the entire form.
| | 08:55 | So three different ways to approach this.
But to me the way that normally
| | 09:01 | makes the most sense, because it
has the most options and it's works
| | 09:04 | everywhere, is attaching the ability to sign,
to section properties of the
| | 09:10 | appropriate sections here in my form.
| | 09:12 | I am going to take this form right now and
change it back the way it was just a moment ago.
| | 09:18 | I am going to go back to my Digital
Signatures and say I want to allow signing
| | 09:22 | parts of the form, MyRequest and
RequestAndApproval, and I'm going to remove the
| | 09:27 | signature from entire form.
| | 09:30 | When I removed that set signable data
that signature group was just removed, so
| | 09:34 | I only have the two left now MyRequest
and RequestAndApproval. I could modify
| | 09:39 | either one of these, but this
is all set. I am going to say OK.
| | 09:42 | Now if you're going to work with me in
the next movie, you might want to save
| | 09:46 | your form, if it's different than this one,
because we're actually going to sign
| | 09:50 | the form in the next movie.
| | Collapse this transcript |
| Using digital signatures in a form| 00:00 | In this movie, we're going to see how
digital signatures work for your users.
| | 00:05 | Each user who is going to sign a form,
or a wide range of forms, needs to have a
| | 00:11 | digital certificate in their name on
the computer that they're using to sign.
| | 00:16 | So this is something that they'll
get from your IT Department. It's not
| | 00:20 | something that you want all of your users to
go out and get independently, not a great idea.
| | 00:26 | So work with your Information Technology
or Information Services folks about
| | 00:31 | how this part is going to work.
| | 00:33 | But assuming your user has a digital
certificate, this is what it looks like.
| | 00:39 | When they go to preview the form,
where it says Click to sign this section,
| | 00:43 | if that's the section they're signing,
| | 00:45 | once they have filled in any required
fields, they'll click. And it says verify
| | 00:50 | that your information is correct
this is the prompt we provided.
| | 00:54 | And they will type or ink their name below,
or select an image to use as their signature.
| | 00:59 | So they can select an image, I've
often used my own image, it's up a level.
| | 01:10 | I can do that, or I could put any other
information and I could say I create and
| | 01:15 | approve this document.
| | 01:16 | The purpose for signing the
document is that this is my request.
| | 01:20 | I can include more information about
the signer if I wish. That would be
| | 01:24 | for example, if I was signing a legal document
and I had to meet some legal requirements.
If you don't have image of yourself
| | 01:33 | don't worry about it. Then you will
choose the certificate and you may have
| | 01:37 | more than one. I'm using this one and
I'm going to click Sign. That's all there
| | 01:42 | really is to it, the section is now signed.
| | 01:45 | And if you click in the different fields
you can't edit them. Each one of them
| | 01:49 | shows that small certificate, isn't that cool.
| | 01:52 | Now later on when the manager gets ready to sign,
they can click and sign their section.
| | 01:57 | Now we have Ink tools, so maybe
they'll sign their name here. They can even
| | 02:01 | change two different color pen if
they want to. They can say that they
| | 02:05 | approve this document Request Approval, and
they are going to go ahead and sign the document.
| | 02:12 | So now this document has been fully signed
not just once but twice.
| | 02:18 | I'm going to go ahead and close this Preview.
| | 02:21 | Now if I really want to test this
what I'll do is I'll fill out a top part of
| | 02:26 | form and I'll save it. I don't have
my Submit options configured yet, but I
| | 02:31 | could just go to Preview and I could
choose Today's Date, and I could type a
| | 02:36 | few little things here, and I could sign this
section here; all of those things and save it.
| | 02:43 | Problem is of course that in my Preview,
when I go to Save, it's trying to save
| | 02:49 | this as a preview, so it looks a little weird here.
| | 02:52 | But it'll save it as an InfoPath form
and I could throw it out on my desktop.
| | 02:55 | I could put that this was a test,
and then I could close this Preview, and I
| | 03:02 | actually can go back now, and open up
that same document again, it exists.
| | 03:06 | But it's considered to be a best
practice to go ahead and leave InfoPath
| | 03:12 | Designer, open InfoPath Filler.
If you really want to know what the InfoPath
| | 03:17 | Filler experience is with digital signatures,
that's the best way to do it.
| | Collapse this transcript |
| Applying a developer digital signature in a form| 00:00 | There's one more way to use an
InfoPath digital signature and that is to
| | 00:06 | digitally sign an entire form.
| | 00:08 | So in addition to allowing our users
to sign the forms or sections of forms,
| | 00:14 | when you signed your template you're
providing that same authenticity, and
| | 00:19 | integrity, and even the non-repudiation,
that we do when users sign parts of a form.
| | 00:24 | You're saying I'm the developer, I developed this.
| | 00:28 | It hasn't been changed since the last time I signed it.
| | 00:31 | In other words, nobody has been able to
sneak in here and insert extra code, or
| | 00:36 | put a virus in this form.
| | 00:38 | That's why developers do code signing.
Because it's required, if you want
| | 00:44 | to have a template that works at the full trust
level of security, you have to digitally sign it.
| | 00:51 | So if you have a template that needs
full trust because it has managed code in it,
| | 00:56 | then you will need to install it directly
on your user's computers, every
| | 01:02 | single computer, or you don't want to
do that, you digitally sign the template.
| | 01:07 | So here's how we do that.
| | 01:09 | We're going to go to FILE and we're
going to go down to our Form Options.
| | 01:13 | This is not about digital signatures,
this is actually about security and trust.
| | 01:17 | I'm going to sign this form template,
and I select a certificate.
| | 01:22 | Now here is an interesting thing,
you might think Oh, this is cool.
| | 01:25 | I can create a certificate.
| | 01:26 | I already have one of those, if I do
though, there's nobody proving who I am.
| | 01:31 | I could be making all this up.
| | 01:33 | So that certificate you created yourself
its good for testing and that's about it.
| | 01:38 | I am going to select a certificate,
I am going to choose a real certificate.
| | 01:42 | Real certificates say that they ensure
that software came from the publisher and
| | 01:46 | it hasn't been altered, and it actually
is signed by an external organization.
| | 01:51 | Look at how great and shiny that looks.
| | 01:54 | As opposed to mine which I created, which
says, not so much, not to be trusted, okay?
| | 02:00 | So this is why we would have a code certificate,
and we would go ahead and attach it.
| | 02:04 | And now this particular form has been signed,
and it can be fully trusted.
| | 02:10 | Now a couple of other things to
think about when we think about digital
| | 02:13 | signatures these actually expire, this
is going to expire or two years from now.
| | 02:18 | And so, in almost every organization
that has managed code with code signing
| | 02:23 | there is a Certificate source and a Certificate store.
| | 02:26 | And somebody is making sure that everytime
something is signed that they know
| | 02:31 | when it's going to expire, because
otherwise on the 27th of February in 2014,
| | 02:37 | this form is going to come to a crashing halt.
People will try to sign it, they
| | 02:42 | won't be able to sign it any more.
| | 02:44 | People will try to use it, in a full
trust setting they won't be able to,
| | 02:48 | because it's no longer signed by me.
| | 02:50 | You'll want to make sure that somebody
is tracking this and again, if you're
| | 02:54 | not in your information technology
your information services department,
| | 02:58 | when you go and talk with them about things
like code signing so, that you can have
| | 03:02 | full trust on a form.
| | 03:04 | There's going to be a certain amount
of rigor and this is the reason for it,
| | 03:07 | because we have a whole system that
needs to be maintained, including somebody
| | 03:11 | making sure that long before February 26 of 2014,
this code signature has been
| | 03:18 | revivified or reapplied to this particular
form and all of the other forms that
| | 03:24 | were created using the same signature.
| | 03:26 | So if you need to sign form templates
that you create in InfoPath 2013,
| | 03:32 | this is how you will do it.
| | Collapse this transcript |
|
|
ConclusionNext steps| 00:00 | Thank you, so much for watching
this course all the way to the end.
| | 00:04 | It's truly been a privilege to put
these movies together for you.
| | 00:08 | I hope that you have a great time
designing InfoPath forms.
| | 00:11 | So before we leave each other,
I want to give you some thoughts about
| | 00:16 | different areas that you might pursue next,
based on what you and your
| | 00:20 | organization need from InfoPath.
| | 00:22 | There are so many different areas of
exploration. One is to take a look at
| | 00:26 | some of the other controls, the more
advanced controls that we didn't spend a
| | 00:30 | lot of time touching on.
| | 00:31 | But if you found that you're using the
entire set that I've presented to you
| | 00:35 | there are a few more that you might want to look at.
| | 00:39 | Particularly I would recommend that
you spend sometime with that repeating
| | 00:42 | choice control but there are others
that are very interesting. Also there's so
| | 00:47 | much to be done with Rules. It's a
powerful feature that was really beefed up in
| | 00:51 | the last version of InfoPath.
| | 00:53 | So don't just stop with the Formatting
Rules but climb into those Action Rules
| | 00:58 | and take a look at what they can do for
you and how you can use InfoPath rather
| | 01:03 | than having to use a human person
with a manual process to do more than
| | 01:08 | validation to actually do some calculation
to send some information, elsewhere
| | 01:14 | in the form, so much can be done with rules.
| | 01:17 | And once you've exhausted rules
the next place to go is code.
| | 01:21 | If you wanted to write code for your InfoPath Forms
you need to work in Visual Studio 2012.
| | 01:26 | In prior versions of InfoPath there was support
for Jscript and C# but that's gone now.
| | 01:33 | So if you're going to write code you're
going to be a code developer and Visual
| | 01:37 | Studio is a great tool for you.
| | 01:39 | If you loved learning about Schemas and XML
and how they work there's even more you can learn.
| | 01:45 | InfoPath makes it so easy for us to create
simple Schemas and grab XML out of forms,
| | 01:51 | but there's a lot more to be learned about it.
And I would commend to you
| | 01:55 | the XML Essential Training course
in the lynda.com training library.
| | 02:00 | If your loving and how SharePoint works
and I do, then I want to recommend
| | 02:05 | SharePoint Foundation 2013 Essential
Training, that's my course, and we'll talk
| | 02:10 | some about InfoPath there as well.
| | 02:12 | But also SharePoint Server 2013
Essential Training, if you're working in an
| | 02:16 | institutional setting and you want
to see even more about SharePoint,
| | 02:21 | high-end SharePoint.
| | 02:22 | And then, finally if you are not in
SharePoint Server 2013 yet, and you want to
| | 02:27 | do some work in 2010, or if you have one
foot in each SharePoint 2010 Essential
| | 02:33 | Training, Simon Allardice's course is just excellent.
| | 02:36 | Whatever area you choose to explore next,
I hope that you really have enjoyed
| | 02:40 | this course and can put what you've
learned here to the best use to create
| | 02:45 | stunningly good forms for your organization.
| | Collapse this transcript |
|
|