Showing posts with label data. Show all posts
Showing posts with label data. Show all posts

Thursday, January 5, 2023

Big Data Analytics Lifecycle






---------------------------------------------------------------------------- 
All the messages below are just forwarded messages if some one feels hurt about it please add your comments we will remove the post. Host/author is not responsible for these posts.

Wednesday, January 4, 2023

Big Data Architecture Challenges








---------------------------------------------------------------------------- 
All the messages below are just forwarded messages if some one feels hurt about it please add your comments we will remove the post. Host/author is not responsible for these posts.

Big Data architecture style





---------------------------------------------------------------------------- 
All the messages below are just forwarded messages if some one feels hurt about it please add your comments we will remove the post. Host/author is not responsible for these posts.

Tuesday, January 3, 2023

Information Retrieval vs Data Retrieval -- Tabular form

 



---------------------------------------------------------------------------- 
All the messages below are just forwarded messages if some one feels hurt about it please add your comments we will remove the post. Host/author is not responsible for these posts.

Thursday, June 28, 2018

Scheduled publishing of integration data

---------------------------------------------------------------------------- All the messages below are just forwarded messages if some one feels hurt about it please add your comments we will remove the post.Host/author is not responsible for these posts.
----------------------------------------------------------------------------------------------------------------------


Below solution can be helpful when business want to send the data out of maximo on scheduled intervals.

Below are the steps to be followed

1.       Use an existing object structure like MXASSET etc












2.       Add this object structure to a publish channel












3.       Add the publish channel to an external system (ex:EXTSYS1)

4.       Create a cron task and new cron instance with below mandatory information
   Class : custom.integration.cron.RunPublishChannelCrontask
   Access Level : Full



5.       Place  RunPublishChannelCrontask.class file in to the folder \SMP\maximo\applications\maximo\businessobjects\classes\custom\integration\cron.
6.       Build the ear, redeploy it and restart the servers.
7.       Reload the cron which is created earlier, data would be processed and kept in the MIF folder.


Please follow the below blog from Bruno for the class file and better solution

http://maximodev.blogspot.com/2012/04/mif-schedule-file-export.html 

Monday, April 18, 2016

Fixing LocAncestor Data integrity In Maximo


·         Take a backup of existing database table using below query
o   create table locancestor_bkp as (select * from locancestor);

·         Create a new procedure like this below and execute it.
*******************************************************************
create or replace procedure BUILD_LOCANCESTOR as

  MODULE_NAME varchar2(50) := 'LOCATIONS';
  SCRIPT_NAME varchar2(50) := 'BUILD_LOCANCESTOR.sql';
  TABLE_NAME  varchar2(50) := 'LOCANCESTOR';
  ERROR_COUNT number := 0; --Track no of errors
  REC_COUNTER number := 0; --Track no of loaded records
  R           number := 200; --Number of records to commit

  V_MAX_ID number;

  cursor LOCATIONS_CUR is
    select L.LOCATION, L.ORGID, L.SITEID, L.SYSTEMID from LOCHIERARCHY L;

  FIX_LOCATION LOCATIONS.LOCATION%type;
  FIX_SITEID   LOCATIONS.SITEID%type;
  /*These two variables are to hold the LOCATION and SITEID of the location
  for which we are building the hierarchy (the entries in LOCANCESTOR table)*/

  X_LOCATION LOCATIONS.LOCATION%type;
  X_SITEID   LOCATIONS.SITEID%type;
  /*These two variables are to hold the LOCATION and SITEID of the current location in the loop*/

  X_ANCESTOR_LOCATION LOCATIONS.LOCATION%type;
  X_ANCESTOR_SITEID   LOCATIONS.SITEID%type;
  /*These two variables are to hold the LOCATION and SITEID of the ancestor
  of the current location in the loop*/

begin
 

  execute immediate ('TRUNCATE TABLE ' || TABLE_NAME);
  execute immediate ('ALTER TABLE ' || TABLE_NAME || ' NOLOGGING');

  --RESET_SEQUENCE(TABLE_NAME);

  for LC in LOCATIONS_CUR loop
    declare
      FIX_SYSTEMID LOCHIERARCHY.SYSTEMID%type;

    begin
      FIX_LOCATION := LC.LOCATION;
      FIX_SITEID   := LC.SITEID;
      --These two variables will be fixed all the inner loop

     

      FIX_SYSTEMID := LC.SYSTEMID;

      X_LOCATION := LC.LOCATION;
      X_SITEID   := LC.SITEID;
      --These two variables will be changed for each iteration of the inner loop

      loop
        --Inner loop to build all LOCANCESTOR entries for the current location (FIX_LOCATION, FIX_SITEID)
        REC_COUNTER := REC_COUNTER + 1;

    

        insert /*+ APPEND */
        into LOCANCESTOR
          (LOCATION, ANCESTOR, SYSTEMID, SITEID, ORGID, LOCANCESTORID)
        values
          (FIX_LOCATION, --LOCATION
           X_LOCATION, --ANCESTOR
           FIX_SYSTEMID, --SYSTEMID
           LC.SITEID, --SITEID
           LC.ORGID, --ORGID
           LOCANCESTORSEQ.NEXTVAL --LOCANCESTORID
           );

        select max(H.PARENT), max(H.SITEID)
          into X_ANCESTOR_LOCATION, X_ANCESTOR_SITEID
          from LOCHIERARCHY H
         where H.LOCATION = X_LOCATION
           and H.SITEID = X_SITEID
           and H.SYSTEMID = FIX_SYSTEMID;

        if (X_ANCESTOR_LOCATION is null) then
          /*If there is no parent of the current location,
          so it's the top level one and we have to exit the inner loop*/
          exit;
        else
          X_LOCATION := X_ANCESTOR_LOCATION;
          X_SITEID   := X_ANCESTOR_SITEID;
        end if;
      end loop; --End the inner loop

    exception
      WHEN DUP_VAL_ON_INDEX THEN
        null;
      when others then
        ERROR_COUNT := ERROR_COUNT + 1;
       
    end;

    commit;
  end loop;

  commit;

  execute immediate ('ANALYZE TABLE ' || TABLE_NAME ||
                    ' COMPUTE STATISTICS');
  execute immediate ('ALTER TABLE ' || TABLE_NAME || ' LOGGING');

  DBMS_OUTPUT.PUT_LINE(TABLE_NAME || ' errors = ' || ERROR_COUNT);

 
end BUILD_LOCANCESTOR;
/
************************************************************
---------------------------------------------------------------------------- 
All the messagesbelow are just forwarded messages if some one feels hurt about it please add your comments we will remove the post.Host/author is not responsible for these posts.

Friday, February 19, 2016

Fetching last 6 months data in Maximo using SQL Server with output in a specific language

Below is one of the best ways to find number of tickets created in last 6 months in Maximo using SQL Server database in a specific language.
here i am using Portugese as lanuage in which my output should be

Query is self explanatory


select CASE month
WHEN  'January' THEN 'Janeiro de'
WHEN  'February' THEN 'Fevereiro'
WHEN  'March' THEN 'Março de'
WHEN  'April' THEN 'Abril'
WHEN  'May' THEN 'Maio'
WHEN  'June' THEN 'Junho de'
WHEN  'July' THEN 'Julho'
WHEN  'August' THEN 'Agosto'
WHEN  'September' THEN 'Setembro de'
WHEN  'October' THEN 'Outubro'
WHEN  'November' THEN 'Novembro de'
  ELSE 'Dezembro de'
END month,countoftickets from ( SELECT DATENAME(MONTH,DATEADD(month, -5, GETDATE())) month,COUNT(*) AS countoftickets , 1 as fs FROM ticket WHERE MONTH(creationdate) = MONTH(DATEADD(month, -5, GETDATE())) union  SELECT DATENAME(MONTH,DATEADD(month, -4, GETDATE())) month,COUNT(*) AS countoftickets , 2 as fs FROM ticket WHERE MONTH(creationdate) = MONTH(DATEADD(month, -4, GETDATE())) union  SELECT DATENAME(MONTH,DATEADD(month, -3, GETDATE())) month,COUNT(*) AS countoftickets , 3 as fs  FROM ticket WHERE MONTH(creationdate) = MONTH(DATEADD(month, -3, GETDATE())) union  SELECT DATENAME(MONTH,DATEADD(month, -2, GETDATE())) month,COUNT(*) AS countoftickets , 4 as fs  FROM ticket WHERE MONTH(creationdate) = MONTH(DATEADD(month, -2, GETDATE())) union  SELECT DATENAME(MONTH,DATEADD(month, -1, GETDATE())) month,COUNT(*) AS countoftickets , 5 as fs  FROM ticket WHERE MONTH(creationdate) = MONTH(DATEADD(month, -1, GETDATE())) union  SELECT DATENAME(MONTH,DATEADD(month, 0, GETDATE())) month,COUNT(*) AS countoftickets , 6 as fs  FROM ticket WHERE MONTH(creationdate) = MONTH(DATEADD(month, 0, GETDATE()))  ) a1  order by fs

output:

month countoftickets
Setembro de 0
Outubro 0
Novembro de 0
Dezembro de 22
Janeiro de 57
Fevereiro 34






----------------------------------------------------------------------------
All the messagesbelow are just forwarded messages if some one feels hurt about it please add your comments we will remove the post.Host/author is not responsible for these posts.