Extracting Data from an "unknown" Blob
I'm wondering if Pega provides any "utility" (likely Java, but I don't care how) to extract everything from a BLOB, pulled "directly" from the pzpvStream column in the database.
My use case is: the previous application support team (the app is now on PRPC 5.4 SP2) thought it would be good to "archive" the DB table containing all the work objects, but I no longer have a working Pega instance, and even if I could stand up PRPC, with the right version, many of the rules (including class defns, properties, etc,) are not available.
In the interest of full disclosure, I do have a Pega engine, but a newer version and , for some classes, I have the newer version of the code, but the class(es) are now mapped to different tables in the actual Pega schema, and I couldn't map back to the "old" table.
So I have no way of loading the data into Pega itself, but I have the DB table, so I'd like some way to just open the record, pull out all the data and dump it to some other format (text/XML/JSON, I don't care).
It looks like some tried something like this before: https://pdn.pega.com/community/product-support/question/reading-pzpvstream-using-java
more than once: https://pdn.pega.com/community/pega-product-support/question/read-data-blob-column-external-db
and learned some things: https://pdn.pega.com/community/pega-product-support/question/decompressing-pzpvstream
I understand this would be a case for BIX, but I can't create the BIX rules, or stand up a BIX environment
I'm wondering if Pega provides any "utility" (likely Java, but I don't care how) to extract everything from a BLOB, pulled "directly" from the pzpvStream column in the database.
My use case is: the previous application support team (the app is now on PRPC 5.4 SP2) thought it would be good to "archive" the DB table containing all the work objects, but I no longer have a working Pega instance, and even if I could stand up PRPC, with the right version, many of the rules (including class defns, properties, etc,) are not available.
In the interest of full disclosure, I do have a Pega engine, but a newer version and , for some classes, I have the newer version of the code, but the class(es) are now mapped to different tables in the actual Pega schema, and I couldn't map back to the "old" table.
So I have no way of loading the data into Pega itself, but I have the DB table, so I'd like some way to just open the record, pull out all the data and dump it to some other format (text/XML/JSON, I don't care).
It looks like some tried something like this before: https://pdn.pega.com/community/product-support/question/reading-pzpvstream-using-java
more than once: https://pdn.pega.com/community/pega-product-support/question/read-data-blob-column-external-db
and learned some things: https://pdn.pega.com/community/pega-product-support/question/decompressing-pzpvstream
I understand this would be a case for BIX, but I can't create the BIX rules, or stand up a BIX environment
I've found there is now a UDF (https://pdn.pega.com/community/product-support/question/read-blob-pzpvstream-database-prreadfromstream-vs-dbmslobsubstr) to read properties, which would be great if I knew what the properties were - I don't have the full class defn with all the [old] properties, I just want to get "*"
But maybe, if I could get the source for those [DB] functions (https://pdn.pega.com/community/pega-product-support/question/need-regenerate-udf)...
However, I don't know if that was available w/ 5.4.
***Edited by Moderator Marissa to update categories***
In your newer environment can you save the classes to a new name and then map the new class back to these old tables?
The UDF functions read individual properties from the blob. You would have to have the property names to know what to query and then run it for each property.