fixing oracle primavera p6’s pobs syndrome

Post on 13-Apr-2017

310 Views

Category:

Software

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Fixing Oracle Primavera P6’s POBS Syndrome

Jose Pumarhttps://www.linkedin.com/in/pumar

jpumar ( at ) hotmail.com

V1.0

Mar-2016

The POBS syndrome has been around for some time; symptoms include an unintended POBS table size increase, which in turns makes XER’s considerably larger, and slows down the process of importing/exporting them.

The POBS table holds data that is never used by the tool; the table was left there accidentally, and grows over time.

Chances are that your P6 database or XER’s may be “infected” if you or P6 users in your company:

• Haven’t heard about it,

• Exchange XER’s with other users / companies, or

• Have a release of P6 which is 8.3 or earlier (*).

(*) According to Oracle support, the issue has been resolved for releases 8.4 or later of the software.

The Problem

2

A couple of ways to tell if your database or XER’s are infected:

1. While exporting or importing an XER, the progress bar will show a reference to POBS data being imported / exported (it shouldn’t)

2. Size of XER’s is unusually large –the snippet below shows the size prior and after scrubbing an infected XER file

The Problem (cont’d)

3

If you need a solution, this is what you have to do:

1. Scrub all incoming/outgoing XER’s until you can implement prescription 2. below; after that, you should only worry about incoming XER’s.

2. Scrub your database (the solution provided here works if your database is SQL Server based, which is most likely your case).

Read on for detailed instructions.

Disclaimer: No warranty is offered or implied by providing this advice. Make sure that you backup your projects and, if possible, test the solution on a sandbox before doing it on a production database.

The Solution

4

1. Scrubbing XER’s

1. Open Windows’ Notepad

2. Within Notepad, click File and then Open

3. Navigate to where the infected XER is

The Solution (cont’d)

5

1. Scrubbing XER’s (cont’d)

4. Open the XER file. Note: You will need to select All Files (per the snippet below) in order for you to be able to select and open the file

The Solution (cont’d)

6

1. Scrubbing XER’s (cont’d)

5. Make sure that Word Wrap (found under Format) is unchecked, and that your Status Bar (found under View) is active. If you succeeded, your file will look like the below, with what may appear to be a lot of nonsense text (that’s OK)

The Solution (cont’d)

7

%T indicates the start of a table%F indicates the fields of the above table%R indicates the individual records of the table

Status bar

1. Scrubbing XER’s (cont’d)

6. Hit Ctrl + F and find POBS within the file; note that in the example file, it is found on line 25 (per the status bar, highlighted below); the data that is to be deleted starts at line 27 (i.e., the start of all the records in the POBS table)

The Solution (cont’d)

8

1. Scrubbing XER’s (cont’d)

7. Now type %T in the Find dialog box and click on Find Next (make sure that Direction is set to Down). By doing it, you would be looking for the start of the table after POBS, which signifies the end of the POBS records (in this case, row 6153)

The Solution (cont’d)

9

1. Scrubbing XER’s (cont’d)

8. Select all records for table POBS and delete them; in this example, I selected and deleted records from rows 27 to 6153

9. Save the file; once done, you will notice that the size of the file decreases (sometimes, substantially). If you followed these steps, step 1 is done, and you should have a healthy XER

The Solution (cont’d)

10

1. Scrubbing XER’s (cont’d)

As you may have noticed, the procedure described here is a manual one, which doesn’t require third party applications. It may seem a bit complex at first, but you’ll get the hang of it soon.

There are other options to accomplish the same, including Emerald Associates’ POBS Cleaner, which can be requested here.

Keep on reading to learn about scrubbing the database.

The Solution (cont’d)

11

The Solution (cont’d)2. Scrubbing the Database

1. Make sure that your database is SQL Server based. To do that, click on Help | About Primavera P6 Professional and then on the System tab of the pop-up window; look for the SQLServer keyword, and read on if your system is SQL Server based (chances are it is)

12

The Solution (cont’d)2. Scrubbing the Database (cont’d)

2. If you don’t already have it, you will need to install Microsoft’s SQL Server Management Studio (SSMS) to be able to scrub the POBS table. Chances are that when the SQL Server got installed on your system, SSMS was installed with it. Ask IT to install it for you if you don’t have it. You can also download it from here (2016 release) or here (older release); the instructions provided here are based on the 2008 release, which was installed on my system (I don’t expect that there will be major differences between them, in terms of program menu structure, what dialog boxes look like, etc.)

13

The Solution (cont’d)2. Scrubbing the Database (cont’d)

3. Open SSMS; the first thing it will ask you is to connect to a server, which is what you need to do. If it doesn’t, click on File | Connect Object Explorer, and fill out the boxes per the below

14

Next slide will show you how to get this

Use privuser for both (typically); if it fails, ask your system admin to provide the credentials to you

The Solution (cont’d)2. Scrubbing the Database (cont’d)

4. To obtain the server name of your system, click on Help | About Primavera P6 Professional and then on the System tab of the pop-up window; look in area highlighted below, which will contain your server name (it will be different from what’s shown highlighted with red below); note also the word next to it (i.e., PMDB), which is the name of the database you are interested in

15

The Solution (cont’d)2. Scrubbing the Database (cont’d)

5. If you succeed in connecting, SSMS will look something like the below

16

The Solution (cont’d)2. Scrubbing the Database (cont’d)

6. Find your database (PMDB, in our example, and most likely your case), and the tables under it; scroll down until you find POBS

17

The Solution (cont’d)2. Scrubbing the Database (cont’d)

7. Right click on POBS and click on the option shown below

18

The Solution (cont’d)2. Scrubbing the Database (cont’d)

8. You can see that there is a bunch of (unwanted) data in your POBS table; close the tab by clicking on the x highlighted below

19

The Solution (cont’d)2. Scrubbing the Database (cont’d)

9. Right click on the POBS table (make sure that you are on dbo.POBS), and follow the path and click on the option shown below

20

The Solution (cont’d)2. Scrubbing the Database (cont’d)

10. Your screen should like as shown below; go ahead and delete the WHERE clause (i.e., )

21

The Solution (cont’d)2. Scrubbing the Database (cont’d)

11. Your screen should look as shown below; go ahead and click on Execute (highlighted below); make sure you are on dbo.POBS!!!

22

The Solution (cont’d)2. Scrubbing the Database (cont’d)

12. After the deletion, your screen should look as shown below; go ahead and close the tab by clicking on the x

23

The Solution (cont’d)2. Scrubbing the Database (cont’d)

13. Right click on the POBS table and click on the option shown below (we want to verify that there are no records in the table)

24

The Solution (cont’d)2. Scrubbing the Database (cont’d)

14. Your screen should look as shown below, and your DB is now clean.Congratulations! You have become a master scrubber!!!

25

Next StepsYou can now close SSMS.

Going forward, and to keep your database clean, scrub all incoming XER’s.

Questions?

Don’t hesitate to contact me:

26

Jose Pumarhttps://www.linkedin.com/in/pumar

jpumar ( at ) hotmail.com

top related