Unable to modify this value in Debug - oracle

I can't set any value for input data, while debugging my procedure in Oracle SQL Developer.
When I try to change the value from NULL to any other I getting the following error. What is the problem? What does "debugger process may not allow values to be modified", and how can I fix this?

I think the problem is that you cannot modify the value of a parameter. I ran a quick test and was able to change the value of a variable, but got the same error message as you when I tried to modify a parameter.
There's no way to be sure though, Oracle debugging is a mess. The DBMS_DEBUG documentation is wrong. And there isn't any useful information for DBMS_DEBUG_JDWP, which is what SQL Developer uses.
You'll have to change the value before it is passed to the procedure, if possible.

Related

Parse query/procedure in Toad

I am new to Oracle/Toad. I am trying to create new procedures using Toad as IDE. Don't have permission/access to execute the procedures in the Oracle DB. In order to check whether the procedure is written correctly wanted to parse the procedure. We have do have option in SSMS for Parsing the query.
Tried to find on Google and got Ctrl+F9 option. But nothing happens when i press those keys. Do I need to change any other setting along with it?
SSMS Parse option
From my point of view, what you are doing is pretty much useless. How are you supposed to write a program if you aren't allowed to execute it? Why don't you ask for access? Or, do as we do (here, on StackOverflow): someone asks a question, doesn't provide test case so we create it ourselves. You could do the same.
if you have your own user in some database, do it there
if you don't, consider installing Oracle XE
if not, sign in for free access on apex.oracle.com and write code online
Though, what do you call "execute"? Can you compile it? That's what create or replace procedure your_proc does. begin your_proc; end; executes it.
As far as I can tell, you can tell TOAD to format code (Ctrl + Shift + F). If it fails, there's something wrong so you should fix it (TOAD will tell the position of the error). Other than that, if you can't compile nor execute it, I'd say that there's nothing you can do.

SSRS error on preview : "The size necessary to buffer the XML content exceeded the buffer quota" hides original error

I understand that there is definitely something wrong with my report (e.g. columns missmatcch) and I need to correct it but what I see is the WCF error message that hides actual problem and exactly this hiding irritates me much more than original problem: columns missmatch.
I guess we need to adjust the WCF 'buffer size' and we will get original problem message. But where is the config file?
Text search of "system.serviceModel" in the C:\Program Files (x86)\Microsoft Visual Studio 10.0 doesn't bring good idea...
P.S. Since this is just preview of report I do not think that it is SSRS configuration problem. Problem localised somewhere in DevStudio process or int the DevStudio's internal web server process ...
P.P.S Please help me too improve the question. I see that responders doesn't understand what kind of help I need.
I have encountered multiple "flavors" of this bug in SSRS Preview. It seems the renderer for Preview mode is quite fragile.
There is a simple way to solve this. Ignore the error and attempt to upload the RDL file to your reporting server. The uploader will happily tell you exactly what is wrong with your file - it will tell you exactly what field has a problem and what that problem is. If there are multiple errors, you will get told each and every field and the error associated with each one.
I can create this bogus XML buffer error with any of the following:
Add a new Tablix, start to connect it to a dataset, then cancel out.
Copy/paste some text into a textbox from a MS Word document where one or more lines have a negative right indent (right column end is outside page margin).
Connect a dataset with a varchar(8000) returned value.
Please Check if any of your report items are referencing fields that are not in existing dataset scope.
This indeed worked for me.
See Below link for more information:
http://connect.microsoft.com/SQLServer/feedback/details/742913/ssdt-reporting-services-designer-error
I have seen this error when adding a new field to an existing dataset by clicking "Refresh Fields".
The dataset source was a stored procedure. The result was only a few of original fields showed up in the dataset field list and not the new field. If I tried to preview the report I get XML buffer error.
Workaround was to not refresh fields but hit add new field and type the new field name into the dataset properties field last.
Worked fine after that.
I got this error again today.
I had created a table to hold data to replace two slow queries. I changed some names to clean up the process.
I think the error actually means that there are so many problems with my report that the buffer holding the various error messages isn't large enough which leads to the error message.
The size necessary to buffer the XML content exceeded the buffer quota
Of course this should be an easy fix but Microsoft has said that they will not fix it.
https://connect.microsoft.com/SQLServer/feedback/details/742913/ssdt-reporting-services-designer-error
EDIT: I've updated my answer based on having fixed the issue.
I'm currently experiencing this problem after having changed multiple stored procedures and updating the dataset names in the SSRS report.
And when I try to run the preview I get the exact same error.
As it turns out, after investigating the issue, the problem was that I had changed the name property of my datasets.
There several places in my report where formulas or expressions use the old name properties of the datasets I renamed. After reverting the dataset names back, I managed to get the real errors like missing fields etc. atcual errors came back after I set my dataset name properties back to what they were.
I only changed the name property back to what it was, the stored procedure names were correctly referring to my renamed stored procedures.
I had this problem when after copying and pasting a tablix, it changed CDbl in a formula to Microsoft.ReportingServices.RdlObjectModel.ExpressionParser.VBFunctions.CDbl. I opened up the XML and removed all instances of "Microsoft.ReportingServices.RdlObjectModel.ExpressionParser.VBFunctions." and the report then worked.
For a working report, when I tried to add a column it gave me this error. I edited the .rdl file using notepad++. After SSRS prompt to reload the change from disk, it worked without issues.
I got this error after copying my Custom Code to Visual Studio for hightlighting the code for better readability. Well, Visual Studio added class definitions to the beginning and end of the file. After editing code, I pasted it back to report Custom Code, then got this error. Fix was just to remove class definitions (Public Class Class1 and End Class) from Custom Code. So, check your Custom Code also (if any).
I got this error after adding some new parameters to an existing report.
For some reason when I created the parameters first then modified the Dataset to use the new parameters I got the error, but when I modified the Dataset first then added the parameters second and I did not get the error.
This seemed like very strange behavior to me so I tested it by restoring the report from repository and repeating the process three times with each method, and had identical behavior every time.
I am also facing this problem. I solve this Find and replace
Microsoft.VisualBasic.Interaction.iif ==> iif
Microsoft.ReportingServices.RdlObjectModel.ExpressionParser.VBFunctions.cdbl
==> cdbl
I hope this may helps someone. Thanks
Possible root causes
Parameter name is incorrect(case/order)
Accessing non-existing property.
and many more...
Solution: To get the exact error message are
Deploy SSRS report and find the error : Suggested by "Kim Crosser" already
Remove the section(SSRS/Report content) temporarily you feel is error free to free space in buffer so that you can get actual error message. Later add sections back to the page(removed earlier).
I had the same error message and it was totally caused by my doing. It's a bit embarrassing, but if it helps someone out then great! I had accidentally copied my dataset query that included a small sub select statement within it, which I was using to check parameter/variable values.
Another solution is to open the .rdl file in Report Builder 3.0 (as opposed to Visual Studio) and try to preview it. I found this gave me the details of the error, although if more than one error is present it only shows the first.
I previously binded a TextBox to
Fields!FieldName
and fixed it with
Fields!FieldName.Value
With that said, and with the other answers posted as well, this error happens in different flavors. My issue was fixed after I had the field property "Value" included.

need help formatting a date parameter in Oracle BI Publisher RTF template

I'm not talking about using the parameter in the data template - I'm all set there. I need to know how to change the format of a parameter once it hits my RTF template.
I have
<?param#begin: p_Date?>
<? $p_Date?>
This gets my parameter from the report request page onto my report. However, I can't seem to alter the format. I'm sure I just need to understand how to access it, but I'm not that familiar with BI Publisher. I know I can alter the format on the request screen, and that flows through, but I need to alter it on the end result. Can anyone help?
Ok, I finally found it. You can use the format_date function; the documentation is a little sparse. My syntax looks like this:
<?xdoxslt:format_date($p_Date, 'MMM yyyy','MM-dd-yyyy', $_XDOLOCALE, $_XDOTIMEZONE)?>
The first parameter is the target format, the second is the input mask. The second can be overridden to use a specific l18n style.

RDLC Report With Empty DataSet

I'm currently trying to get an rdlc report to work, and it works fine except when I pass an empty dataset to it (the dataset is determined dynamically at runtime -- ugly, but this is the code I was passed and I'm not quite experienced enough to really feel confident about wiping it and rewriting it). When I pass it an empty DataSet, it fails with an "Object reference not set to an instance of an object." The strange thing is, I have another report that gets passed a similar DataSet, but it doesn't fail. I'm not quite sure why one report with an empty DataSet is failing, but the other is not.
Any help is much appreciated!
Figured it out. As it turns out there was a stray parameter that wasn't getting set... rebuilding the report from the ground up did the trick.

How do I distinguish ADO Database Errors in VB6

I'm using ADO to read and write a database from a VB6 application. Naturally, the database access may return errors. I am currently displaying an error message by a method borrowed from here http://www.devx.com/tips/Tip/13483 but I would like, in my code, to act differently according to whether the error is an index constraint violation, a column constraint violation, trigger forced an error and so forth.
Would I be right in looking in the .Number part of the first error in the collection? Or the last?
And does anyone know where I might find a list of the error numbers used here?
ErrorValueEnum specifies the type of ADO run-time error with a list of ADO error codes.
No, Err.Number will only contain the error from the ADO standpoint. Database internal errors are database specific. For example, in Oracle nearly all errors that you'd care about match the pattern ORA-(\d{5}) and you could pull that value from Err.Description to find out the exact error code.
More careful study of the data structure returned reveals it has a member .SQLState, which contains what I am looking for. Apologies to Dan and systempuntoout for not noticing this before.

Resources