Generate output XML for a PL/SQL stored procedure concurrent program (EBS).
HelloI trying to generate XML output for a simultaneous PL/SQL program and then use it as a model for BEEP.
Program PL/SQL for a report consist of sliders/queries and other calculations of output data.
Program (report) made up of topics, couple of col. values of one or more tables DB and rest of the columns are values read from DB colonel and calculated. The length of the neck extends up to 280 characters.
All out - put is shown using fnd_file.put_line (fnd_file.ouput,...);
before first fnd_file statement, included the following stmt.
fnd_file.put_line (fnd_file.output,' <? xml version = "1.0" encoding = "UTF - 8"? > ');
Using demand conc., notice ouptut poster error...
The XML page cannot be displayed
Invalid at the top level of the document. Error during processing of the resources ' http://ohcol0ws023.amp-ohio.org:8004/OA_CGI/FNDWRR.exe...
<? XML version = "1.0" encoding = "UTF-8"? >
I tried to add tags in the rest of the fnd_file.put_line stmts. as
fnd_file.put_line (fnd_file.output, '< Heading1 >' |) 'Report name ' | (/ head2 > '); etc.
View output shows the same error message.
PL. advise how go further or tell me the link, if it's already been answered earlier.
Thank you
Prak
Copy the file from $APPLCSF / $APPLOUT to your customer and try to open it. Find out what's wrong with the code XML, for example, you may need to top level element:
Write to me if you can't get by - see my profile.
Kind regards
Gareth
Tags: Business Intelligence
Similar Questions
-
Creation of XML report using the PL/SQL stored procedure
Hi friends,
I'm working on a report xml with the xml source as a PL/SQL stored procedure.
I mean the fiscal year indicated in the following link to understand the process:
http://orclapp.blogspot.com/2012/02/developing-xml-publisher-report-using.html
In the example shown in the link above, I did not understand the following:
(1) in the following procedure, setting out "retcode" is not used at all.
What is the importance of this parameter.
REPORT PROCEDURE (errbuf OUT VARCHAR2, retcode OUT VARCHAR2, p_product_id in NUMBERS)
(2) after the xml data are prepared and updates 'l_result' variable Clob, what follows
Loop is executed. I am not able to understand why the following loop is required.
LOOP
EXIT WHEN l_length = l_retrieved;
IF (l_length - l_retrieved) < 32000
THEN
SELECT SUBSTR (l_result, l_retrieved + 1) IN l_xmlstr FROM DUAL;
l_retrieved: = l_length;
fnd_file.put_line (fnd_file.output, l_xmlstr);
ON THE OTHER
SELECT SUBSTR (l_result, l_retrieved + 1, l_offset)
IN l_xmlstr
FROM DUAL;
l_retrieved: = l_retrieved + l_offset.
fnd_file.put_line (fnd_file.output, l_xmlstr);
END IF;
END LOOP;
(3) in the example it is not explained how the concurrent program gets the xml data?
I guess that it is written to a file by using the following line of code:
fnd_file.put_line (fnd_file.output, l_xmlstr);
I would be grateful if someone can shed some light in my questions above so that I can well understand the process.
Thanks and greetings
Hawker
Hi 32000 in the code is a 'safe' than 32767 available max mesh, loops is intended to get around the entire thing into pieces that can be managed within the limits of the data type.
BTW; If you are in the following Oracle e-business, you can also use the Oracle reports very simply to create the XML output.
If you have reports developer all you need to do is put raw sql (create XML without any "Fireworks") in the SQL report and then set reporting in XML format in the definition of program in Oracle e-business.
Best regards
Robert.
-
BPEL does not receive "return value" of MS SQL, stored procedure
Hello
We are facing this problem citing a MS SQL stored procedure the BPEL (jdbc 1.2 driver). We have created the wsdl for the stored procedure correctly using a command line utility tool provided with Oracle SOA Suite.
But the question is THAT BPEL is not able to get the data present in the statement of "return" of the procedure. We receive null output. But it is able to extract the data from the output variable, if any. Case 1 below is for the return statement. Case 2 is for the output variable
Case 1: in the following, the output is returned using the return statement. The BPEL that calls this procedure is to obtain a NULL value as an answer to this.
ALTER PROCEDURE [dbo]. [AddNumbersRet]
-Add the parameters for the procedure
@Number1 int,
@Number2 int
AS
BEGIN
-SET NOCOUNT ON added to avoid additional results sets from
-interfering with SELECT statements.
SET NOCOUNT ON;
-Controls insert for procedure here
Return (@Number1 + @Number2);
END
Case 2: in the following, the output is returned using the SumOfNums output variable. The BPEL that calls this procedure is to obtain a correct answer.
ALTER PROCEDURE [dbo]. [AddNumbers]
@Number1 int,
@Number2 int,
@SumOfNums int output
AS
BEGIN
-SET NOCOUNT ON added to avoid additional results sets from
-interfering with SELECT statements.
SET NOCOUNT ON;
Set @SumOfNums = (@Number1 + @Number2);
END
Case 1 is a failure and case 2 is successful. We cannot change our procedures similar to case 1 to use variables of output because of dependencies on other applications.
All the world is facing this problem? This looks like a bug in BPEL. Please, share your experiences.
Thanks and greetings
Mohan
Published by: user10980910 on December 8, 2009 05:16There is a gap in the command line utility that was addressed in the adapter configuration (AS11gR1) Wizard. The API is a procedure, not a function, so does not return the query for the parameters that the utility made anything for the RETURN statement.
The adapter configuration wizard is unable to say if there is a RETURN statement either, but it provides the user with a check box that can be used to indicate the presence of the declaration. In the wizard, if you check the checkbox, a parameter is added to the XSD to the RETURN statement. In essence, the adapter will process the procedure as a function and you will get the value of the PERFORMANCE.
Usually, I wish to indicate that you certainly should NOT change the generated XSD. But you might be able to do it, by adding the necessary element to the OutputParameters for your RETURN statement. Add the following immediately AFTER the element of 'Lines', which occurs first in the XSD and BEFORE all items for the other none.
Use a value for the "
" that is meaningful to you. The wizard uses the name of the stored procedure with the name of the element. We could call this "RETURN_VALUE" or else if is more to your liking. Add the item after you generate the XSD using the command line utility, and then use the XSD when you model your BPEL processes. The WSDL should already have the content for this element handling. -
How to create simultaneous program of type PL/SQL stored procedure?
I have the procedure to reset sequence as below:
CREATE OR REPLACE PROCEDURE DEV_RESET_XX IS
V_NEXT_VAL1 NUMBER;
BEGIN
RUN IMMEDIATELY "ALTER SEQUENCE DEV_RECEIPT_S1 MINVALUE 0';"
RUN IMMEDIATELY "SELECT DEV_RECEIPT_S1. DOUBLE NEXTVAL ' IN V_NEXT_VAL1;
RUN IMMEDIATELY "ALTER SEQUENCE DEV_RECEIPT_S1 INCREMENT BY ' |" -V_NEXT_VAL1;
RUN IMMEDIATELY "SELECT DEV_RECEIPT_S1. DOUBLE NEXTVAL ' IN V_NEXT_VAL1;
RUN IMMEDIATELY "ALTER SEQUENCE INCREMENT DEV_RECEIPT_S1 1 ';"
END DEV_RESET_XX;
And if I run this query don't use PL/SQL, no problem and success.
EXEC DEV_RESET_XX
And then I want to create simultaneous program for this procedure.
1. create the executable program
-Methods: PL/SQL, stored procedure
2. create the simultaneous program
-Call the executable program
-Nothing parameter
3. assign the application group to receive
And then I try to run this competitor.
But, status complete error.
Help, please.
Thank you.
Hello
To save pl sql program, we have two required parameters. ERRBUFF and RETCODE
Steps to create a concurrent program of type PL/SQL stored procedure. Techmandate.com
No need to create these parameters in the simultaneous program window. Just use those in your procedure.
hope this will help you
-
Call a PL/SQL stored procedure - data type mismatch
I call a PL/SQL stored procedure from within a procedure of ODI using the specified technique page Cezar and Julien (http://odiexperts.com/how-to-use-plsql-procedures-and-functions-in-odi) and I get the error "Wrong number or argument types»
I tested each of the types of parameters, in that I'm passing and it is the text that is causing the problem. I tried to use 'Text' and 'Alphanumeric' for the data type of the variable of the ODI and so many VARCHAR2 and VARCHAR for the PL/SQL parameter type and I can't make it work.
Is there a trick for passing a string in the ODI PL/SQl?Hello
Ensure
1. to declare/refresh of the variable before call to PL/SQL.
2. If the variable is of "alphanumeric" ODI calling must be attached to apostrophes and prefix with the code project as ' #MYPROJECT. ODI_Var'
3. as parameters you have u who must pass both during the call (IN, OUT, etc.).
Thank you
Guru -
to find the location of PL/SQL, stored PROCEDURE in the database
Hello
This is the detail I have the executable of the Application Developer program simultaneous
Executable NAPESCO_STAFF_LEDGER_DTLS
Short name NPSTALEDDTLS
Application of human resources
Execution of PL/SQL, stored procedure method
Name of file execution NAPESCO_STAFF_LEDGER_DTLS
I would like to know how to view and change this procedure, where it is stored
kindly helpHello
This seems to be a custom package. To display the source of the simultaneous program ' PL/SQL Stored Procedure', please refer to (Note: 455582.1 - where can I get the whole "stored procedure" Pl/Sql Source file on the current program?).
Thank you
Hussein -
Register proc of pl/sql under the concurrent program
I'm looking to which a pl/sql package.procedure as a concurrent program.
I would like to run the concurrent request of user FX_RATES, i.e.
So I used the following script to record the simultaneous program:SQL> l 1 select fnd.User_id 2 ,fresp.Responsibility_ID 3 ,fresp.Application_ID 4 from FND_User fnd 5 ,FND_Responsibility_tl fresp 6 where upper(fnd.User_Name) = 'FX_RATES' 7* and upper(fresp.Responsibility_Name) = 'GL SUPERUSER' SQL> / USER_ID RESPONSIBILITY_ID APPLICATION_ID ---------- ----------------- -------------- 1067 50254 101
But when I login as FX_RATES I can't view the competitor ask "GL Mnh charge rate.declare b_OK boolean; begin fnd_global.apps_initialize(1067, 50254, 101); b_OK := fnd_submit.set_nls_options('AMERICAN'); fnd_program.executable( 'GL_MNH_FX_LOAD' -- executable name , 'SQLGL' -- application name , 'GL_MNH_FX_LOAD' -- short_name , 'GL Mnh Rate Load' -- description , 'PL/SQL Stored Procedure' -- execution_method , 'GL_RATE_LOAD.LOAD_FX_MNH_RATES' -- execution_file_name , null , null , 'US' -- language code , null); commit; fnd_program.register ( program => 'GL Mnh Rate Load' -- Name seen on concurrent request screen ,application => 'SQLGL' ,enabled => 'Y' ,short_name => 'GL_MNH_FX_LOAD' ,description => 'Loads FX Rate file' ,executable_short_name => 'GL_MNH_FX_LOAD' ,executable_application => 'SQLGL' commit; fnd_program.add_to_group('GL_MNH_FX_LOAD' ,'SQLGL' ,'GL Concurrent Program Group' -- Request Group Name ,'SQLGL'); commit; end; /
When I login with administrator user, I can see the program is defined, i.e. simultaneous-> program-> define.
So why is the simultaneous program not available in the screen after you select SUBMIT new request when logged in as FX_RATES?
Hints would be much appreciated!After you connect as user FX_RATES, what responsibility you choose? The new concurrent program should be added to the application group that belongs to this responsibility.
For research through forms, you access the form, press F11, enter the search criteria, and then press Ctrl + F11 to retrieve results.
PL note this change of basic objects (such as responsibilities and application groups etc.) is not recommended. These changes will not survive an upgrade, as the upgrade process will be back on all these custom changes. It is best to create custom query groups / menus / responsibilities etc. to all custom objects.
HTH
Srini -
SQL stored procedure input and output parameters
Hello Gang,
My dead end trying to call a stored procedure in SQL Server 2008 with the LV database tool.
for purposes of experimentation, I've created a small procedure with an input parameter that returns an integer as return value. It works describing a query, but all attempts at LV produce an error-2147217900 when executing query VI. I did find examples of that.
Sending a bunch of parameters to a stored procedure and checking the value of return seems to be pretty common stuff.
I'll appreciate any help.
Thank you
Roger
Hi Roger,
There are a few prerequisites which I will list below. If you have not checked these things, so don't hesitate, as your hiccups can be there.
Prerequisites:
- Ensure that you can read from a table in the database to verify that you can access the database (user permissions) and ensure that your login details are correct. Among other things, make sure that the. DSN switches to the correct database. (See the simple example below, SQL Select.vi)
- Make sure that your user (if you use SQL authentication) has permissions to run the STORED procedure by running the procedure in SQL Server Management Studio (you seem to have already done this)
Example by calling a procedure without parameters (attached as SPROC_No_Parameters.vi):
Example by calling a procedure with parameters (attached as SPROC_Parameters.vi):
An article on the execution of stored procedures is here:
http://digital.NI.com/public.nsf/allkb/07FD130746083E0686257300006326C4
Don't forget to download the example VI since it includes the cases where you want an output parameter of the procedure rather than a table.
I tested these against two very simple SPROCs and it worked fine (on SQL Server 2005, but 2008 should be the same). Stored procedures have been:
CREATE PROCEDURE [dbo]. [GetContacts]
AS
BEGIN
-SET NOCOUNT ON added to avoid additional results sets from
-interfering with SELECT statements.
SET NOCOUNT ON;-Controls insert for procedure here
SELECT * FROM Contacts
ENDand
CREATE PROCEDURE [dbo]. [MultiplyAges]
@param1 INT = 1
AS
BEGIN
-SET NOCOUNT ON added to avoid additional results sets from
-interfering with SELECT statements.
SET NOCOUNT ON;-Controls insert for procedure here
SELECT (age * @param1) OF Contacts
ENDI would like to know if these examples work for you or if you have any other questions. Don't forget to go through this KB article and articles related to it, they should cover other situations.
Matt
- Ensure that you can read from a table in the database to verify that you can access the database (user permissions) and ensure that your login details are correct. Among other things, make sure that the. DSN switches to the correct database. (See the simple example below, SQL Select.vi)
-
SQL to generate the last weeks date (not a stored procedure)
I need SQL to generate the last dates of weeks from Monday to Sunday. I don't want to use the data in the table or the stored procedure. I need inline SQL. Please help me with your suggestions. Thanks in advance for the help.Varun says:
I need SQL to generate the last dates of weeks from Monday to Sunday. I don't want to use the data in the table or the stored procedure. I need inline SQL. Please help me with your suggestions. Thanks in advance for the help.below should help you get started
1* SELECT SYSDATE-LEVEL from dual CONNECT BY LEVEL < 8 SQL> / SYSDATE-L --------- 21-APR-13 20-APR-13 19-APR-13 18-APR-13 17-APR-13 16-APR-13 15-APR-13 7 rows selected.
-
B2B Gateway fails to generate data xml for 997
Hi all
I am faced with a particular problem with one of my test B2B case, where xml for 997 EDI X 12 file is not generated. The file EDI 997 is get picked up however it will fail to generate the request message. In the report so there will be no errors. When I click on the details link on the page of reports for the 997 message the message of application link is not active and does not redirect to the details of the application pop up message by clicking on it.
Could someone of you please think why this problem occurs... It worked perfectly in my case of dev...
Please also suggest if more details could be found in the log files of B2B.
concerning
RakeshYour real problem is configuration...
You must go to the Configuration under Administration tab and section of the page, set "notify functional Inbound" accused of reception and the "receipt functional managed automatically ' to 'true '. Otherwise the message from the Application does not get generated for your 997 s entering.
-
Hey gurus,
I am trying to generate the XML code next to the double, however, I get an error message indicating that my higher level is not set. Any ideas? Thank you!
< PUDOOUTPUT >
< PKG >
< > 12345 SHIPMENTID < / SHIPMENTID >
< ERROR > 'NO DATA' < / ERROR >
< ERRORTEXT > "" error: could not find alias sender in SPL_SHIPPER_ACCOUNTS. "< / ERRORTEXT >"
< / PKG >
< / PUDOOUTPUT >
Select xmlelement ("PUDOOUTPUT", xmlelement ("PKG", xmlelement("SHIPMENTID",i.shipmentid),
XmlElement ("ERROR", "NO DATA")
XmlElement ("ERRORTEXT", "error: could not find the sender aliases in SPL_SHIPPER_ACCOUNTS.'")))
in p_wms_output
Double;It works on 10.2.0.3
select xmlelement("PUDOOUTPUT",xmlelement("PKG",xmlelement("SHIPMENTID",123456), xmlelement("ERROR",'NO DATA'), xmlelement("ERRORTEXT",'Error: Cannot find shipper alias in SPL_SHIPPER_ACCOUNTS.'))) from dual;
I suspect the question is because you have "i.shipmentid" in your SQL statement you have to table with an alias of 'I' in your SQL statement. Do you mean something like l_shipmentid as a variable from your PL/SQL code?
-
Failed to retrieve input or output XML for a BP
Hello
Unfier 10.1 running. Logged as administrator. After the opening of a company under uDesigner/Business process, select a BP. In the menu select integration. When we try to recover the input or output XML, we get an empty document of 0 bytes. The entry CSV Template shows to the menu option and XLS document with data.
Anyone encountered this?
Thank you
Rudy
Solved.
I logged in as a user with Admin privileges, then changed to user mode Admin open the workspace under uDesigner and company I can export documents of integration with success.
-
appellant the pl/sql stored procedure
Jdev11g R2, ADF BC
I have a stored procedure 'COPY_BKG_E2I' and it has three input parameters to generate a new record in the database.
===========================================================================
I created the AM method as follows and defined as method of the client AM class:
=========================================================
helper method:
===========
protected void callStoredProcedure (String stmt, Object [] bindVars) {}
PreparedStatement st = null;
try {}
// 1. Create a JDBC PreparedStatement for
St = (PreparedStatement class) getDBTransaction () .createPreparedStatement ('start' stmt + ";"end;", 0);
If (bindVars! = null) {}
// 2. Loop on values for the bind variables passed, if any
for (int z = 0; z < bindVars.length; z ++) {}
// 3. Set the value of each variable binding in the statement
st.setObject (z + 1, bindVars [z]);
}
}
// 4. Execute the statement
st.executeUpdate ();
}
catch (SQLException e) {}
throw new Aexception.getLocalizedMessage (e);
}
{Finally
If (st! = null) {}
try {}
// 5. Close statement
St.Close ();
}
catch (SQLException e) {}
}
}
}
call the stored procedure:
{} public void callProcWithThreeArgs (String V_BKG_NO, String V_VESSEL_ARRIVED_REMARKS, Date V_ATA_POD_D)
callStoredProcedure ("COPY_BKG_E2I(?,?,?)", ")
New Object [] {V_BKG_NO, V_ATA_POD_D, V_VESSEL_ARRIVED_REMARKS});
}
Now, I created back bean and page fragment,
=================================
in my page fragment, I bind the field three entries to the bean back:
============================================
package olfms.view.backing;
Import oracle.adf.view.rich.component.rich.input.RichInputDate;
Import oracle.adf.view.rich.component.rich.input.RichInputText;
Import oracle.adf.view.rich.component.rich.output.RichOutputText;
public class saveBkgUpd {}
Private RichOutputText bkg_no;
Private RichInputDate arrive_date;
Private RichInputText arrive_remarks;
public saveBkgUpd() {}
Super();
}
{} public void setBkg_no (RichOutputText bkg_no)
This.bkg_no = bkg_no;
}
public RichOutputText getBkg_no() {}
Return bkg_no;
}
{} public void setArrive_date (RichInputDate arrive_date)
This.arrive_date = arrive_date;
}
public RichInputDate getArrive_date() {}
Return arrive_date;
}
{} public void setArrive_remarks (RichInputText arrive_remarks)
This.arrive_remarks = arrive_remarks;
}
public RichInputText getArrive_remarks() {}
Return arrive_remarks;
}
My question:
//?????? How to call the callProcWithThreeArgs with these three bkg_no; arrive_date; arrive_remarks; Help, please! Thank you!
?
}Check your imports
especially: import oracle.binding.BindingContainer;
This is the bean of tireimport oracle.adf.model.BindingContext; import oracle.binding.BindingContainer; import oracle.binding.OperationBinding; public class Test { public Test() { } public BindingContainer getBindings() { return BindingContext.getCurrent().getCurrentBindingsEntry(); } public String callProcedureProgramatically() { BindingContainer bindings = getBindings(); OperationBinding operationBinding = bindings.getOperationBinding("callProcWithThreeArgs"); operationBinding.getParamsMap().put("param1", "first value"); operationBinding.getParamsMap().put("param2", "second value") ; operationBinding.getParamsMap().put("param3", "third value"); Object result = operationBinding.execute(); if (!operationBinding.getErrors().isEmpty()) { return null; } return null; } }
-
Hello
I'm new to the development of Oracle.
I have the following scenario for which I need your help/suggestions to write a stored procedure.
A load process in a table unfolds with about million files once a month.
I have a LOG Table to record the events of job loading IE when it starts, when it stops, status etc. with the following columns
job_name, job_status, start_time, end_time, date, flag
work focuses on the work that is in charge of the table.
Based on the values in this table, I want to develop a stored procedure sql pl verifies the status of the job and does the following
When the flag = R (assume for running job) set it to run the job again as 1 hour later... if its still ongoing then 1 hour later... so now up to 5 trys
= F (Finished)
= E (error problem) launch the load immediately
The flag State values noted above are not binding... values just to give you an idea... all the other variables to use to store procedure or any new passes in the table... .suggestions are welcome for these values as well.
Basically, I would like the stored procedure to be called at some point... say SUNDAY at 06:00 and check the STATUS of the INDICATOR/table newspaper column and run.
In short, I like the pl sql store procedure to use table to log and monitor the loading process.
Structure/Basic code stored procedure for this requirement or a stored procedure that you have met similar requirements are welcome.
Thanks in advance.
Published by: user13517642 on March 23, 2011 13:28
Published by: user13517642 on March 23, 2011 13:29Your process or procedure shud look like - [not tested]
DECLARE l_flag LOG.flag%TYPE; BEGIN SELECT flag INTO l_flag FROM LOG WHERE job_name = p_job_name; WHILE l_flag = 'R' LOOP DBMS_LOCK.sleep (3600); --3600secs in 1hr SELECT flag INTO l_flag FROM LOG WHERE job_name = p_job_name; END LOOP; IF (l_flag IN ('F', 'E')) THEN --<
> END IF; END; Look at the following to find out how to plan work-
http://www.oradev.com/dbms_scheduler.jsp
Published by: Sri on 23 March 2011 14:10
Published by: Sri on 23 March 2011 14:11
-
Call a PL/SQL stored procedure
Hello
I created a stored procedure p1 that calls another stored procedure PLSQLScheduler(). This PLSQLScheduler() is invoking a Web service and it works very well.
create or replace procedure p1 as
Start
call PLSQLScheduler();
end;
Now, I created a job, that must call my webservice for all hours. From now on, I gave to every 2 minutes.
Start
() dbms_scheduler.create_job
job_name = > Test_Job',.
job_type = > 'PLSQL_BLOCK ',.
job_action = > ' start p1(); end;',
repeat_interval = > ' FREQ = MINUTELY; RANGE = 2',
enabled = > TRUE,
auto_drop = > FALSE,
Comments = > 'Test job');
end;
When the Planner call p1() for every 2 minutes, it is defeat and I get the error below.
ORA-06550: line ORA-06550: line 1, column 476:
PLS-00905: ORABPEL object. P1 is not valid
ORA-06550: line 1, column 476:
PL/SQL: Statement ignored
*, column :*
But when I try to call my Web service using call PLSQLScheduler(); It is on the basis of my webservice. The same that I gave in a stored procedure. But it does not work. Can anyone help.
Thank you.Little things that I notice, although they might not have something to do with the question.
1)
create or replace procedure p1 as begin call PLSQLScheduler(); end;
I would have written that:
create or replace procedure p1 as begin PLSQLScheduler; end;
(2) similar with your pl/sql block which is on demand:
'begin p1; end;'
Are you sure that there is only one p1 in your database? If the Scheduler is picking up a different p1 (which is not valid) than you think?
Maybe you are looking for
-
When I try to download the latest version of Firefox, I get a message saying that Firefox has a need and a 'item not in use. It is not identifying the element. How to find and get the right item?
-
iTunes does not recognize my ipod nano
iTunes does not recognize my nano after the interview there.
-
Questions about Satellite M50 130
Hi all! I just got my first Toshiba NB - could not decide between them or another but heard so many horror stories about others, I went to Toshiba and I am very happy. However, two questions please: (a) the laptop is VERY hot to the touch - what is u
-
Continuous scrolling in PDF format
I have a wish for my PRS - T1.PDF reading, I wish that I can scroll pages continuously rather than page by page. Combined with the great function of pinch to zoom Sony, it will make very uncomfortable read PDF documents in PRS - T1.
-
Hello! I have the 13 edge with AMD processor. The "Thinkvantage battery Manager' reports that my laptop battery is not an authentic Lenovo battery and gives me advice on Lenovo batteries, even if I do not see why it should not be authentic. Laptop ar