I have a seemingly simple task in oracle e-business suite to accomplish. I need to extend an object to add an additional field from the database. (In this case, supplier's department needs to appear in a datagrid)
I've found a couple of sites and some documentation that tells you how this works (updating a view object, updating a Java class, recompiling and ftp-ing the files back to the server). The problem is every tutorial I've seen so far makes the assumption you already know where the impacted files are.
I'm struggling with trying to figure out what files I need from my server. I've looked at the About this page link which I think points me in the right direction, but I've only found one object.
Any thoughts on how I can find the files I want?
To find all dependent objects of the base Oracle Application page you wish to extend, use the "About this page" link shown at the bottom-left corner of the base page. The link renders the About page which displays page definition, current session, and technology stack information for that base page. If you do not see the "About this page" link, verify that the FND_DIAGNOSTICS profile option is enabled.
Find the VO Object name from the View Object column. Click on it to view the SQL query behind the VO. Next You will have to create a new View Object that contains your extended code. Create a directory structure so that you can copy the existing VO from the App server into it. To get the existing VO from $JAVA_TOP
Log on to App server (get with the sys admin to better understand your environment)-
1.cd $JAVA_TOP/oracle/apps/<xxx> (where xxx is your product tops directory).
2.tar -cvf <xxx>_top.tar xxx.. repeat for as many modules as you might need.
3.FTP each .tar file to \jdevhome\jdev\myclasses.
4.Extract each .tar file in the \jdevhome\jdev\myclasses and \jdevhome\jdev\myprojects directories.
Related
I need to link a document uploaded by a member.
Which is by using an upload button to a download button on another page in Wix website builder.
I don't have any issue with programming it, but I would prefer not to if possible.
Depending on exactly what you want, this could be doable without any code, or a minimal amount of code, and also using a database collection.
How you setup your collections will depend on exactly what you want to do, but it sounds like you will at least need one field that references one of the Members collections and another field to hold you file.
On the upload page, add a dataset (either write-only or read-write depending on you setup) for the collection and connect the upload button to that collection. Depending on your setup, you might need to write a line or two of code or use filters on the dataset to upload the file with the correct member info associated with it.
On the download page, you do pretty much the same thing. Add a collection (read-only) and connect the button to it. Again, you might have to filter the collection or write a bit of code to make sure you're getting the file that is associated with the current member.
I have an app where users upload PDF docs to a webserver. Each Page in that PDF doc has certain app specific "interesting properties" which the app infers by reading the content in the page.
This information is stored in a DB and needs to be presented to the user. The issue is that users can delete , insert and change the page order, as well as make changes to the values of these interesting properties so page number is not a good way to track the properties of a page.
What is a good way to make sure that we can track this.
In an Access 2013 Web App, I created a relationship by changing a field type to "lookup" and set a related table/field. Now I want to remove the relationship. Whenever I try to change the field type to anything besides "lookup", it tells me I must delete the relationship in the Relationships menu, which doesn't exist in a Web App.
The MS support pages just link back and forth without ever answering this glaringly simple issue.
MS Support Instructions for relationships in Access 2013 (not web apps)
How to create a relationship in an Access 2013 Web App (not delete it)
Good question. I agree that the message we display is a little misleading because the instructions only apply for Access desktop applications. I'll see if we can perhaps change that message. I think it is shared across desktop and web app but I'll ask around. I'll see if we can maybe update the help content articles too. I can't make promises of course, but I'll check on that too.
In any case, to delete an established relationship in an Access 2013 web app, you'll have to delete the lookup field itself. If you need to keep the existing data for some reason, you could temporarily create a new column in the table, use a data macro to copy all of the contents from the lookup field you want to delete into the temp column, and then delete the lookup field itself. You could then copy that data from the temporary column into a new column if need be.
I hope that helps.
I've an existing MVC3 project that implements a certain functionality, this project has it's own views, and a separate Database.
now I'm required to use the same functionality inside one of my orchard project,so I thought that I can host this solution in somewhere and view it inside an iframe or something.
Am I thinking right?,
is this the correct step to take in order to achieve this requirement inside Orchard?
to make it more clear, all I need to do is to view this solution and interact with it's controls and views from a hosting page inside orchard, and the subsequent requests should be handled by my solution in order to hit it's own data store and get back with the requested data in order to be displayed to the user.
any help would be appreciated.
Update:
thanks for Bertrand Le Roy for his answer, I can now view my solution inside my
orchard website.
I came in to one more HUGE problem, which is that my application can no longer connect to my external database.
I've a DB that is hosted in some where else, and I'm using EntityFramework to deal with it.
the problem is that if I put the connection string inside my module web.config, or main orchard web.config, I run into several types of errors like:
"System.Reflection.TargetException: Object does not match target type."
or
"System.Data.MetadataException: Unable to load the specified metadata resource."
My question is: How could I pass my connectionstring correctly to my solution, assuming that I'm using Entity framework as my ORM.
Many thanks.
You will need to put it into a module.
You will have to move route definitions to a Routes.cs file (look at any existing such file for examples).
You will also need, in order to access your data store, to opt out of the ambient Orchard transaction around the data access code (using (var scope = new TransactionScope(TransactionScopeOption.Suppress))).
If you are using dependency injection, you may have some work to move that to the Autofac-based way of doing things in Orchard.
If you want your work to appear seamlessly in the Orchard admin, you may want to decorate your admin controllers with the Admin attribute. If you want your front-end to use the current theme, you'll have to add Themed attributes and maybe refactor your views so that they only emit HTML for the content zone instead of for the whole page.
Add a manifest (module.txt) to your module folder and you should be good to go.
I have 2 entities (for this example) in CRM 2011 - Account and Case. The Account holds all of our clients, the case holds individual work actions for an account. When a case is created one of the input fields is the Account.
What I would like to do is upon the user selecting the Account, execute some javascript to look up the account entity to display some additional information.
So far I have got the javascript working that triggers the onchange event of the Account field, and it correctly gets the selected Account, but I don't know what the next step is.
I'm new to CRM so don't really know if what I'm asking is actually sensible, if there is a better way then please let me know.
Thanks!
For the record, the way you were thinking about doing things would be completely supported, and TechHike's method is supported in CRM 4, not CRM 2011. Steps you would take:
Use CRM 2011's web resources to upload a script file that does what you want.
Use the form editor to make your javascript method from step one fire when the Account field changes on the form
Make a request to CRM's REST endpoint (http://msdn.microsoft.com/en-us/library/gg334767.aspx) to retrieve the details of the account selected
Use the results to populate fields on the form, show a popup with details, etc.
There are plenty of examples of caling the REST endpoint from JavaScript in the SDK (http://msdn.microsoft.com/en-us/library/gg309408.aspx). Good luck!
Matt's post above contains everything you need to know, but you might also find the blog post below useful. It basically describes the same scenario where you have a 1:n relationship (such as Case and Account) and details how you can pull information from a specified lookup (e.g. account), using the REST endpoint (as Matt has already mentioned) and display it on the form.
http://community.dynamics.com/product/crm/crmtechnical/b/crminthefield/archive/2011/02/07/showing-related-information-in-a-crm-2011-form.aspx
The blog post includes a link to download a CRM2011 solution already built to give you something to look at how they've achieved this (useful if you're new to CRM2011).
There are two ways to do this, and you may be best to do them both in parallel:
on the Account > Case relationship edit the Mappings. When a user goes to an Account and uses the left navigation to look at Cases (or a grid of Cases on the form) then hits "Add New Case" they are creating a Case from inside the "context" of the Account. You can copy any fields you want to from the Account to the Case record at this point - the Mappings define what field from the Account are copied to which target field on the Case. This will always be the most robust, easiest way to do it but relies on the user starting in the right place.
on the Case for you could also add an onChange script to the Parent Customer lookup to fetch the data from the parent record. I think Stephen's link is probably the best way to do this as it does not copy the fields but allows the user to see them anyway, which is better database design (from a purist standpoint) and means the user always sees current info about the Account rather than possibly out of date stuff. Alternatively if you actually need to copy some fields (maybe the customer's normal SLA say) so that you can use these in other such as scripts or workflows on the Case then have a look at this article: Disabling the selection of contacts for opportunities all the way
Although this is about a slightly different topic, the script there fetches the Account details of the parent Contact - you want to fetch values from a parent (llokup) field so the approach is the same, just different in the detail
There are various ways to do this but I would recommend doing it the supported way, without javascript. This may not be as pretty but it is likely much easier. The scenario would be to add a left navigation link to the case entity that when clicked will update the content area to show the details of the account.
To add a link to the left navigation you will need to configure the isv.config file to have an extra link for the case entity.
Here's an example:
http://support.sfusion.com/kb/hosted-microsoft-crm-4/how-do-i-modify-the-isv-config-file-in-microsoft-crm-4/
You can also lookup isv.config customizations in the SDK, found here:
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=82e632a7-faf9-41e0-8ec1-a2662aae9dfb&displaylang=en
Next you will need to create a custom aspx page in the ISV folder of the web server. This page will display all the information about the account that you want to show the user when the left navigation link is clicked. The ISV.config as an xml property that allows you to pass all the context params to your page on the querystring. Make sure when you create the link to turn on this attribute.
Now the only tricky part is that in the page you will need to use the CRM web service to display all the account details that you interested in showing the user. I won't do into details on this. You can find great tutorials on the web or in the SDK if you haven't done this before.