Table with two header rows
Hello, i have a table in that table i have a header row which has another table with two header rows
When form spans more then one page on page2 the color and border are showing up outside of table see example below.
Anyone have any ideas how I can fix this?
I am using Livecycle designer ES2 9.***
THanks
Hi,
If the table spans to Next page then if you want to move whole table to other page then uncheck the allow page breaks with content option which is under Object Tab.
Thanks
Vjay.
Similar Messages
-
Report painter report with two header rows
Experts,
I have managed the variable values in report painter but in display output i am unable to recognize the
value displayed for march / April is actual or planned
Please find attached screen shot for the same...
Is there any way to have both the information on header row?
Thanks
Sagar C'karHi Sagar...
Please change the short, medium and long text as you wish (please have all the description in the long text), by default system displays with the medium text, but no need to worry, when you keep the cursor on the head column of the text (where medium text is maintained), system displays with long text also. By this you can see the long text. This option we may use for adding additional text there, maintain some text at medium text and maintain additional text at long text option, so when you keep the cursor at head of the column with medium text, you see long text in addition.
If you want to have the long text instead of short or medium text make changes like this..
By this you make the text length at maximum i.e. 21 digits I suppose and then.....
By the above you select "long text" as default
Regards..
Jose -
Table overflow, only header row fits on page, avoid header
Hello together,
I encountered the following problem with adobe forms. The form consists of a table with a header row and (for sure) a data part. The table is encapsulated on a subform. If the table doesn't fit on one page, it breaks correctly to the next page (including header).
Because the table is not the onliest content of my page, it could happen that only the header row fits on the first page. So after the header, I get a page break. Is it possible to avoid the output of the table on first page, if only the header row will fit on it?
Currently it looks like this:
FIRST PAGE
bla bla bla bla
bla bla bla
HEADER
<-- page break -->
NEXT PAGE
HEADER
DATAHello Niels,
thanks for you help. I tried a lot with the "Keep with:" options the last couple of hours and now I double checked the flags.
I missed the flag "Keep with: NEXT" at table header level. Now it works as expected.
The table is part of a subform of type "flow". For the subform, I also checked the Keep with flag becasue the subform contains more than just the table.
Now, if only the header row fits on the first page, the whole subform starts at the next page. If the table needs much more space, it correctly breaks at the end of the next page.
Thank you very much -
i have a designed a table with 2 headers(say H1 AND H2), and dynamic body rows (with three columns)
the issue is when the table is oveflowing in to next page only one of the header is showing on the next page,
i have noticed that the option
" INCLUDE HEADER ROW IN SUBSEQUENT PAGES" would not check for both the header rows , if i check it for say H1 then that option for H2 gets deselected. How do i resolve it..?
Thanks in advanceHi Paul,
Thanks for your suggestion
so,
now i am looking in to combining two headers together , but i am not sure how to do,
right now i had wrapped the whole table in to a subform , say S5
and there are now two header rows
Header row[0]
header row[1]
and
body row
i am trying to wrap the two headers as you suggested , but not sure how to proceed on. i have attached the pdf, can you please suggest me the changes. The table :"Table2" is Page 3 of the form.
Thank you -
Hi,
How to create Report With Two Heading
[http://apex.oracle.com/pls/apex/f?p=267:31:]
thanksSee: Re: Two level row header
-
Populating a table with two columns using a custom bean
hello,
Can someone provide me or give me a link to an example of populating a table (with two columns) with a custom bean?
thank you
fwu1)create a java class
2)have a list as a class variable
3) populate the list in the constructor..
4) map the values in the af:table
//Employee pojo
public class Employee {
public Employee() {
super();
private String empName;
private String empManager;
private String job;
public void setEmpName(String empName) {
this.empName = empName;
public String getEmpName() {
return empName;
public void setEmpManager(String empManager) {
this.empManager = empManager;
public String getEmpManager() {
return empManager;
public void setJob(String job) {
this.job = job;
public String getJob() {
return job;
//maanged bean
public class Bean {
private List<Employee> employee;
public Bean() {
super();
employee = new ArrayList<Employee>();
Employee e1 = new Employee();
e1.setEmpName("xxxxx");
e1.setEmpManager("xxxxxxxx");
e1.setJob("xxxxxxx");
Employee e2 = new Employee();
e2.setEmpName("yyyyyyy");
e2.setEmpManager("yyyyyyy");
e2.setJob("yyyyyyt");
Employee e3 = new Employee();
e3.setEmpName("zzzzzz");
e3.setEmpManager("zzzzzzz");
e3.setJob("zzzzzzzz");
employee.add(e1);
employee.add(e2);
employee.add(e3);
employee.add(e4);
public void setEmployee(List<Employee> employee) {
this.employee = employee;
public List<Employee> getEmployee() {
return employee;
}in the table map like
<af:table value="#{Bean.employee}" var="row" rowBandingInterval="0"
id="t1">
<af:column headerText="Employee Name" id="c1">
<af:inputText value="#{row.empName}" id="it5"/>
</af:column>
<af:column headerText="Employee Manager" id="c2">
<af:inputText value="#{row.empManager}" id="it2"/>
</af:column>
</af:table> -
Pages won't allow me to create a table with just one row.
I'm trying to create a one row, two colum table in Pages. I have no problem with the columns. But I cannot create the table with just one row. Two rows apppears to be the minimum. Any ideas??
In Pages 5.2, click the equal sign at bottom-left of table and reduce the row count to one.
-
Dynamic Table with two columns
Hi!
i have to create a Dynamic Table with two columns having 5-5 links each with some text...... three links r based on certain conditions....they r visible only if condition is true...
if the links r not visible in this case another links take it's place & fill the cell.
links/text is coming from database.
i am using Struts with JSP IDE netbeans
Please help me
BuntyIndiai wanna do something like this
<div class="box_d box_margin_right">
<ul class="anchor-bullet">
<c:forEach items="${data.faqList}" var="item" varStatus="status"
begin="0" end="${data.faqListSize/2-1}">
<li>${item}</li>
</c:forEach>
</ul>
</div>
<div class="box_d">
<ul class="anchor-bullet">
<c:forEach items="${data.faqList}" var="item" varStatus="status"
begin="${data.faqListSize/2}" end="${data.faqListSize}">
<li>${item}</li>
</c:forEach>
</ul>
</div>
wanna divide table in two columns....if one link got off due to condition other one take it's position...
I have created a textorderedlist
Bunty -
Internal table with out header line
Hi friends,
Can u send me code for internal table with out header line : how to declare ,how to populate data and how to access the data
Regards,
vijayHi Vijay
There are several ways to declare an internal table without header line:
A) You can define a type table
TYPES: BEGIN OF TY_ITAB OCCURS 0,
INCLUDE STRUCTURE ZTABLE.
TYPES: END OF TY_ITAB.
and then your intrnal table:
DATA: ITAB TYPE TY_ITAB.
B) DATA: ITAB TYPE/LIKE STANDARD TABLE OF ZTABLE.
C) DATA: ITAB TYPE/LIKE ZTABLE OCCURS 0.
All these ways create a STANDARD TABLE
You can create other types of internal table, for example SORTED TABLE or HASHED TABLE.
These kinds of table can allow to improve the performance because they use different rules to read the data.
When it wants to manage a table without header line, it need a work area, it has to have the same structure of table.
DATA: WA LIKE ZTABLE.
DATA: T_ZTABLE LIKE STANDARD TABLE OF ZTABLE.
A) To insert the record:
If you use INTO TABLE option you don't need workarea
SELECT * FROM ZTABLE INTO TABLE T_ZTABLE
WHERE FIELD1 = 'Z001'
AND FIELD2 = '2006'.
but if you want to append a single record:
SELECT * FROM ZTABLE INTO wa WHERE FIELD1 = 'Z001'
AND FIELD2 = '2006'.
APPEND WA TO T_ZTABLE.
ENDSELECT.
Now you need workarea.
B) To read data: you need always a workarea:
LOOP AT T_ZTABLE INTO WA WHERE ....
WRITE: / WA-FIELD1, WA-FIELD2, WA-FIELD3.
ENDLOOP.
or
READ T_ZTABLE INTO WA WITH KEY FIELD3 = '0000000001'.
IF SY-SUBRC = 0.
WRITE: / WA-FIELD1, WA-FIELD2, WA-FIELD3.
ENDIF.
Anyway if you want to know only if a record exists, you can use the TRANSPORTING NO FIELDS option, in this case it doesn't need a workarea.
READ T_ZTABLE WITH KEY FIELD3 = '0000000001'
TRANSPORTING NO FIELDS.
IF SY-SUBRC = 0.
WRITE 'OK'.
ENDIF.
C) To update the data: it always needs a workarea
LOOP AT T_ZTABLE INTO WA WHERE FIELD3 = '0000000001'.
WA-FIELD3 = '0000000002'.
MODIF T_ZTABLE FROM WA.
ENDLOOP.
or
READ T_ZTABLE INTO WA WITH KEY FIELD3 = '0000000001'.
IF SY-SUBRC = 0.
WA-FIELD3 = '0000000002'.
MODIF T_ZTABLE FROM WA INDEX SY-TABIX
ENDIF.
AT the end you can use the internal table to update database:
MODIFY/UPDATE/INSERT ZTABLE FROM T_ZTABLE.
See Help online for key words DATA, you can find out more details.
Max
Message was edited by: max bianchi -
Row Level PPR in Advanced Table with Add More Rows Button
<br>
I have programmatically fired PPR event on MessageChoice. But it is in Advanced Table with
Add More Rows Button. When the value is changed in MessageChoice I Show/Hide Custom LOV
through SPEL like this ${oa.BioEmployeePVO.EmpManagerRender} .
But it is <b>hiding the all the ROWS</b> not just the row where the value has been changed.
I even tried with this code and get NULL for rowReference.
String rowReference = pageContext.getParameter(OAWebBeanConstants.EVENT_SOURCE_ROW_REFERENCE);
In Processrequest()
String pageName = pageContext.getRootRegionCode();
Hashtable params = new Hashtable (1);
params.put ("param1", pageName);
Hashtable paramsWithBinds = new Hashtable(1);
paramsWithBinds.put ("param2",new OADataBoundValueFireActionURL (mcb, "{$AttendeeType}"));
mcb.setFireActionForSubmit ("empPositionChange", params, paramsWithBinds,false, false);
In ProcessFormRequest() {
if ("empPositionChange".equals(pageContext.getParameter(OAWebBeanConstants.EVENT_PARAM)))
String rowReference = pageContext.getParameter("param2");
// String rowReference = pageContext.getParameter(OAWebBeanConstants.EVENT_SOURCE_ROW_REFERENCE);
Serializable[] parameters = { rowReference };
am.invokeMethod("handlePositionChangeEvent", parameters);
<br>HI Kumar,
Answer to your last post is "yes".
Now to your doubt regarding the code:
Hi Anna
I am trying to understand your code.
FireAction firePartialAction = new FirePartialAction("fireHideEvent"+(i/noOfTlaColSpan));
HideImgBean.setAttributeValue(PRIMARY_CLIENT_ACTION_ATTR,firePartialAction);
1. What is this i/noOfTlaColSpan ?
:)Forget abt this in your case it should be the event name which u r firing and capturing the it in the PFR.
Like FireAction firePartialAction = new FirePartialAction("YOurEventName");
and in PFR u can capture tht as:
if("YOurEventName".equals(pageContext.getParameter(EVENT_PARAM)))
//your logic to invoke AM method
2. I believe this HideImgBean would be MessageChoice for me?
:)Yep ur right
3. This brcdOhInventoryViewUpdateVOImpl would be the Custom PVO(Extending Seeded Base VO)
I create by adding the transient attributes?
:)Yep ur right
4. I cannot understand this code. Could you explain.
:)Please look at my comments in some of the lines .I have explained wht i am doing
if(updateIter==null)
updateIter[0]= invViewVO.createRowSetIterator("updateIter");//This initViewVo should be ur custom VO object
if(cnt>0)
updateIter[0].setRangeStart(0);
updateIter[0].setRangeSize(cnt);
for(int i=0;i<cnt;i++)
row = (brcdOhInventoryViewUpdateVORowImpl)updateIter[0].getRowAtRangeIndex(i);
String selectFlag=(String)row.invokeMethod("getPartNumber");//This getPartNuber should be replaced by the Prim Key inoke methd of ur VO
if(RowID.equals(selectFlag))
//This is my logic to set the transient attributes based on the msgChoiceBean value ..u have to pass the value when u invoke this method
if(reserveMethod.equals("BINARY"))
System.out.println("In Binary");
Boolean bVal= new Boolean("false");
Serializable sr[]={bVal};
Class []methodParamTypes = { bVal.getClass() };
row.invokeMethod("setshowreservetxt",sr,methodParamTypes);
Boolean bVal1= new Boolean("true");
System.out.println("bVal1"+bVal1);
Serializable sr1[]={bVal1};
Class []methodParamTypes1 = { bVal1.getClass() };
row.invokeMethod("setShowreservemsgchoice",sr1,methodParamTypes1);
break;
In my AM I am doing this. Am i doing right?:)Yep u r right
BioPrescribersPVO is the custom VO(extending seeded base VO).
public void handlePositionChangeEvent(String param)
OAViewObject vo = (OAViewObject)findViewObject("BioPrescribersPVO");
OARow row = (OARow)findRowByRef(rowReference);
if (row != null)
String position = (String)row.getAttribute("AttendeeType");
if (("PRESCRIBER".equals(position)) )
// BioEmpManagerRender is the transient attribute in BioPrescribersPVO.
row.setAttribute("BioEmpManagerRender", Boolean.TRUE);
row.setAttribute("BioPresManagerRender", Boolean.FALSE);
else
row.setAttribute("BioEmpManagerRender", Boolean.FALSE);
row.setAttribute("BioPresManagerRender", Boolean.TRUE);
} // end handlePositionChangeEvent()
// Initializing the custom VO
/*No need to initialize the VO because this is not a PVO(Propeties View object)
U r just using the existing VO and tht vo shloud have a primary key.Tht way u can match the rowref u r getting with the actual row from the View object*/
public void init()
OAViewObject appPropsVO = (OAViewObject)getBioPrescribersPVO();
if (appPropsVO != null)
if (appPropsVO.getFetchedRowCount() == 0)
appPropsVO.setMaxFetchSize(0); appPropsVO.executeQuery();
appPropsVO.insertRow(appPropsVO.createRow());
OARow row = (OARow)appPropsVO.first();
row.setAttribute("RowKey", new Number(1));
handlePositionChangeEvent("");
} // end init()
Thanks
Anna -
Issue in adding not null constraint on 250 G table with 50 million rows.
Guys,
I need to add not null constraint on 2 column of a table with 50 million rows and ~250 GB in size, These 2 columns are newly added and I have also update the value for each of these columns to not null for each row.
After that I am adding not null constraint on these 2 columns this is taking 1 hour to complete, Is there any way to speed up this, I don't want to use ENABLE NOVALIDATE option or rather I can't use that option.user445775 wrote:
Guys,
I need to add not null constraint on 2 column of a table with 50 million rows and ~250 GB in size, These 2 columns are newly added and I have also update the value for each of these columns to not null for each row.
After that I am adding not null constraint on these 2 columns this is taking 1 hour to complete, Is there any way to speed up this, I don't want to use ENABLE NOVALIDATE option or rather I can't use that option.And what's wrong with it taking an hour? Presumably, this is a one time operation, and it doesn't really interfere with anything else. -
SQL Server 2012 Undetected Deadlock in a table with only one row
We have migrated our SQL 2000 Enterprise Database to SQL 2012 Enterprise few days ago.
This is our main database, so most of the applications access it.
The day after the migration, when users started to run tasks, the database access started to experiment a total failure.
That is, all processes in the SQL 2k12 database were in lock with each other. This is a commom case of deadlock, but the Database Engine was unable to detect it.
After some research, we found that the applications were trying to access a very simple table with only one row. This table has a number that is restarted every day and is used to number all the transactions made against the system. So, client
applications start a new transaction, get the current number, increment it by one and commit the transaction.
The only solution we found was to kill all user processes in SQL Server every time this situation occurs (no more than 5 minutes when all clients are accessing the database).
No client application was changed in this migration and this process was working very well for the last 10 years.
The problem is that SQL 2k12 is unable to handle this situation compared to SQL 2k.
It seems to occurs with other tables too, but as this is an "entry table" the problem occurs with it first.
I have searched internet and some suggest some workarounds like using table hints to completely lock the table at the begining of the transaction, but it can't be used to other tables.
Does anyone have heard this to be a problem with SQL 2k12? Is there any fixes to make SQL 2k12 as good as SQL 2k?First off re: "Unfortunatelly, this can't be used in production environment as exclusive table lock would serialize the accesses to tables and there will be other tables that will suffer with this problem."
This is incorrect.
Using a table to generate sequence numbers like this is a bad idea exactly because the access must be serialized. Since you can't switch to a SEQUENCE object, which is the correct solution, the _entire goal_ of this exercise to find a way to properly
serialize access to this table. Using exclusive locking will not be necessary for all the tables; just for the single-row table used for generating sequence values with a cursor.
I converted the sample program to VB.NET:
Public Class Form1
Private mbCancel As Boolean = False
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim soConn As ADODB.Connection
Dim soRst As ADODB.Recordset
Dim sdData As Date
Dim slValue As Long
Dim slDelay As Long
'create database vbtest
'go
' CREATE TABLE [dbo].[ControlNumTest](
' [UltData] [datetime] NOT NULL,
' [UltNum] [int] NOT NULL,
' CONSTRAINT [PK_CorreioNumTeste] PRIMARY KEY CLUSTERED
' [UltData] Asc
' )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 80) ON [PRIMARY]
' ) ON [PRIMARY]
mbCancel = False
Do
' Configure the Connection object
soConn = New ADODB.Connection
With soConn
.ConnectionString = "Provider=SQLNCLI11;Initial Catalog=vbtest;Data Source=localhost;trusted_connection=yes"
.IsolationLevel = ADODB.IsolationLevelEnum.adXactCursorStability
.Mode = ADODB.ConnectModeEnum.adModeReadWrite
.CursorLocation = ADODB.CursorLocationEnum.adUseServer
.Open()
End With
' Start a new transaction
Call soConn.BeginTrans()
' Configure the RecordSet object
soRst = New ADODB.Recordset
With soRst
.ActiveConnection = soConn
.CursorLocation = ADODB.CursorLocationEnum.adUseServer
.CursorType = ADODB.CursorTypeEnum.adOpenForwardOnly
.LockType = ADODB.LockTypeEnum.adLockPessimistic
.Open("SELECT * FROM dbo.ControlNumTest")
End With
With soRst
sdData = .Fields!UltData.Value ' Read the last Date (LOCK INFO 1: See comments bello
slValue = .Fields!UltNum.Value ' Read the last Number
If sdData <> Date.Now.Date Then ' Date has changed?
sdData = Date.Now.Date
slValue = 1 ' Restart number
End If
.Fields!UltData.Value = sdData ' Update data
.Fields!UltNum.Value = slValue + 1 ' Next number
End With
Call soRst.Update()
Call soRst.Close()
' Ends the transaction
Call soConn.CommitTrans()
Call soConn.Close()
soRst = Nothing
soConn = Nothing
txtUltNum.Text = slValue + 1 ' Display the last number
Application.DoEvents()
slDelay = Int(((Rnd * 250) + 100) / 100) * 100
System.Threading.Thread.Sleep(slDelay)
Loop While mbCancel = False
If mbCancel = True Then
Call MsgBox("The test was canceled")
End If
Exit Sub
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
mbCancel = True
End Sub
End Class
And created the table
CREATE TABLE [dbo].[ControlNumTest](
[UltData] [datetime] NOT NULL,
[UltNum] [int] NOT NULL,
CONSTRAINT [PK_CorreioNumTeste] PRIMARY KEY CLUSTERED
[UltData] Asc
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = on, FILLFACTOR = 80) ON [PRIMARY]
) ON [PRIMARY]
go insert into ControlNumTest values (cast(getdate()as date),1)
Then ran 3 copies of the program and generated the deadlock:
<deadlock>
<victim-list>
<victimProcess id="processf27b1498" />
</victim-list>
<process-list>
<process id="processf27b1498" taskpriority="0" logused="0" waitresource="KEY: 35:72057594039042048 (a01df6b954ad)" waittime="1970" ownerId="3181" transactionname="implicit_transaction" lasttranstarted="2014-02-14T15:49:31.263" XDES="0xf04da3a8" lockMode="X" schedulerid="4" kpid="9700" status="suspended" spid="51" sbid="0" ecid="0" priority="0" trancount="2" lastbatchstarted="2014-02-14T15:49:31.267" lastbatchcompleted="2014-02-14T15:49:31.267" lastattention="1900-01-01T00:00:00.267" clientapp="vbt" hostname="DBROWNE2" hostpid="21152" loginname="NORTHAMERICA\dbrowne" isolationlevel="read committed (2)" xactid="3181" currentdb="35" lockTimeout="4294967295" clientoption1="671088672" clientoption2="128058">
<executionStack>
<frame procname="adhoc" line="1" stmtstart="80" sqlhandle="0x020000008376181f3ad0ea908fe9d8593f2e3ced9882f5c90000000000000000000000000000000000000000">
UPDATE [dbo].[ControlNumTest] SET [UltData]=@Param000004,[UltNum]=@Param000005 </frame>
<frame procname="unknown" line="1" sqlhandle="0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000">
unknown </frame>
</executionStack>
<inputbuf>
(@Param000004 datetime,@Param000005 int)UPDATE [dbo].[ControlNumTest] SET [UltData]=@Param000004,[UltNum]=@Param000005 </inputbuf>
</process>
<process id="processf6ac9498" taskpriority="0" logused="10000" waitresource="KEY: 35:72057594039042048 (a01df6b954ad)" waittime="1971" schedulerid="5" kpid="30516" status="suspended" spid="55" sbid="0" ecid="0" priority="0" trancount="1" lastbatchstarted="2014-02-14T15:49:31.267" lastbatchcompleted="2014-02-14T15:49:31.267" lastattention="1900-01-01T00:00:00.267" clientapp="vbt" hostname="DBROWNE2" hostpid="27852" loginname="NORTHAMERICA\dbrowne" isolationlevel="read committed (2)" xactid="3182" currentdb="35" lockTimeout="4294967295" clientoption1="671156256" clientoption2="128058">
<executionStack>
<frame procname="adhoc" line="1" sqlhandle="0x020000003c6309232ab0edbe0a7790a816a09c4c5ac6f43c0000000000000000000000000000000000000000">
FETCH API_CURSOR0000000000000001 </frame>
<frame procname="unknown" line="1" sqlhandle="0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000">
unknown </frame>
</executionStack>
<inputbuf>
FETCH API_CURSOR0000000000000001 </inputbuf>
</process>
</process-list>
<resource-list>
<keylock hobtid="72057594039042048" dbid="35" objectname="vbtest.dbo.ControlNumTest" indexname="PK_CorreioNumTeste" id="lockff6e6c80" mode="U" associatedObjectId="72057594039042048">
<owner-list>
<owner id="processf6ac9498" mode="S" />
<owner id="processf6ac9498" mode="U" requestType="wait" />
</owner-list>
<waiter-list>
<waiter id="processf27b1498" mode="X" requestType="convert" />
</waiter-list>
</keylock>
<keylock hobtid="72057594039042048" dbid="35" objectname="vbtest.dbo.ControlNumTest" indexname="PK_CorreioNumTeste" id="lockff6e6c80" mode="U" associatedObjectId="72057594039042048">
<owner-list>
<owner id="processf27b1498" mode="U" />
<owner id="processf27b1498" mode="U" />
<owner id="processf27b1498" mode="X" requestType="convert" />
</owner-list>
<waiter-list>
<waiter id="processf6ac9498" mode="U" requestType="wait" />
</waiter-list>
</keylock>
</resource-list>
</deadlock>
It's the S lock that comes from the cursor read that's the villian here. U locks are compatible with S locks, so one session gets a U lock and another gets an S lock. But then the session with an S needs a U, and the session with a U needs an
X. Deadlock.
I'm not sure what kind of locks were taken by this cursor code on SQL 2000, but on SQL 2012, this code is absolutely broken and should deadlock.
The right way to fix this code is to add (UPDLOCK,SERIALIZABLE) to the cursor
.Open("SELECT * FROM dbo.ControlNumTest with (updlock,serializable)")
So each session reads the table with a restrictive lock, and you don't mix S, U and X locks in this transaction. This resolves the deadlock, but requires a code change.
I tried several things that didn't require a code, which did not resolve the deadlock;
1) setting ALLOW_ROW_LOCKS=OFF ALLOW_PAGE_LOCKS=OFF
2) SERIALIZABLE isolation level
3) Switching OleDB providers from SQLOLEDB to SQLNCLI11
Then I replaced the table with a view containing a lock hint:
CREATE TABLE [dbo].[ControlNumTest_t](
[UltData] [datetime] NOT NULL,
[UltNum] [int] NOT NULL,
CONSTRAINT [PK_CorreioNumTeste] PRIMARY KEY CLUSTERED
[UltData] Asc
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = on, FILLFACTOR = 80) ON [PRIMARY]
) ON [PRIMARY]
go
create view ControlNumTest as
select * from ControlNumTest_t with (tablockx)
Which, at least in my limited testing, resovlved the deadlock without any client code change.
David
David http://blogs.msdn.com/b/dbrowne/ -
SELECT STATMENT USING JOINS OF 2 TABLE WITH UPT 200 ROWS
Hi
Any give me sample code for select statment'' SELECT STATMENT USING JOINS OF 2 TABLE WITH UPT 200 ROWS''.
Thanks in advance .
regards
veeratables : mara.
data : begin of itab occurs 0,
matnr like mara-matnr,
maktx like makt-maktx,
end of itab.
start-of-selection.
select amatnr bmaktx into table itab up to 200 rows
from mara as a inner join makt as b on bmatnr = amatnr. -
Hi Guys,
Any idea how to create a table with fixed header. I know I have the option to use pagination controls. But our requirement is such that we can't have pagination controls but scrolling only.
I also have an idea that I need to set some CSS style for table header. But where to set that in JSCreator datatable or table component.
Please help me as it is my urgent requirement.
Thanks !Hi,
Any idea regarding how to do it ?
-regards
sompan -
Scrollable table with fixed header (tutorial? also IE9)
Hi,
Does someone know of a tutorial about scrollable tables with a fixed header. Is there one on the adobe site. I found some on the net, but those didn't work for IE9. I favour the simple solutions.
I tried one, using only a few lines of CSS and the use of the thead and tbody tags in the table, but it didn't work on IE9.
Here is an example, of what I ment:
http://rcswebsolutions.wordpress.com/2007/01/02/scrolling-html-table-with-fixed-header/
I thank those, who red this.Thanks, that is a very cool way to divide a layout of a web-page!
Can I also use this to split up a header and table body region inside a large table you want to present compact inside a webpage?
html:
<body>
<table>
<thead>
<th>
</th>
</thead>
<tbody>
<td>
</td>
</tbody>
</table>
</body>
Maybe you are looking for
-
Does OutputStream.write() has a memory leak on Linux?
I write a piece of java code to create 500K small files (average 40K each) on CentOS. The original code is like this: package MyTest; import java.io.*; public class SimpleWriter { public static void main(String[] args) { String dir =
-
Windows XP 64 Bit Service Pack 3?
Hey All: I have a Lenovo B570 with 8GB of DDR3 memory and an i3 Processor, and I want to put XP on it after I install my new screen, and I was going to slipstream service pack 3 into an iso and use that, but I cannot seem to find an SP3 64-bit exe fi
-
I have been working on the website stsontario.org a while ago for someone. I have used a javascript file to apply a background element with a specified height based on the height of the document after loading the page. It shows on the other four brow
-
HttpUrlConnection not disconnecting
Hi All I used HttpUrlConnection to open a connection to another server but when I use disconnect() it doesn't seem to close the connection does anyone know why, and how do I close the connection? if anyone can point me to some Url/document/archive it
-
creative cloud was set to install the CS6 programs on a specific drive on my computer. When upgrading to CC and installing programs, they installed on the C drive where i do not want them. Do i have to uninstall them and reinstall to move them to