Consistant natural order of a table
9.2.0.7 AIX
I need to perform a left outer from two tables. One is very large this table is the left side the other is about 100 rows. The very large table (tab1) has no primary key. The result set is to be inserted into another table. One thought I had was to use bulk collect and forall to do the work. The problem I ran into was the server ran out of memory. The job I will be the only job running against the tables therefore I do not have to worry about the data changing while the job is in progress. So I figured I could break it up in peices. Because there is no PK I cannot grab a chunk of rows based on that. Next of course is Rowid. The cursor is openned a closed a number of times in a loop. If I add a 'order by rowid' clause the speed of the SQL becomes much slower of course. I think I must do this. In doing some testing on some not so big tables I have found the natural order to be consistant assuming the data does not change. My question is does Oracle garentee the natural order to be consistant when running the an SQL even if the table is partitioned and located in different data files.
Oracle guarantees no order without an ORDER BY clause.
If you ran out of memory using a FORALL construct, perhaps you forgot the LIMIT clause and the loop? Without that you are just loading all rows into session memory.
What's wrong with a straight SQL INSERT?
Similar Messages
-
Hi everybody,
I have read the SQL Tuning section of Performance Tuning Oracle Book of Oracle 10g. v.2.
In 11.5.4. paragraph titled "Controlling the Access Path and Join Order with Hints" , in the second note there is a small paragraph about the right join of the tables....
In whichever query i try ,i've noticed that altering the joining order of the tables the sql statistics (consistent gets , sorts(memory/disk)) are the same regardless of the join order....
Can you please give me an example or a source in which the modification of the join order of the tables in a sql query produce different results ...in statistics????
Thanks , a lot
SimonDuplicate post. Don't answer this thread please Right order of joining tables.
Cheers, APC -
Creation of orders using allocation table with reference to contract
Hi
I am creating the follow on documents (ie vendor orders) from allocation table display, for an allocation that was created with reference to a quantity contract. I have changed the message 06 078 to an error, and the system is returning an error saying the quantity will exceed the contract quantity, even though the quantity is less than the contract quantity and there are no other releases against that contract. If I create the order manually against the contract (ie not through the follow on docs in allocation table display) the order is created correctly.
The program appears to loop and take into account my order quantity 4 times and return that quantity as the exceeded quantity. ie PO item quantity for 10, will say quantity will be exceeded by 40.
Any ideas?
MarkHi Kapil
Plse try this
Go to IMG-MM-PURCHASING-PURCHASE ORDER-DEFINE SCREEN LAYOUT AT DOC.LEVEL- ME21N - Administrative data item-
Here try to make all the field as Opt.Entry...
Then see..
regards
Anis -
Retrieve the Purchase Order Condition Records Table
Hallo!
I have found this code right here:
http://www.sap-basis-abap.com/sapab025.htm
It is very useful particular for purposes which I need. Please can somebody
try to fix the error to get it working. There is an internal table missing.
Regards
Ilhan
Retrieve the Purchase Order Condition Records Table
select * from ekko.
select * from konv where knumv = ekko-knumv
"Get all the condition records for the purchase order
endselect.
endselect.
* Get the info record conditions record
* First declare the record structure for the key
data: begin of int_konp,
txt1(5),
lifnr(5),
matnr(18),
txt2(4),
txt3(1),
end of int_konp.
clear: konh, konp, int_konp.
* data for the record key konh-vakey
int_konp-txt1 = '00000'.
int_konp-lifnr = ekko-lifnr+5(5).
int_konp-matnr = ekpo-matnr(18).
int_konp-txt2 = 'ALL'.
int_konp-werks = ekpo-werks.
int_konp-txt3 = '0'.
select * from konh where kschl = 'PB00' "Conditions (Header)
and datab => p_datum. "valid from date
if konh-vakey = int_konp. "Conditions (Item)
select single * from konp where knumh = konh-knumh.
continue.
endif.
endselect.Hi flora
Just get through the sequence .
see the table fields ...
1. From EKKO table take an entry which is having pricing conditions.
Now in the fields list check out for field EKKO-KNUMV(document condition number).
2.Take this condition number and now goto table KONV.
Give the document condition number in the field KONV-KNUMV and execute .
This will lead to a list of document condition numbers and some other fields .
3.Now check for field KONV-KNUMH ,KONV-KAWRT(quantity) and note the value KONV-KWERT .
(Remember this is at header level).
This is ur condition record number.
**comments
Now from document condition number we got the condition record number (KNUMH).
4. now since u want the item level tax procedure go to table KONP and give the condition record number and execute .
This will give u a list of details .
Now concentrate on KONV-KAWRT (scale quantity) KONP-KBETR(rate) as this table will store Pricing per UNIT so product of these two will give u the total pricing tax, for a particular condition type say PR00 .
For that particular condition item .
Check the pricing procedure .
See t-code VK13 and check the pricing procedure .
From me23 check the same PO num select the item and check the pricing conditions applicable .
Select a particular pricing and goto condition->analysis->analysis pricing ,
Better take help of a SD functional consultant in the process.
regards,
vijay. -
The order of the table columns to Srini Chavali
OK I made a mistake Srini Chavali.
So why dont you try to help me now beyond just warn me about burocratic issues, what you really should had done instead just to block the answers of my former question ?
The question is:
How to influence the order of the table columns in time of transformation logic to relational ?
Nelson Alberti da Rosabecause exist an order among primary key columns that was definied in the logical model and it he can't see that.fixed :
function addPKcolumns(list,table){
pk = table.getPK();
if(pk!=null){
pcols = pk.getColumns();
for(var i = 0;i<pcols.length;i++){
col = pcols;
//in fact don't need this check, because PK columns are processed first
if(!list.contains(col)){
list.add(col);
function addFKcolumns(list,fkeys){
for(var k=0;k<fkeys.length;k++){
fcols = fkeys[k].getColumns();
for(var i = 0;i<fcols.length;i++){
col = fcols[i];
if(!list.contains(col)){
list.add(col);
//adds mandatory or oprional columns to list depending on mand parameter
function addMandatoryOptColumns(list,cols, mand){
for(var i = 0;i<cols.length;i++){
col = cols[i];
if(col.isMandatory() == mand && !list.contains(col)){
list.add(col);
tables = model.getTableSet().toArray();
list = new java.util.ArrayList();
for (var t = 0; t<tables.length;t++){
list.clear();
table = tables[t];
cols = table.getElements();
// add PK columns to list
addPKcolumns(list,table);
// add FK columns to list
addFKcolumns(list,table.getFKAssociations());
//add mandatory columns
addMandatoryOptColumns(list,cols,true);
//add optional columns
addMandatoryOptColumns(list,cols,false);
//use list to reorder columns
ord_cols = list.toArray();
for(var n = 0;n<ord_cols.length;n++){
table.moveToIndex(ord_cols[n],n);
//prevent reordering from enginnering, can be changed with UI
table.setAllowColumnReorder(false);
table.setDirty(true); -
ITunes 12 - Sort album with numbers in title by natural order
Hi All
Searched but cannot find a solution to this.
Now I've got iTunes 12, I noticed that when I added a new album titled "Triple J Like A Version 10", it sorts this album at the beginning of the sequential list of albums. i.e.:
Triple J Like A Version
Triple J Like A Version 10
Triple J Like A Version 2
Triple J Like A Version 3
etc
It should appear after Triple J Like A Version 9.
My other albums added on earlier versions of iTunes are fine. For example Triple J Hottest 100 Volume 10 comes after 9 & before 11 where it should be; Volume 20 comes after 19 & before 21.
Is there any way to change the sort order to sort numbers in their natural order?
Thanks
CraigPad out the sort values with leading zeros so the sort names become:
Triple J Like A Version 02
Triple J Like A Version 03
Triple J Like A Version 09
Triple J Like A Version 10
tt2 -
Default column sort order for 11g table
Could anyone give me some indication on how I would go about setting the default sort order for a table?
I have a table with a few columns, and dataset returns in a particular order, but my table decides to sort if in any given order until I manually click on the column header and sort it.
I would like to have it done by default on a particular field.
Any info is appreciated.
Thanks
JonnyAs Chris says, the easiest way and best re-use way is to use the order-by clause in your underlying model layer SQL query. For instance in ADF BC this would be in a View Object's query.
However as you haven't dictated your model layer technology, there is another way in JDev 11g. In your web page that contains the ADF Faces RC table, select the binding tab at the bottom of the page, then double click on the iterator in the binding page, and in the Edit Iterator Binding dialog, select the Sort Criteria tab. This allows you to override the sort order on the iterator's columns.
CM. -
Why can you not insert Objects in List in natural order?
This is a more theoretically question:
I need a dynamic structure to sample informations in a natural order ( by implementing the Comparable-Interface). Set and Map offers natural order but I can't use them (Set-elements are unique and I don't want to implement a <key><value> relationsship for Map).
Are there others solutions than to add the elements in a List in natural order hand made?
Thanks !Here's a Collection implementation that ensures all elements are allways ordered.
It can be improved for speed, and maybe functionality, but the important thing is that it doesn't break the Collection interface and it's simple.
Have a look and maybe base your implementation on this one.
import java.util.*;
public class SortedCollection
extends AbstractCollection
implements Collection {
private List elements;
private Comparator comparator;
public SortedCollection() {
this.elements = new ArrayList();
public SortedCollection(Comparator comparator) {
this();
this.comparator = comparator;
public Iterator iterator() {
return this.elements.iterator();
public int size() {
return this.elements.size();
private void resort() {
if (this.comparator == null) {
Collections.sort(this.elements);
} else {
Collections.sort(this.elements, this.comparator);
public boolean add(Object object) {
boolean answer = this.elements.add(object);
this.resort();
return answer;
public boolean addAll(Collection collection) {
boolean answer = this.elements.addAll(collection);
this.resort();
return answer;
} -
How would you order an internal table e.g. itab according a specific field
Hello
How would you order an internal table e.g. itab according a specific field?
Would you be so kind and let me see an mini example
Thank you in advanceHi Tina,
You can sort the table as already mentioned, or if you want it always kept in a key sequence you could define it as a sorted table something like this:
types:
begin of itabline,
field1 type c,
field2 type n,
field3 ....
end of itabline.
DATA itab TYPE sorted table of itabline WITH UNIQUE key field1.
You can then insert and read entries by the key fields.
Hope that helps as an option!
Robin -
Deleted planned order in any table??
Hi,
Is it possible to see the deleted planned order in any table??
RamagiriHi,
It is right that you will not get the planned order data which has been deleted.
But after conversion of planned orders to process/production order the planned orders will get deleted.The planned orders data can be found fromAFPO table.But manually deleted planned order data can't be found out.
Hope this can help.
regards,
kaushik -
ERROR TABLES - FIELDS CREATED IN DIFFERENT ORDER TO ORIGINAL TABLE
Hi there
Using error table functionlaity with data rules but somehow creates the error table with the columns in different order to original table which makes it more difficult to maintain.
Any ideas why and more importantly how to create tables in correct order?
Many Thanks
PhilipHi there
Just noticed creates them in aphabetic oredr - any way to change this to match default order.
Many Thanks -
Dispatching of Planned Order in Planning Table
Hi Gurus,
What do we understand by dispatching of planned orders?
When the orders are need to be dispatched?
Is it after firming of order?
What impact it will have on the system after we dispatch the planned order?
I observe that after dispatching the planned order, we have tick on capacity dispatched. In MD04, for the planned order there are double stars for dispatched orders?
Can anyone explain the this functionality in simple way.
Points will be rewarded.
SriniHi,
Normally we can do the capacity leveling for Plannend order and Production Order. In R/3 , MRP run dosenot consider Capacity Over load, Capacity leveling is required to for Planned order.
U reserve the Capacity on particular date by despatching the planned order at Planning Table. Which results in Capacity is scheduled on that Particular date & time for that Planned order.System will not allow to despatch another order in the same date.
Firm & Capacity scheduled check box is activated when u despatch the Order. MRP will not reshedule that Planned order.
when u convert that Planned order to production order, system will schedule the order with same date & set the despatch status for Each opeartion.No need to despatch the Prod order Again.
Pradeep -
Sales order changes history table
hi.........
i wann field for user name from sales order change history table. i hv tried CDHDR and CDPOS, but i cound't get the exact link in those tables.
will u tel me any other table, so that i can get this field by passing sales order ?Hi subharao,
Go though this program.
REPORT zmm_rep_poh NO STANDARD PAGE HEADING LINE-SIZE 250 LINE-COUNT 65.
TABLES: cdhdr,cdpos,ekko,ekpo.
TYPE-POOLS : slis.
DATA : t_fieldalv TYPE slis_t_fieldcat_alv.
DATA : import_variant LIKE disvariant.
DATA : xrepid LIKE sy-repid.
DATA : layout TYPE slis_layout_alv.
DATA: BEGIN OF itab OCCURS 0,
fname(40) ,
objectid(10),
changenr(10) ,
value_new(10),
value_old(10),
unit_old(10),
unit_new(10),
cuky_old(10),
cuky_new(10),
key(5),
username(10),
udate LIKE cdhdr-udate,
utime LIKE cdhdr-utime,
END OF itab.
DATA iebeln(15).
DATA: BEGIN OF itab1 OCCURS 0,
username(10),
udate LIKE cdhdr-udate,
changenr(10),
utime LIKE cdhdr-utime,
END OF itab1.
DATA: BEGIN OF itab3 OCCURS 0.
INCLUDE STRUCTURE itab.
DATA: END OF itab3.
DATA iekko LIKE ekko OCCURS 0 WITH HEADER LINE.
*Select Option
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
SELECT-OPTIONS : s_ebeln FOR ekpo-ebeln OBLIGATORY,
s_ekorg FOR ekko-ekorg NO INTERVALS DEFAULT '77IN',
s_bukrs FOR ekko-bukrs NO INTERVALS DEFAULT '77IN'.
SELECTION-SCREEN END OF BLOCK b1.
*INITIALIZATION.
for alv field catalog definition.
PERFORM initial_alv_fieldcat CHANGING t_fieldalv[].
START-OF-SELECTION.
SELECT * INTO iekko
FROM ekko
WHERE ebeln IN s_ebeln AND ekorg IN s_ekorg AND bukrs IN s_bukrs.
APPEND iekko.
ENDSELECT.
LOOP AT iekko.
SELECT username udate changenr utime
INTO (itab1-username,itab1-udate,
itab1-changenr,itab1-utime)
FROM cdhdr
WHERE objectid EQ iekko-ebeln.
APPEND itab1.
ENDSELECT.
ENDLOOP.
LOOP AT itab1.
SELECT objectid changenr fname value_old value_new unit_old unit_new
cuky_old cuky_new
INTO (itab-objectid, itab-changenr, itab-fname,
itab-value_old,itab-value_new ,itab-unit_old, itab-unit_new,
itab-cuky_old,itab-cuky_new)
FROM cdpos
WHERE changenr = itab1-changenr.
IF sy-subrc = 0.
itab-username = itab1-username.
itab-udate = itab1-udate.
itab-utime = itab1-utime.
APPEND itab.
ENDIF.
ENDSELECT.
ENDLOOP.
delete itab where fname eq 'KEY'.
sort itab by fname.
delete ADJACENT DUPLICATES FROM itab comparing all fields.
LOOP AT itab.
IF itab-fname = 'ZTERM'.
itab-fname = 'Payment Terms'.
MODIFY itab.
ELSEIF itab-fname = 'AEDAT'.
itab-fname = 'Date'.
MODIFY itab.
ELSEIF itab-fname = 'EFFWR'.
itab-fname = 'Effective Value'.
MODIFY itab.
ELSEIF itab-fname = 'MENGE'.
itab-fname = 'PO Quantity'.
MODIFY itab.
ELSEIF itab-fname = 'BRTWR'.
itab-fname = 'Gross Order Value'.
MODIFY itab.
ELSEIF itab-fname = 'NETWR'.
itab-fname = 'Net Order Value'.
MODIFY itab.
ELSEIF itab-fname = 'PROCSTAT'.
itab-fname = 'Purchasing Doc processing state'.
MODIFY itab.
ELSEIF itab-fname = 'FRGSX'.
itab-fname = 'Release Strategy'.
MODIFY itab.
ELSEIF itab-fname = 'FRGKE'.
itab-fname = 'Release Ind. Pur. Doc'.
MODIFY itab.
ELSEIF itab-fname = 'ZBD1P'.
itab-fname = 'Cash Discount Perc 1'.
MODIFY itab.
ELSEIF itab-fname = 'ZBD1T'.
itab-fname = 'Cash Discount Days'.
MODIFY itab.
ELSEIF itab-fname = 'ZBD2T'.
itab-fname = 'Cash Discount Days'.
MODIFY itab.
ELSEIF itab-fname = 'KEY'.
itab-fname = 'Item Entered'.
MODIFY itab.
ENDIF.
ENDLOOP.
PERFORM alv_grid_display.
*& Form alv_grid_display
text
--> p1 text
<-- p2 text
FORM alv_grid_display .
DATA : gt_event TYPE slis_t_event.
DATA : dbcnt TYPE i.
DATA : dbcntr(10) TYPE c.
DATA : title(100) TYPE c.
CLEAR : dbcnt,dbcntr,title.
DESCRIBE TABLE itab LINES dbcnt.
dbcntr = dbcnt.
CONCATENATE 'NO.OF ENTRIES : ' dbcntr INTO title SEPARATED BY space.
sy-title = title.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-repid
is_layout = layout
it_fieldcat = t_fieldalv[]
i_save = 'A'
i_grid_title = 'Purchase Order Amendment Details'
TABLES
t_outtab = itab
EXCEPTIONS
program_error = 1
OTHERS = 2.
ENDFORM. " alv_grid_display
*& Form initial_alv_fieldcat
text
<--RT_FIELDCAT text
FORM initial_alv_fieldcat CHANGING rt_fieldcat TYPE slis_t_fieldcat_alv.
DATA : ls_fieldcat TYPE slis_fieldcat_alv .
DATA : cntr TYPE i VALUE 1.
CLEAR ls_fieldcat.
cntr = cntr + 1.
ls_fieldcat-col_pos = 1.
ls_fieldcat-fieldname = 'USERNAME'.
ls_fieldcat-seltext_l = 'UNAME'.
ls_fieldcat-do_sum = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
cntr = cntr + 1.
ls_fieldcat-col_pos = 2.
ls_fieldcat-fieldname = 'UDATE'.
ls_fieldcat-seltext_l = 'UDATE'.
ls_fieldcat-do_sum = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
cntr = cntr + 1.
ls_fieldcat-col_pos = 3.
ls_fieldcat-fieldname = 'UTIME'.
ls_fieldcat-seltext_l = 'UTIME'.
ls_fieldcat-do_sum = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
cntr = cntr + 1.
ls_fieldcat-col_pos = 4.
ls_fieldcat-fieldname = 'OBJECTID'.
ls_fieldcat-seltext_l = 'PO Number'.
ls_fieldcat-do_sum = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
cntr = cntr + 1.
ls_fieldcat-col_pos = 5.
ls_fieldcat-fieldname = 'FNAME'.
ls_fieldcat-seltext_l = 'Field Name'.
ls_fieldcat-do_sum = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
cntr = cntr + 1.
ls_fieldcat-col_pos = 6.
ls_fieldcat-fieldname = 'VALUE_OLD'.
ls_fieldcat-seltext_l = 'Old Value'.
ls_fieldcat-do_sum = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
cntr = cntr + 1.
ls_fieldcat-col_pos = 7.
ls_fieldcat-fieldname = 'VALUE_NEW'.
ls_fieldcat-seltext_l = 'New Value '.
ls_fieldcat-do_sum = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
cntr = cntr + 1.
ls_fieldcat-col_pos = 8.
ls_fieldcat-fieldname = 'UNIT_OLD'.
ls_fieldcat-seltext_l = 'Old Unit'.
ls_fieldcat-do_sum = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
cntr = cntr + 1.
ls_fieldcat-col_pos = 9.
ls_fieldcat-fieldname = 'UNIT_NEW'.
ls_fieldcat-seltext_l = 'New Unit'.
ls_fieldcat-do_sum = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
cntr = cntr + 1.
ls_fieldcat-col_pos = 10.
ls_fieldcat-fieldname = 'CUKY_OLD'.
ls_fieldcat-seltext_l = 'Old Cuky'.
ls_fieldcat-do_sum = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
cntr = cntr + 1.
ls_fieldcat-col_pos = 11.
ls_fieldcat-fieldname = 'CUKY_NEW'.
ls_fieldcat-seltext_l = 'New Cuky'.
ls_fieldcat-do_sum = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
layout-zebra = 'X'.
layout-colwidth_optimize = 'X'.
ENDFORM. " initial_alv_fieldcat
*********Rewards some points.
Rgds,
P.Naganjana Reddy -
How to remove the approved order from the table in sapui5
Hi Experts,
how to remove the approved order from the table in sapui5.
After Approving the order how to remove the order from the table in sapui5.
Please help me.
Thanks & regards
chitti BabuHi,
Probelm is OBIEE on your machine.Some one might have deleted pdf option.
Refer : http://obiee101.blogspot.com/2009/07/obiee-dashboard-default-controls.html
Try to find out tag that is to be removed from controlmessages.xl so that you have only HTML.
Update :
Stop BI Server.Try removing below tag and restart server.
(sawm:if name="enablePDF">(a class="NQWMenuItem" name="pdf" href="javascript:void(null)" onclick="return PortalPrint('@{pdfURL}[javaScriptString]',@{bNewWindow});">
<sawm:messageRef name="kmsgDashboardPrintPDF"/></a)</sawm:if)
Regards,
Srikanth
Edited by: Srikanth Mandadi on Apr 19, 2011 3:36 AM -
Can't see some type of orders from VBAK table in 2LIS_11_VAITM
Hi
What could be the reason that I I can't see some type of orders from VBAK table in 2LIS_11_VAITM extractor.
(VBAK-vbtyp.)
Thanks a lot
PawelHi,
Go to RSA3, put your extractor name and check if there is any selection field for order type, if it is there then simply put the required order type and check the data.
Otherwise you can simply put the document number with the required order type and check if the data is coming for that in RSA3 or not, if not then simply debug the extractor and check why it is not coming?
Finally you can have one more approach, simply extract all the data in Full load in infopackage then go to PSA table and there you can try to filter your records based on order type.
Regards,
Durgesh.
Maybe you are looking for
-
How can i use NI's VXI-1394 controller to control the CONDOR's VXI-1553B module?
Now I want to use the NI's VXI-1394 to control a CONDOR's VXI-1553B module.But I did a test and found that the NI's VXI-1394 can not control that module.The VXI-PCI8015 can control the VXI-1553B module. But I have a VXI-1394 module and I want to use
-
Visio TechNet Guru News: October Winners Announced
All the votes are in! And below are the results for the TechNet Guru Awards, October 2014 !!!! For a full list of winners, see the full blog post, as runners up had to be removed from this post to fit the forum max length restrictions. BizTalk Tech
-
STO Problem while doing GR against outbound delivery
Hi Gurus, Need your help regarding STO,in my case i created 1. STO 2. Delivery in VL10B t code and did PGI 3. on the basis of Delivery i created billing document 4. Excise invoice in J1IIn Now while doing GR against outbound delivery system in not do
-
How do I make a boot disk?
How do I make a boot disk in OSX 10.4 something and have some tools like Disk Warrior on it? I found one program at versiontracker that does this but it doesn't work in .4, oh well ...... or I can just wait for several days til my DiskWarrior CD come
-
SX20 has no video but c40 does
We have a remote office. Recently, when calling this office with the SX20, its connecting with audio only. This had previously worked before but we dont know whats changed. Calling the same remote office from a C40 in the same office as the SX2