Month: June 2013

Home / 2013 / June (Page 2)

Web Dynpro – reset_view

Here’s a cool little trick that I picked up in order to make my dynamic screens even more dynamic.  The reset_view statement turned out to be the piece of the puzzle I needed in order to to have a dynamic screen with multiple variations.  While this may be outside the norm, it’s still a great little trick, and let me show you why.

Here’s the scenario.  I’ve created a view with a set of dynamic elements.  Now the trick comes in that depending on the scenario, even that dynamic screen might change.  When I first set it up, I kept getting a short dump because the system was trying to recreate dynamic elements that already existed.  By adding the statement:

  view->reset_view( ).

at the beginning of the WDDOMODIFYVIEW (which is where I do all of my initialization for the view) that reset the stage, so that I could “rebuild” the view with any elements that I needed.

While this isn’t earth shattering, it just might be the trick you need to keep your ideas flowing.

Thanks for reading,

 

CRM – Contact Tags

Now that we have a CRM system up and running, and we have our contacts all loaded, we’re slowly learning how to merge them into a cohesive contact list.  But it certainly didn’t just fall into place.  🙂  Once we picked our CRM system (we ended up choosing capsulecrm), the next task was to add contact tags consistently.

This sounds like a simple task, but believe me, even terminology that seems clear can easily be interpreted  in different way.  When my partner uploaded his contacts, first they had no tags.  Then when we loaded up the tags, I proceeded to update the mailchimp mailing lists.  This all seemed to be rolling along great.  Until my partner took a look at the lists and started asking where some of the contacts were.  I looked in the mailing list, and proceeded to determine that several hundred contacts were in the wrong list.  So that meant I needed to delete them from the mailchimp lists, and then go back to CRM and change the contact tags.  After a few hours of rework, I thought we were ready to try again…  So I asked Mike if all the changes were good, and he told they were.  So to be sure, I took a look at a few of the contacts and asked Mike what list they should go in…  again, we were off the mark.

So, today, after some going back and forth, I finally got a clue and documented the tags and listed what mail chimp list each list should move to.  So, the lesson learned is document early and save yourself a bunch of rework =)

thanks for reading.

Marketing – improving the SEO of our blog posts

Lately, I’ve had to put more time and effort in my marketing.  One of the things I learned is to improve the SEO (Search Engine Optimization) of my blog posts.  One of the major things I missed when I wrote most of my blog posts is the use of the little SEO traffic light provided by Word Press.  While it may not be the best, it at least gives me an idea of when my post has a chance for a search engine like Google to find my posts.

The idea is that if my posts could actually be located in a Google search (or Bing, or etc…) means more people might start finding my posts (exactly like you did).  Since I’m still on the hunt for second customers, the more people that see my blog the better.  If you aren’t familiar with the concept of the second customer, it’s the consultants, friends, or former clients that know and trust me enough to recommend me to others that might be able to use my software creations.

Well, to get back on track, I completely skipped entering the metadata tags for each of my posts.  Thus it made it that much harder for people to find my blog posts.  So my latest mission has been to go back to all of my posts and enter in the metadata.  In addition, I’ve been cleaning up titles and adding some keywords to try to get all of my “best” posts into the green.  So, take my advise.  If you start blogging, start early and get as many posts into the green for SEO as possible.  It’ll help you in the long run.

Thanks for reading.

 

Variant Configuration – OEWB Parameters

In the cool Order Engineering Workbench (OEWB) for Variant Configuration there are a number of settings that you can control using the OEWB Parameters.  Today I’d like to talk about the ones I’m familiar with.  While this topic should be a simple one, I’ve had a tough time finding any documentation on exactly what these parameters do and why they should be set one way vs. another.

/OEWB/P_COCH    X       OEWB: Copy Characteristic Values – this is used when attempting to insert another configurable material or classified materials below a configurable materials.

/OEWB/P_EXPL      X      OEWB: New BOM Explosion – Component – if there are char. values on dragged component, structure will be reexploded on drop later.  This is for configurable materials.

/OEWB/P_INST       X      OEWB: Instantiation – this allows you to instantiate a material multiple times within a single BOM.  Beware of potential performance issues if you use this functionality.

/OEWB/P_NOFX      X     OEWB: Changes Possible Without Fixing – this has to do with “fixing” which locks the BOM as it currently is, and can only be changed manually going forward.  This is also used in conjunction with adding a material below a configurable material.

/OEWB/P_NORF     X      OEWB: Changes Without “Really Fix” – this is used in conjunction with P_INST & P_EXPL.

/OEWB/P_OBOM     X     OEWB: Entry with Order BOM Instead of Version

/OEWB/P_SAVE       X     OEWB: Save Without Leaving – this one is a pretty obvious.  If this isn’t set to X, then everytime you save, you leave the /OEWB/MAIN screen.

/OEWB/P_COAD              OEWB: Copy with Advanced checks – If this parameter is switched on, the configuration (of configurable materials) is copied and manual changes (insert, edit, delete of BOM items) of the source object are copied to the target. This also works multi level.  As a prerequisite, the functionality does just work if parameter “/OEWB/P_EXPL” is NOT set.  This parameter shall also influence copy of version data.

/OEWB/P_MATV              OEWB: Type Matching – this will allow type matching to occur within the OEWB.  This is likely to only be used for instantiated components.

Now some of these parameters I’m still trying to figure out, but not having access to the OEWB in my own system has made this challenging.  If I get a chance to get back into the system, I’ll add more details to these, but for now, at least you have my initial notes of the recommended settings (any of the items with an X).

Thanks for reading.

 

Variant Configuration – Activating the IPC

Once again, I have to give special thanks to my good friend Jeremy.  He pointed out something in my previous post that I didn’t even realize.  It turns out that I don’t need to install anything special for activating the IPC.  Jer pointed me toward OSS Note:  854170 which points out that the IPC needs to be activated, rather than any additional installations.

The OSS Note tells you to activate the parameter in RZ10 (remember, you will need to restart your server in order to implement the change).

vmcj/enable = on

In addition, Jer also gave me this screenshot to show the installation instructions (but honestly, it’s barely needed).

I confess that I haven’t had a chance to go very far with this yet, and I have yet to find out if I can use the advanced mode functionality inside of ECC, but as soon as I get a little time, I’ll let you all know.

Thanks for reading,

ABAP – SIMGH for IMG Cleanup

Well, recently, I was doing some prep work/clean up for my upcoming Field Service Engineer Web application.  I intend to reuse as much code as possible from my Rapier application.  In the course of my cleanup, I ran into an issue.  I had created some custom IMG nodes in configuration, and subsequently deleted them in order to clean up some of my export packages.  Well, short story, deleting the nodes didn’t delete all of the underlying pieces.  One of my tables was showing a where used for the IMG node that was already deleted, so I need to use SIMGH for IMG cleanup.

What I found is that since deleting the node didn’t delete the underlying pieces, the only alternative was to find those pieces individually, and delete them.  Transaction SIMGH did for me what S_IMG_EXTENSION couldn’t.  You see, I did all of my creation and deletion using S_IMG_EXTENSION, and for some reason, S_IMG_EXTENSION doesn’t properly clean up after itself.  So my word of warning is that if create your own custom IMG nodes using S_IMG_EXTENSION, be careful if you do any deletions, and be sure to use SIMGH to validate your work.

Thanks for reading,