Order of execution and variable access
Hello frnds,
This prog shows the order of its execution:
public class Sequence {
int j=10;
public Sequence() {
System.out.println(" constructor initializer : "+i);
// line x
System.out.println(" instance initializer :"+this.i);
static
System.out.println(" static initializer");
public void method() {
System.out.println(" method initializer");
public static void main(String args[]) {
Sequence sq = new Sequence();
sq.method();
int i=20;
output is :
static initializer
instance initializer :0
constructor initializer : 20
method initializer
If at // line x i edit it like this
System.out.println(" instance initializer :"+i);
it gives compile time exception :
illegal forward reference
System.out.println(" instance initializer :"+i);
^
Why is to so with (this.i) it does not gives compile time error.
Restrictions on the use of fields during instance initialization:
Instance initializers are permitted to refer to the current object this, to any type variables in scope and to use the keyword super.
But, use of instance variables whose declarations appear textually after the use is sometimes restricted, even though these instance variables are in scope.
Precisely, the declaration of a member needs to appear textually before it is used only if the member is an instance field of a class or interface C and all of the following conditions hold:
- The usage occurs in an instance variable initializer of C or in an instance initializer of C.
- The usage is not on the left hand side of an assignment.
- The usage is via a simple name.
- C is the innermost class or interface enclosing the usage.
Similar Messages
-
Haven't received order bonus email and cannot access order
Hello - I preordered Assassin's Creed Unity for PS4 and received my order yesterday, but I haven't received any emails containing my preorder bonus content code. Also, if I try to check the order status, it says In Process and if I try to go to order details I get a blank white screen. All of my other orders work fine.
Any help is appreciated!Hi jeremy24,
I wouldn't worry just yet -- it can take 24-48 hours for pre-order bonus content to be fulfilled depending on where you placed your order, in-store or on BestBuy.com. For online orders, customers can expect to receive their bonus DLC via e-mail within 24-48 hours of pickup or shipment. For in-store purchases, the code should appear on the final sales receipt at the time of pickup.
If you still haven't received your Over Under Pistol redemption code within that timeframe, then you'll want to send a message to our Gaming-BBY inbox with the following information:
Message Subject: Game Title & Platform
Message Body: Include...
• Proof of purchase (Customer Service PIN from in-store receipt or BestBuy.com order #)
• Email address (the one you provided for the code)
Please ensure you provide all of this information to Gaming Support for the fastest service. Armed with that information, our gaming team will be able to quickly assess the situation and provide you with a resolution.
Thanks for purchasing your copy of Assassin's Creed: Unity with us! I hope you're enjoying the game so far.
Aaron|Social Media Specialist | Best Buy® Corporate
Private Message -
WHERE clause order ox execution question
I dont understand order of execution of a WHERE clause, using a complex database
I want to write a SELECT statement with the following condition
... WHERE ( branch = 'main' ) AND ( type = 1 ) OR ( charge -1 AND charge = 2 )
My question is
<1> Can yoyu use parenthesis inside of a WHERE clause
<2> How would you write such a clause as above if you can not use parenthesis
ThanksJust to echo what everyone else is saying, of course parentheses are syntactically valid and can make a difference to the logic. In you example though,
WHERE ( branch = 'main' ) AND ( type = 1 ) OR ( charge {noformat}<{noformat}> -1 AND charge <= 2 )is the same thing as
WHERE ( branch = 'main' AND type = 1 ) OR ( charge {noformat}<{noformat}> -1 AND charge <= 2 )and even
WHERE branch = 'main' AND type = 1 OR charge {noformat}<{noformat}> -1 AND charge <= 2because AND takes precedence over OR. You can think of it as a "stronger" operator.
However I would not use the last version because it's ambiguous to anyone reading it, and code like that can easily hide bugs. I would also not use the first version because all those redundant brackets are just confusing, making it almost as hard to read (and therefore prone to bugs) as the last version.
btw I've changed your example because I know this forum can swallow *{noformat}<{noformat}>* (I've used {noformat} tags to preserve it).
I'm not sure if any of this affects order of execution (and if it does, your Oracle version will make a difference). -
Exception caused by bind variables in ORDER BY clause and VO RANGE_PAGING
Hi,
I'm using a ViewObject in RANGE_PAGING mode and discovered a problem when using bind variables in the ORDER BY clause of my statement:
SELECT * FROM (SELECT /*+ FIRST_ROWS */ IQ.*, ROWNUM AS Z_R_N FROM (
SELECT * FROM T_TABLE WHERE (attr1 = :1) ORDER BY decode (attr2, :2, 1, null, 0, -1) desc, attr3 ) IQ
WHERE ROWNUM < :2) WHERE Z_R_N > :3 When a bind variable is used in the ORDER BY CLAUSE and the method VO.getEstimatedRowCount() is call then the DB issued an SQL error:
java.sql.SQLException: Ungültiger Spaltenindex (eng.: invalid column index)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:137)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:174)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:239)
at oracle.jdbc.driver.OraclePreparedStatement.setStringInternal(OraclePreparedStatement.java:4612)The numbering of the bind variables indicates that the last two bind variables have the wrong numbering (??)
When I rewrite the SQL into the following statement, the SQL error does not occur but I have not verified yet that the VO delivers the correct range of data because the numbering of the bind variables is not correct.
SELECT * FROM (SELECT /*+ FIRST_ROWS */ IQ.*, ROWNUM AS Z_R_N FROM (
SELECT *, decode (attr2, :1, 1, null, 0, -1) as ATTR_FOR_SORTING FROM T_TABLE WHERE (attr1 = :2) ORDER BY ATTR_FOR_SORTING desc, attr3 ) IQ
WHERE ROWNUM < :2) WHERE Z_R_N > :3I'm working with JDev 10.1.2 and Oracle DB 9203.
Any comments are welcome!
Thanks,
MarkusYou are using the bind variable :2 twice. Did you try
SELECT * FROM (SELECT /*+ FIRST_ROWS */ IQ.*, ROWNUM AS Z_R_N FROM (
SELECT * FROM T_TABLE WHERE (attr1 = :1) ORDER BY decode (attr2, :2, 1, null, 0, -1) desc, attr3 ) IQ
WHERE ROWNUM < :4) WHERE Z_R_N > :3
setWhereClauseParm(0, "a"); // :1
setWhereClauseParm(1, "b"); // :2
setWhereClauseParm(2, "c"); // :3
setWhereClauseParm(3, "b"); // :2setting the fourth parameter the same as the second one?
I remeber reading something about using bind variables twice causing problems, but I#m not sure about it. -
Customer exit variables: order of execution
Hi,
I am using multiple customer exit variables. What determines the order the coding in ZXRSRU01 for these variables is executed ?
When I debug, the program always starts with the coding for one particular variable first, but can I depend on it that it stays this way ?
Regards,
GuidoHi Wodn,
Suppose I have 2 variables, both are called in I_STEP = 2. You write:
'the order of execution is based on the order of the variable which is being called'
Can you elaborate ? What exactely determines this ? Is it the order of the variables being used in the query (KF1 first, the KF2) ? I cannot find logic here.
Thanks for your reply.
Guido -
Order of execution of named method user properties and server script
Dear All,
If for a Custom method on an applet, we have scripts in WebApplet_preinvokemethod and WebApplet_invokemethod and also for the same Custom method we have applet Named Method user properties and BC Named Method user properties, what will be the order of execution of these scripts and Named Method user properties??The Private Event Submission sample portlet shows how to achieve this. It is part of the PDK download.
Peter -
Does OPC UA Shared Variable Server support Alarm&Event and historical access?
OPC UA Shared Variable Server is a sample code and resides at https://decibel.ni.com/content/docs/DOC-25602
It seems to support DSC <-> OPC-UA tag synchronization.
But does it support alarm&event and historical access?
I tried to open it with LabVIEW 2012, but lots of VIs were missing in the code, and I am not familiar with DSC and OPC-UA.Hi iCat,
From your post on the example itself, a colleague of mine responded with: "This uses the OPC UA server included in DSC 2011 SP1 which does not include direct support for Alarms and Events. However you could use this idea to synchronize to shared variables on a Windows host which could have those abilities enabled."
So it looks like it doesn't directly do this.
Matt S.
Industrial Communications Product Support Engineer
National Instruments -
How to access TestStand Event and variables from external application?
Hi all
The test system was built by TestStand, now there is a new requirement to filter the test report without change the sequence file. The task must be done without any impact to previous software system, so I decide to write a tool by VC++.
My idea is to deal with the reports after every UUT loop, but I need to monitor the UUT loop status by VC++, if an unit is tested, pass or fail, raise a event and pass to VC++ application. In a word, I would like to access TestStand internal event and variables.
Anyone has ideal on this case? ActiveX or something.
thanks .
Rexxar
*The best Chinese farmer*paulbin,
While sharing variables via COM or DCOM is certaintly possible, I don't think you need to go down that route. I think that there is probably an easier way to limit your report. In your Configuration menu, under the Report Options item, there is a field at the top that will allow you to filter what steps go into your report.
This will not affect any sequence file you may have already created, all it does is change a few options in the ReportOptions.ini file in the <TestStand>\cfg directory.
This is a much simpler option than trying to write a program to interface with a running TestStand engine.
Josh W.
Certified TestStand Architect
Formerly blue -
Getting support through this site is terrible. Having said that I have been trying to access the store in order to order PS CC and I have been unable to connect. I have an internet connection that works with everyone else. The URL comes up in the browse window and the address simply hangs. This has been going on for the past three hours.
Please read, and reply back here with information https://forums.adobe.com/thread/1499014
-and try some steps such as changing browsers and turning off your firewall for downloads
http://myleniumerrors.com/installation-and-licensing-problems/creative-cloud-error-codes-w ip/
http://helpx.adobe.com/creative-cloud/kb/failed-install-creative-cloud-desktop.html
BLANK Cloud Screen http://forums.adobe.com/message/5484303 may help
-and step by step http://forums.adobe.com/thread/1440508?tstart=0
-and http://helpx.adobe.com/creative-cloud/kb/blank-white-screen-ccp.html
Mac Spinning Wheel https://forums.adobe.com/message/5470608
-Similar in Windows https://forums.adobe.com/message/5853430 -
Statechart Module: What is the order of execution for a parent state and its substates?
Hello,
This page describes the order of execution of transitions and actions for one level of nesting. What about compound states? Do the static reactions of the parent state execute before the transitions of the sub-states?Hello,
I'm not incredibly familiar with the Statechart module, but I will look into it for you on our internal database. In the mean time, there are some examples that may answer some of your questions here:
https://decibel.ni.com/content/docs/DOC-8716
and here:
http://www.ni.com/white-paper/7425/en
-N
National Instruments
Applications Engineer -
Accessibility: Reading order of tables and anchored frames
I am creating accessible, tagged (section 508 compliant) PDFs in FrameMaker 9. The reading order for tables and frames is not correct.
When I view the PDF reading order using Adobe Acrobat Professional or another screen reader, anchored items such as tables and anchored frames are placed last in the reading order, regardless of where they appear in the document flow or page layout. The reading order skips over all tables and frames, reading all paragraphs on a page first, then reading the tables and frames as the last objects on the page. This logically doesn't make sense to skip over tables/frames as they generally apply to the content that preceeds it.
For example, the following document structure:
<Paragraph 1>
<Table 1>
<Paragraph 2>
<Anchored Frame 1>
<Paragraph 3>
<Anchor Frame 2>
<Paragraph 4>
is being read by assistive technology as:
<Paragraph 1>
<Paragraph 2>
<Paragraph 3>
<Paragraph 4>
<Table 1>
<Anchored Frame 1>
<Anchor Frame 2>
I want the document structure to be read correctly as intended.
In otherwords, the PDFs generated by FrameMaker 9 are not completely accessible because of incorrect reading order output by default. This information is not listed in the VPAT for FrameMaker 9.
I want to avoid any post processing using Acrobat's Touch Up Reading Order tool. Is there a way to automate updates to reading order?
Can FrameMaker 9 logically place tables and anchored frames into the correct reading order? How do I adjust these settings?
Thanks in advance!As mentioned above, tables and anchored frames are inserted into thier own paragraph style "Frame". The paragraph style "Frame" is tagged. To my knowledge, there are no options for tagging or not tagging tables or anchored frames.
Regardless of which paragraph type the table or anchor frame is inserted into, and what that paragraphs tagging settings are, it is still last in the reading order.
I've tried a variety of options: tagging the "Frame" paragraph style as a sibling, child, and parent of my other paragraphs; I've even tried omitting it from the reading order. None of these options present anchored frames (and tables) in the logical reading order.
Even images that are inline (within a paragraph; not in thier own paragraph) are not being read as part of the paragraph. Inline images get skipped over by screen readers and get read at the end of the page, which makes no sense whatsoever.
All tables and images end up at the end of the reading order (after ALL paragraphs) regardless of the tagging settings.
Refer to my previous screenshot for a clear diagram of what is happening to the reading order. Each of those anchors is in it's own paragraph style. I want tables and anchored frames to be sequential in the reading order along with paragraphs. (1,2,3,4,5,6 not 1,4,2,5,3,6.)
I'm using the Tags tab of the "PDF Setup" dialog to adjust these settings. Is there somewhere else I should be making changes to the reading order?
This is a bit disturbing because FrameMaker touts creating accessible documents and this severe reading order issue impares my ability to do so. I would not consider documents that jump around the page in an illlogical, fixed order, to be accessible. I'm very suprised that no one else has encountered this issue (at least that I can find...) -
Re: tracing execution and standard Forte messagefilters
Pierre,
There is a tech note describing some of the trace flags that will show
you interpreter profile information. This interface, the information
produced, etc. may change in future releases that's why it's a tech
note and not in the documentation set.
Hope this helps,
Bobby
This note describes how to use the execution profile collector built into
the Tool Interpreter.
NOTE: THIS INTERFACE IS UNSUPPORTED BUT IS MADE AVAILABLE AS IS TO USERS
UNTIL A SUPPORTED INSTANCE OF THE FEATURE EXISTS.
THE SUPPORTED VERSION WILL HAVE A DIFFERENT FUNCTIONALITY AND FORM.
The Tool Interpreter contains an execution profile data collector. The
collection
information can be displayed as trace output or the raw data can be collected
by the program for further manipulation and display. This information
describes the current level of support available. It is possible that this
mechanism will be updated in future releases and/or integrated into the
TOOL debugger.
The profiler only counts intructions executed in the interpreter, it doesn't
account for time spent in C++ code. However it is sill useful in finding
problems in interpreted code and for viewing the dynamic call flow of the
application.
The following trace information is available:
TRACE CALL-RETURN
This trace outputs a single indented line for each method call and
another single line for each method return. The line is indented an
amount equal to the call depth of the task calling the method. The
following information is displayed:
Task Id
Task Name
Method Name
Method Instruction Count
Task(Id=5,Name=InitialLom)Method(Name=Forte.TopClass.StartUp)
Task(Id=5,Name=InitialLom)Method(Instructions=10)
This is enabled using trace setting trc:in:50:1.
This trace can also be used to see the control flow of an application.
TRACE TASK BY METHOD
This trace outputs information about a task and all of the methods that
where called during it's execution. Each method contains information
about the number of times that the method was called and the total
number of instructions consumed by the methods execution. The task
contains the totals of all calls and instructions performed by the
task. The methods are sorted in descending order of instructions
executed.
The following in an example of the output:
TaskByMethod(Id=9,Name=projws.display,Instructions=2212)
ide.projws.updateMenus(Called=1,Instuctions=556)
ide.projws.addBlockComponentsToTree(Called=1,Instuctions=321)
ide.projwsPrefs.LoadPrefs(Called=1,Instuctions=247)
ide.projwsPrefs.Apply(Called=1,Instuctions=206)
UtilsDisplay.PrefMgr.FetchUserPref(Called=12,Instuctions=168)
ide.projws.computeWindowSize(Called=1,Instuctions=168)
ide.projws.refreshBrowser(Called=1,Instuctions=76)
UtilsBase.CompileSession.SetScope(Called=1,Instuctions=68)
ide.projws.fillToolObjTree(Called=1,Instuctions=65)
ide.projws.setTitle(Called=1,Instuctions=53)
UtilsBase.CompileSession.Init(Called=1,Instuctions=48)
UtilsBase.InterfaceBrokerBase.GetCompileSession(Called=1,Instuctions=41)
UtilsBase.InterfaceBrokerBase.LockSession(Called=1,Instuctions=30)
AppModel.abSurrogateRepositoryClient.GetRepository(Called=3,Instuctions=21)
UtilsBase.InterfaceBrokerBase.UnlockSession(Called=1,Instuctions=20)
UtilsDisplay.Workshop.Events(Called=1,Instuctions=20)
UtilsDisplay.Workshop.HelpEvents(Called=1,Instuctions=19)
ide.projws.lookupMask(Called=1,Instuctions=17)
UtilsBase.CompileSession.GetVersionStateForPlan(Called=1,Instuctions=14)
ide.projws.LoadPrefs(Called=1,Instuctions=13)
AppModel.abSurrogateRepositoryClient.GetVersionStateForPlan(Called=1,Instuct
ions=8)
AppModel.abSurrogateRepositoryClient.FindProject(Called=1,Instuctions=8)
ide.projws.resetCurrentNode(Called=1,Instuctions=7)
AppModel.abSurrogateRepositoryClient.IsDetached(Called=1,Instuctions=7)
ide.projws.selectComponent(Called=1,Instuctions=6)
ide.projwsPrefs.Init(Called=1,Instuctions=5)
This is enabled using trace setting trc:in:51:1.
TRACE APP BY METHOD
This trace outputs information about an application and all of the
methods that were called during its execution. Each method contains
information about the number of times that the method was called and
the total number of instructions consumed by the methods execution.
The application contains the totals of all calls and instructions
performed by the task.
The output is similar to the previous case.
This is enabled using trace setting trc:in:53:1.
TRACE TASK BY CALLTREE
This trace outputs the call tree of the task. The call tree shows a
method and all of the methods that it called. And for each of the
called methods the same output is displayed. This can be used to
see more of the call structure of a task. It call also be used to
find the paths in the call tree that consumed most of the instructions.
The methods are sorted in descending order of instructions executed
within each level of the call tree.
TRACE APP BY CALLTREE
This trace outputs the call tree of the application. The call tree
shows a method and all of the methods that it called. And for each of
the called methods the same output is displayed. This can be used to
see more of the call structure of an application. It call also be used
to find the paths in the call tree that consumed most of the
instructions.
The output is similar to the previous case.
This is enabled using trace setting trc:in:54:1.
The following collected information is available:
NOTE: None of the collection options are available at this time.
COLLECT TASK BY METHOD
COLLECT APP BY METHOD
COLLECT TASK BY CALLTREE
COLLECT APP BY CALLTREE
Other potential future features:
The profiler doesn't record when some interpreted TOOL code invokes a method
on a object which in implemented in C++. This causes some profile
information to be lost. If the C++ code invokes a method that is
implemented as interpreted TOOL the BYCALLTREE profile will not show the
C++ code. Thus it could be confusing because it appears that the
interpreted code called something totally different than the what is
expected.
At 10:41 AM 7/31/96, Pierre Gelli wrote:
Hello,
During the process of tuning an application, or just of making it work, it
is useful to trace the flow of processing.
There are two ways of doing it :
1) add your own trace instructions (calls to the LogMgr) at the appropriate
places,
2) use the traces of the Forte Interpreter !
If one relies on solution 1, then it relies on what the developers have
written (and thus sometime forgotten to write !) in their code.
If one relies on solution 2, then potentially it can get as much information
as is available to the interpreter (and the debugger ?), in a fully
independant way since it uses directly the code itself and not added trace
instructions.
So solution 2 seems quite interesting.
Unfortunately there are some potential problems :
a) I haven't found in the documentation an exhaustive description of the
logs the Forte tools do. The only and very short description is on page 148
of the System management Guide. It's far from being exhaustive. So it
requires playing with the filters.
I recommand trying trc:in:1-63. I guess "in" stands for the interpreter.
- level 1 seems to give the call tree,
- level 255 seems to give almost the code !
b) since the flags are not documented by Forte, how reliable and stable will
they be in future versions ?
c) what happens for compiled partitions is not clear to me (I have not tried
it yet).
So my question : are the message filters used by the Forte Tools like the
interpreter described somewhere, i.e. in some Tech Note (I don't have access
to them yet) ?
best regards,
Pierre Gelli
ADP GSI
Payroll and Human Resources Management
72-78, Grande Rue, F-92310 SEVRES
phone : +33 1 41 14 86 42 (direct) +33 1 41 14 85 00 (reception desk)
fax : +33 1 41 14 85 99From: Pierre Gelli <[email protected]>
Subject: tracing execution and standard Forte message filters
Hello,
During the process of tuning an application, or just of making it work, it
is useful to trace the flow of processing.
There are two ways of doing it :
1) add your own trace instructions (calls to the LogMgr) at the appropriate
places,
2) use the traces of the Forte Interpreter !
So solution 2 seems quite interesting.
Unfortunately there are some potential problems :
a) I haven't found in the documentation an exhaustive description of the
logs the Forte tools do. The only and very short description is on page 148
of the System management Guide. It's far from being exhaustive. So it
requires playing with the filters.
I recommand trying trc:in:1-63. I guess "in" stands for the interpreter.
- level 1 seems to give the call tree,
- level 255 seems to give almost the code !
b) since the flags are not documented by Forte, how reliable and stable will
they be in future versions ?
Pierre Gelli,
level 255 is the most detailed you are right on tracing..... As for documentation
you will want to get ahold of several good tech notes that your Forte
rep or support can get you which provide alot of the info you are after.
Let me know if you can't do this and I can send you some of this info, but you are
best to get the latest and greatest directly from Forte.
Len Leber
ATG Partners -
Order of execution at start of dasylab wks (var/str)
what is order of execution in Dasylab when you start a wks for:
"read from .ini" , "enter at start of experiment" , action "at start of experiment".
especially concerning values of vars/strings.
Are any modules, including actions 'at start of experiment ', processed before str/var 'entered at start of experiment' have an answer ('start' or 'cancel').The sequence of evaluation is as follows:
1) Read variables/strings from .ini (when selected in define Global Variables)
2) Enter variables/strings at startup (when selected in Define Global Variables)
3) Start of all modules (except Actions)
4) Start actions of the Action modules (including all variable/string actions)
- cj
Measurement Computing (MCC) has free technical support. Visit www.mccdaq.com and click on the "Support" tab for all support options, including DASYLab. -
Questions regarding Outlook Web App, Remote Desktop, Remote Web Access and VPN Access
Hi there,
I want to ask a series of questions regarding Outlook Web App, Remote Desktop, Remote Web Access and VPN access and was hoping whether you could help me. Below are my questions to ask you.
Outlook Web App - What do I need to configure in order to get my Exchange account to work with the OWA app on my iPhone? Is Office 360 required on the server that hosts Outlook Web App in our organisation? When I configure the settings and
connect I get the following message "couldn't connect - We couldn't connect to the server. Check your information and make sure it's correct." I can connect with other devices using Outlook Web App.
Remote Desktop - What do I need to configure in order to connect to my computer at work using Remote Desktop on my Windows Phone? When I configure the settings and connect I get the following message "Connection error - We couldn't connect
to the remote PC. Make sure the PC is turned on and connected to the network, and that remote access is enabled. Inquiring minds may find this error code helpful: 0x204" I can connect with other devices using Remote Desktop. There are currently no
RD Server settings in the Remote Desktop app on the Windows Phone and the only way I'm to connect to my PC at work is via Remote Desktop and not to be confused with the one by Microsoft, however the app is on a trial basis and times out every 5 minutes and
can only be used once every hour unless I purchased the app for £2.99 off the App Store but would ideally like to use the Microsoft Remote Desktop app though.
Remote Web Access - What do I need to configure in order to get Remote Web Access on my Windows Phone using a URL? When I log in using a URL I get the following message "There is a problem with this Web page. Please contact the person who manages
the server" I can connect with other devices using Remote Web Access. Also how do you enable the background option for Remote Web Access? I know how to do this in Remote Desktop but not in Remote Web Access. Remote Web Access works on PCs regardless
being onsite and offsite and on my iPhone, the same issue also occurs with my Nokia 5230s regardless of whether I'm using Opera Mobile or Mini or the latest Nokia Browser.
VPN access - How do you configure VPN access on a Windows Phone using VPN? I cannot find the protocols PPTP, L2TP, SSTP and IPsec in order to configure VPN access on the Windows Phone apart from IKEv2.
Many thanks,
RocknRollTimAny help would be much appreciated.
Kind regards,
RocknRollTim -
Questions about the future directions of InfoPath and Microsoft Access
Because I have been confused about the future directions of InfoPath and Access, I wrote a short blog post, which I have pasted below. My question is, can Microsoft provide some more guidance on Access vs InfoPath? If Access is indeed the
the future direction, can you please provide some pointers to resources that can help us transition.
A Short Review of MS Access, SharePoint ,InfoPath (2013)
After the November 2012 SharePoint Conference in Las Vegas (#spc12) there were a number of blog posts and people saying that Access 2013 was great and would be replacing InfoPath.
Marc Anderson and
Ruven
Gotz have short posts summarizing #SPC12 and touch on the subject of InfoPath and Access. I also spoke with several individuals shortly after #SPC12 and they were excited about Access 2013.
Since I rely heavily on InfoPath for much of what I do, I wanted to kick the tires and see what everyone was talking about. First, a few notes about SharePoint 2013 and Office 2013.
Microsoft should rename Access: If you have tried to
bing the word Access, then you know that the search results are overwhelming, because the word "access" is used for so many other purposes.
Use the RTM version of Office 2013! I was performing my investigations by leveraging the Office 365 Beta and the Office Applications that come with it. Not much was working! After I uninstalled the Beta
version of Office 2013 and Installed the RTM version everything seemed to work.
Windows 7 and IE 9.0: The drag & drop that is being touted as
"manna from heaven" seems to work well with Firefox, Safari, Chrome, and IE 10, but it does
not work with IE 9!
Non Microsoft browsers are still second class citizens (except for the drag & drop): Microsoft has finally done away with the Active X's for datasheet view (that is brilliant!) One can now see the newly
minted datasheet view in many browsers. But I still find that one needs to be in IE to do a number of key manual opeartions. For example pasting numerous rows of data from a spreadsheet into the new sheet view works only in IE.
Access 2013
Microsoft Access is touted as a non developer tool. I know a number of people who are on the business side and love Access. These people will like the renewed energy that Microsoft has applied to Access. One should note that conceptually
this functionality existed in SharePoint 2010. Here is what I see that is new:
+The new version works better:Although I haven't tested it fully, it seems that many more features that work on the Desktop version of Access, now work in the published Web Application which is hosted by SharePoint 2013.
+The new version has fairly robust browser based forms: End users can now fill in data using forms that are rendered in the browser.
+The published version that resides in SharePoint now uses its own SQL server tables. So the engine appears to be SQL Server, not a modified version of Access built for a server. This stands to be quite robust, but I imagine
that some quirks will surface due to new model.
The limitations are:
- Access is pretty much its own application and does not integrate with SharePoint building blocks. For example, an Access table is not easy to integrate with a SharePoint workflow. Further, although Access forms now are visible
in a browser, they are not nearly as rich as InfoPath forms. InfoPath forms cannot easily integrate with the Access tables. In order to integrate SharePoint features and Access, one needs to tie SharePoint list(s) to Access as data sources.
This overcomplicates the model and one may very well run into synchronization issues.
In short, although I believe there will be some people who will be happy with newly minted Access, I do not think that Access will be able to replace InfoPath and Workflow technologies. I do agree that Microsoft does not seem to have put much energy into
InfoPath. If they leave a vacuum in this space, then others may very well take over, for instance Nintex Forms.Although I agree with the comments made by Ruven and Marc after the conference please note that those blog posts are their own personal opinions and that they don't work for Microsoft. A lot of people have asked Microsoft to clarify the future of InfoPath
and the response up until now has been a deafening silence. In my opinion speculations about Access replacing InfoPath are premature.
I should also point out that most of your comments about Access 2013 above are actually about Access Services in SharePoint Server 2013. Access Services are NOT Access they are a shared service offering in SharePoint that convert and publish Access
databases and forms. As you point out once an Access database is published through Access services it is converted to SQL Server and no longer resides in Access. Of course I don't work for Microsoft either so these are all just my personal opinion.
Having said that I doubt you will get the confirmation/response that you are hoping for from any official Microsoft channel.
Paul Stork SharePoint Server
MVP Principal Solutions Architect: BlueChip Consulting Group
Blog: http://dontpapanic.com/blog
Twitter: Follow @pstork
Please remember to mark your question as "answered" if this solves your problem.
Maybe you are looking for
-
Meaning of factory method in abap objects
Hi, Can anybody help me in understanding the meaning of factory method in abap object? what is the importance of this? Regards Sudhansu
-
My ipad 2 won't upate to ios 6, i keep getting error messages
I have tried several ways to update, disable the lock screen...etc. etc. The system seems to work fine and download, but then errors out. Yes it has always been plugged in and no it is not Jail Broken. Not sure, I use to have so much respect for Appl
-
How to send message to a queue using JMS adapter
Hi, I need to send messages to the default queue(demoQueue) available in the server using a JMS adapter in a BPEL process. I tried doing the same by using an invoke activity that invokes the JMS adapter service to send the message to the queue. I dep
-
Problem with Corelation in BPM
Hi, I am desighning the multiple idoc to file scenario with reference to following blog. https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/2223. [original link is broken] [original link is broken] [original link is broken] in adition to above
-
I can't download Creative Cloud. I keep getting the error message download error undefined. What am I missing?