SAP for Utilities Discussions
Connect with fellow SAP users to share best practices, troubleshoot challenges, and collaborate on building a sustainable energy future. Join the discussion.
cancel
Showing results for 
Search instead for 
Did you mean: 

IS-U: Migration- Issue with DEVICE object using EMIGALL

Former Member
0 Kudos

Hello Friends,

I need a quick help. The issue is here below.

I am using the object DEVICE to create Device/Equipment. I could able to create an Equipment however I found that in EQUI table the field SERNR is not updated. Actually this field should have the value of EQUNR.

I had tried many times wih differenct possible options but this field is empty in all the trials. I am also using the auto structure CONTR and its sub strucutures COMMIT, UPDATE, INDIV, CONV filling with 'X' but the result is only this field SERNR is not updated in the table EQUI.

Without this field SERNR being field I cannot perform Device Installation (Full/Technical/Billing).

Please share your ideas.

Thanks in Advance,

Vijay.

11 REPLIES 11

oliviawalsh
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hello,

Please Check the generation flag for the automation structure CONTR is checked.

Regards

Olivia

0 Kudos

Hi Olivia,

Thanks for the response.

But, I am already using the auto structure CONTR with generation flag checked.

I had also tried changing the value for COMMIT with 'X' and 'S'.

Still the field SERNR is not updated. Please let me know If I am missing something.

Thanks,

Vijay

Former Member
0 Kudos

Hi Vijay

In the setup of DEVICE in EMIGALL...

Are the values for EQUNR proveded by your file or determined via internal numbering?

How do you populate SERNR?

Thanks

Jürgen

0 Kudos

Hi Jürgen,

I am using Internal number range for EQUNR and SERNR.

The EQUNR number is generated/created and is updated in all the tables, EQUI, EQUZ, EQKT, EGERS, EGERH successfully but the field SERNR is not updated in the table EQUI.

Do you think an additional coding is required for this update?

Thanks,

Vijay

0 Kudos

Hi Vijay

The field SERNR is a mandatory field in EMIGALL (in case you removed the mandatory flag, you still can check in company SAP for the original setting). Therefore you have to populate the field SERNR to create the equipment correctly.

I had a brief look through the EQUIPMENT_INSERT and EQUIPMENT_SAVE functions and I can't see any calls to get a SERNR from the number range.

If you want the serial number and the equipment number to be the same, you pobably have to enhance the SAP functionality. Simply using number range intervalls for both fields doesn't necessarily mean they are in sync all the time anyway.

Have a look into the enhancement spots of form equipment_save (include LIBEQF03).

Yep

Jürgen

0 Kudos

Hi Dude,

Thanks for your response.

I too will have a look at the FM's you mentioned and update you.

But before that I would like to inform that while creating Device using IQ01 transaction the field SERNR is updated with the same value as that of EQUNR in the table EQUI.

So if this update of SERNR is happenning perfectly with dialog transaction I think it should also happen through EMIGALL.

Please have a look at this point.

Thanks,

Vijay

0 Kudos

Hi Vijay

That's possible...

I assume transaction IQ01 and EMIGALL are using the same function EQUIPMENT_INSERT.

If NEW_VEQUI-EQUNR contains already a number, the function does not get a new number from the number range object, for example with external numbering. In case there's no EQUNR given, a new number is taken from the number range object, internal numbering.

If no SERNR is provided when calling EQUIPMENT_INSERT, there won't be a SERNR in EQUI. Just check if IQ01 provides the serial number when calling EQUIPMENT_INSERT.

This means another possible solution is to get a new number for EQUNR in EMIGALL and populate EQUNR and SERNR before calling the service function module ISU_M_EQUI_INSERT. Call function module NUMBER_GET_NEXT for object EQUIP_NR.

This can be done on field level by setting the Processing Type to 4 = Rule (check which of the two fields comes first - EQUNR or SERNR - to assign the number from NUMBER_GET_NEXT and copy the value for the second field) or via events see menu item Utilities: Event, when you're in the object maintenance screen.

Yep

Jürgen

0 Kudos

Hi,

Thanks for the possible solution.

I had tested this would work if SERNR and EQUNR should be in Synch.

Now the business has to decide on two things 1.) regarding the number range for EQUNR and SERNR 2.) Synchronize SERNR and EQUNR or not.

Regards,

Vijay.

0 Kudos

Hi,

I am facing the same issue. While device creation through tcode IQ01 serial number and equipment are in sync, however when i create through EMIGALL equipment number is updated in table EQUI but serial number field remains empty.

When I use FM NUMBER_GET_NEXT (using Rule 4 in Emigall) for finding internal number range and pass it to serial no I get the error that 'Serial number : Material XXXXX requires synchronous equipment numbers. This is because if EQUNR field is empty same FM is called again and a new internal number is generated.

When I assign the internal number range value from FM to Equipment number and serial no both i get the error that Equipment number (internal no range) not in external number interval. This is because the FM is used to fetch only internal number range.

Please advice what to do.

Thanks,

Kumar

Edited by: Zenith.Kumar on Feb 23, 2011 12:31 PM

0 Kudos

Hi Friends,

I am also facing the same Problem,

could you please help.

ISSUE: when I am creating Device in SAP-IS U, Serial Number is getting populated automatically as the device no.But trying to create Device through EMIGALL the SERIAL NUMBER is not populating.Please help me. Any settings can be done to synchronize the serial no field value as device no in EMIGALL

Regards Richard

Edited by: Richard Rajendran on Jan 3, 2012 1:49 PM

Edited by: Richard Rajendran on Jan 3, 2012 1:50 PM

0 Kudos

Hi Richard

The solution is described in one of my earlier replies:

This means another possible solution is to get a new number for EQUNR in EMIGALL and populate EQUNR and SERNR before calling the service function module ISU_M_EQUI_INSERT. Call function module NUMBER_GET_NEXT for object EQUIP_NR.

This can be done on field level by setting the Processing Type to 4 = Rule (check which of the two fields comes first - EQUNR or SERNR - to assign the number from NUMBER_GET_NEXT and copy the value for the second field) or via events see menu item Utilities: Event, when you're in the object maintenance screen.

Do you have a problem understanding the solution above or to implement it?

Yep

Jürgen