Need help in Custom functions
Hi all,
I'm very eager to know about custom function which I never heard in any other BI tools.
Can any body please explain ,
How this custom functions work..?
In which scenarios we will use them?
Any example to use.
If you have any documentation regarding this, pls share with us..
Thank you,
Krishna PIngali.
Krishna,
Custom Functions work just like any other built in function.
They can be built using CR or Basic syntax.
They can be very simple or extremely complex.
The best time to use them (in my opinion) is when you have a lengthy formula that needs to be referenced multiple times... AKA code re-usability...
A simple example: <Basic Syntax>
Function AddTwoNumbers (Number1 As Number, Number2 As Number) As Number
AddTwoNumbers = (Number1 + Number2)
End Function
Once the CF has been added to the report, it can be referenced like any other function...
AddTwoNumbers(4,4)
The result is 8
HTH,
Jason
Similar Messages
-
I need help from Customer Support. Whatever this charge is on my credit card,
He recibido un cargo de su tienda, que curiosamente he visto que se han hecho muchos cargos a diferentes personas bajo el mismo copncepto y tienda.Favor acreditarme dicho monto porque no he comprado nada con ustedes y ni tengo idea donde está Minesota.Este es mi cargo. 23/07/15323343GEEKSQUAD RENE00015826 RICHFIELD UUSRD$1,428.010.00 Y veo en Internet que otros clientes han hecho reclamos del mismo concepto. Subject Author PostedGEEKSQUAD RENE00015826Care03-09-2015 06:30 PMGEEKSQUAD RENE00015826 Unknown ChargePriscillaQ12-29-2014 10:08 PMrandom 10 dollar charge from richfield MN to my ac...ChrisBurns07-01-2015 12:50 PMUnknown Geeksquad charge on my Credit CardHardingR12-01-2014 05:57 PMGeekSquad protection terms changed without being i... Lo que me hace pensar que algo anda muy mal en ese Best Buy. Como es posible que no hayan corregido e identificado quienes están detrás de este fraude que lleva años. I need help from Customer Support. Whatever this charge is on my credit card,jesmann10-05-2014 04:52 PM
Hola scj2000-
Muchas gracias por visitar nuestro foro en búsqueda de una explicación al cargo que recién apareció en tu tarjeta de crédito.
Entiendo su preocupación, ya que cualquier cargo extraño que aparece en un estado de cuenta puede ser alarmante. En este caso, el último cargo que puede recuperar usando el correo electrónico que usaste para registrarte al foro, refleja que se renovó un antivirus Kaspersky. Esta autorización nos diste cuando realizaste la compra de tu Lenovo, desde entonces se renueva automáticamente la licencia de antivirus.
Las otras publicaciones que has leído, indican lo mismo. Un cargo que se ha hecho a la tarjeta de crédito que se presentó durante la compra con la autorización del cliente.
Lamento mucho la confusión y espero esto aclare tu duda.
Atentamente, -
Help on custom function...
Hi all
I'm having a problem with this custom function/report posted on TechNet while back for ConfigMgr 2007
http://social.technet.microsoft.com/wiki/contents/articles/7870.sccm-2007-create-report-of-upcoming-maintenance-windows-by-client.aspx
I've made the needed changes according to this blog post:
https://sccmfaq.wordpress.com/2013/08/22/sccm-2012-show-next-effective-maintenance-window/
..but when using maintenance windows that occurs for example 1st tuesday of every 1 months, the function returns the date week ahead. For example now (on 28th of Feb) next maintenance window should be on Tuesday March 3rd, but instead the report is showing
Tuesday March 10th.
Any help on modifying the function would be appreciated, I saw that there comments on the original post about the recurrence type 4 (monthly by weekday as noted here https://msdn.microsoft.com/en-us/library/cc143300.aspx) not working correctly in the function.
It seems that the function now returns the weekday of first full week of the month instead of the correct day.
The function is this:
CREATE FUNCTION [dbo].[SCCM_GetNextServiceWindow](@ScheduleToken AS CHAR(16), @RecurrenceType AS INT) RETURNS @NextServiceWindow TABLE (ScheduleToken CHAR(16), RecurrenceType INT, NextServiceWindow DATETIME, Duration INT, IsGMTTime BIT) AS BEGIN
--1 Occurs on 1/1/2012 12:00 AM 00011A8500080000
--2 Occurs every 3 day(s) effective 1/1/2012 8:00 PM 02811A8040100018
--3 Occurs every 3 week(s) on Saturday effective 1/1/2012 8:00 PM 02811A80401F6000
--3 Occurs every 1 week(s) on Saturday effective 1/1/2012 8:00 PM 02811A80401F2000
--5 Occurs day 2 of every 2 month(s) effective 1/1/2012 8:00 PM 02811A8040288800
--5 Occurs day 31 of every 1 month(s) effective 1/1/2012 8:00 PM 02811A80402FC400
--5 Occurs the last day of every 3 months effective 1/1/2012 8:00 PM 02811A8040280C00
--5 Occurs the last day of every 1 months effective 1/1/2012 8:00 PM 02811A8040280400
--4 Occurs the Third Monday of every 1 month(s) effective 1/1/2012 4:00 AM 00811A9E08221600
--4 Occurs the Last Wednesday of every 1 month(s) effective 1/1/2012 8:00 PM 02811A8040241000
--4 Occurs the Fourth Wednesday of every 1 month(s) effective 1/1/2012 8:00 PM 02811A8040241800
--4 Occurs the Last Monday of every 1 month(s) effective 1/1/2012 8:00 PM 02811A8040221000
--3 Occurs every 1 week(s) on Monday effective 1/1/2012 4:00 AM 00811A9E081A2000
-- http://msdn.microsoft.com/en-us/library/cc143300.aspx [This link is external to TechNet Wiki. It will open in a new window.]
DECLARE @RecurrenceType_NONE INT
, @RecurrenceType_DAILY INT
, @RecurrenceType_WEEKLY INT
, @RecurrenceType_MONTHLYBYWEEKDAY INT
, @RecurrenceType_MONTHLYBYDATE INT
SELECT @RecurrenceType_NONE = 1
, @RecurrenceType_DAILY = 2
, @RecurrenceType_WEEKLY = 3
, @RecurrenceType_MONTHLYBYWEEKDAY = 4
, @RecurrenceType_MONTHLYBYDATE = 5
-- http://msdn.microsoft.com/en-us/library/cc143505.aspx [This link is external to TechNet Wiki. It will open in a new window.]
--DECLARE @RecurrenceType INT; SET @RecurrenceType = @RecurrenceType_WEEKLY
--DECLARE @ScheduleToken CHAR(16); SET @ScheduleToken = '00811A9E081A2000'
DECLARE @ScheduleStartTime INT; SET @ScheduleStartTime = CAST(CONVERT(BINARY(4), LEFT(@ScheduleToken, 8), 2) AS INT)
DECLARE @ScheduleDuration INT; SET @ScheduleDuration = CAST(CONVERT(BINARY(4), RIGHT(@ScheduleToken, 8), 2) AS INT)
-- Duration is in minutes
DECLARE @Duration INT; SET @Duration = @ScheduleStartTime % POWER(2, 6)
-- Calculate the start time
DECLARE @StartTime DATETIME; SET @StartTime = CONVERT(DATETIME, '01/01/1970 00:00:00')
SET @StartTime = DATEADD(YEAR, (@ScheduleStartTime / POWER(2,6)) % POWER(2, 6), @StartTime)
SET @StartTime = DATEADD(MONTH, ((@ScheduleStartTime / POWER(2,12)) % POWER(2, 4)) - 1, @StartTime)
SET @StartTime = DATEADD(DAY, ((@ScheduleStartTime / POWER(2,16)) % POWER(2, 5)) - 1, @StartTime)
SET @StartTime = DATEADD(HOUR, (@ScheduleStartTime / POWER(2,21)) % POWER(2, 5), @StartTime)
SET @StartTime = DATEADD(MINUTE, (@ScheduleStartTime / POWER(2,26)) % POWER(2, 5), @StartTime)
-- Determinte UTC and Flags
DECLARE @IsGMTTime BIT; SET @IsGMTTime = CAST(@ScheduleDuration % POWER(2, 1) AS BIT)
DECLARE @Flags INT; SET @Flags = (@ScheduleDuration / POWER(2,19)) % POWER(2, 3)
-- Calculate the total duration in minutes
SET @Duration = @Duration + ((@ScheduleDuration / POWER(2,22)) % POWER(2, 5)) * 24 * 60 -- DAYS
SET @Duration = @Duration + ((@ScheduleDuration / POWER(2,27)) % POWER(2, 5)) * 60 -- HOURS
DECLARE @Now DATETIME
IF @IsGMTTime = 1 BEGIN
SET @Now = GETUTCDATE()
END ELSE BEGIN
SET @Now = GETDATE()
END
DECLARE @NextMaintenanceWindow DATETIME
IF @RecurrenceType = @RecurrenceType_NONE BEGIN
IF DATEADD(MINUTE, @Duration, @StartTime) > @Now BEGIN
SET @NextMaintenanceWindow = @StartTime
END
END ELSE IF @RecurrenceType = @RecurrenceType_DAILY BEGIN
IF DATEADD(MINUTE, @Duration, @StartTime) > @Now BEGIN
SET @NextMaintenanceWindow = @StartTime
END ELSE BEGIN
-- Calculate the daily interval in minutes
DECLARE @DailyInterval INT
SET @DailyInterval = ((@ScheduleDuration / POWER(2,3)) % POWER(2, 5)) * 24 * 60
SET @DailyInterval = @DailyInterval + ((@ScheduleDuration / POWER(2,8)) % POWER(2, 5)) * 60
SET @DailyInterval = @DailyInterval + (@ScheduleDuration / POWER(2,13)) % POWER(2, 6)
-- Calculate the total number of completed intervals
DECLARE @DailyNumberOfCompletedIntervals INT; SET @DailyNumberOfCompletedIntervals = ROUND(CAST(DATEDIFF(MINUTE, @StartTime, @Now) AS DECIMAL) / @DailyInterval, 0, 0)
-- Calculate the next interval
DECLARE @DailyNextInterval DATETIME; SET @DailyNextInterval = DATEADD(MINUTE, @DailyNumberOfCompletedIntervals * @DailyInterval, @StartTime)
-- Recalc the next interval if the next interval plus the expected duration is in the past
IF DATEADD(MINUTE, @Duration, @DailyNextInterval) < @Now BEGIN
SET @DailyNextInterval = DATEADD(MINUTE, (@DailyNumberOfCompletedIntervals + 1) * @DailyInterval, @StartTime)
END
SET @NextMaintenanceWindow = @DailyNextInterval
END
END ELSE IF @RecurrenceType = @RecurrenceType_WEEKLY BEGIN
DECLARE @WeeklyInterval INT; SET @WeeklyInterval = (@ScheduleDuration / POWER(2,13)) % POWER(2, 3)
DECLARE @WeeklyDoW INT; SET @WeeklyDoW = (@ScheduleDuration / POWER(2,16)) % POWER(2, 3)
-- Adjust the start time to match the next day of week that matches the interval
DECLARE @WeeklyStartTime DATETIME; SET @WeeklyStartTime = DATEADD(DAY, (7 - DATEPART(WEEKDAY, @StartTime) + @WeeklyDoW % 7), @StartTime)
IF DATEADD(MINUTE, @Duration, @WeeklyStartTime) > @Now BEGIN
SET @NextMaintenanceWindow = @WeeklyStartTime
END ELSE BEGIN
-- Calculate the total number of completed intervals
DECLARE @WeeklyNumberOfCompletedIntervals INT; SET @WeeklyNumberOfCompletedIntervals = ROUND(CAST(DATEDIFF(WEEK, @WeeklyStartTime, @Now) AS DECIMAL) / @WeeklyInterval, 0, 0)
-- Calculate the next interval
DECLARE @WeeklyNextInterval DATETIME; SET @WeeklyNextInterval = DATEADD(WEEK, @WeeklyNumberOfCompletedIntervals * @WeeklyInterval, @WeeklyStartTime)
-- Recalc the next interval if the next interval plus the expected duration is in the past
IF DATEADD(MINUTE, @Duration, @WeeklyNextInterval) < @Now BEGIN
SET @WeeklyNextInterval = DATEADD(WEEK, (@WeeklyNumberOfCompletedIntervals + 1) * @WeeklyInterval, @WeeklyStartTime)
END
SET @NextMaintenanceWindow = @WeeklyNextInterval
END
END ELSE IF @RecurrenceType = @RecurrenceType_MONTHLYBYWEEKDAY BEGIN
DECLARE @MonthlyBWWeek INT; SET @MonthlyBWWeek = (@ScheduleDuration / POWER(2,9)) % POWER(2, 3)
DECLARE @MontlhyBWInterval INT; SET @MontlhyBWInterval = (@ScheduleDuration / POWER(2,12)) % POWER(2, 4)
DECLARE @MonthlyBWDoW INT; SET @MonthlyBWDoW = (@ScheduleDuration / POWER(2,16)) % POWER(2, 3)
-- Calculate the total number of completed intervals
DECLARE @MonthlyBWNumberOfCompletedIntervals INT; SET @MonthlyBWNumberOfCompletedIntervals = ROUND(CAST(DATEDIFF(MONTH, @StartTime, @Now) AS DECIMAL) / @MontlhyBWInterval, 0, 0)
IF @MonthlyBWWeek = 0 BEGIN
-- Calculate the next interval
DECLARE @MonthlyBWLDOMNextInterval DATETIME; SET @MonthlyBWLDOMNextInterval = DATEADD(MONTH, @MonthlyBWNumberOfCompletedIntervals * @MontlhyBWInterval, @StartTime)
-- Calculate last day of month
SET @MonthlyBWLDOMNextInterval = DATEADD(DAY, DATEDIFF(DAY, @MonthlyBWLDOMNextInterval, DATEADD(DAY, -1, DATEADD(M, DATEDIFF(MONTH, 0, @MonthlyBWLDOMNextInterval) + 1, 0))), @MonthlyBWLDOMNextInterval)
-- Calculate the last day of the week for the month
SET @MonthlyBWLDOMNextInterval = DATEADD(DAY, -(7 - DATEPART(WEEKDAY, @MonthlyBWLDOMNextInterval) + @MonthlyBWDoW % 7), @MonthlyBWLDOMNextInterval)
IF DATEADD(MINUTE, @Duration, @MonthlyBWLDOMNextInterval) < @Now BEGIN
-- Recalc for the next month interval
SET @MonthlyBWLDOMNextInterval = DATEADD(MONTH, (@MonthlyBWNumberOfCompletedIntervals + 1) * @MontlhyBWInterval, @StartTime)
-- Calculate last day of month
SET @MonthlyBWLDOMNextInterval = DATEADD(DAY, DATEDIFF(DAY, @MonthlyBWLDOMNextInterval, DATEADD(DAY, -1, DATEADD(M, DATEDIFF(MONTH, 0, @MonthlyBWLDOMNextInterval) + 1, 0))), @MonthlyBWLDOMNextInterval)
-- Calculate the last day of the week for the month
SET @MonthlyBWLDOMNextInterval = DATEADD(DAY, -(7 - DATEPART(WEEKDAY, @MonthlyBWLDOMNextInterval) + @MonthlyBWDoW % 7), @MonthlyBWLDOMNextInterval)
END
SET @NextMaintenanceWindow = @MonthlyBWLDOMNextInterval
END ELSE BEGIN
-- Calculate the next interval
DECLARE @MonthlyBWNextInterval DATETIME; SET @MonthlyBWNextInterval = DATEADD(MONTH, @MonthlyBWNumberOfCompletedIntervals * @MontlhyBWInterval, @StartTime)
-- Set the date to the first day of the month
SET @MonthlyBWNextInterval = DATEADD(DAY, -(DAY(@MonthlyBWNextInterval) - 1), @MonthlyBWNextInterval)
-- Set the date to the first day of week in the month
SET @MonthlyBWNextInterval = DATEADD(DAY, (7 - DATEPART(WEEKDAY, @MonthlyBWNextInterval) + @MonthlyBWDoW) % 7, @MonthlyBWNextInterval)
-- Calculate date based on the week number to add
SET @MonthlyBWNextInterval = DATEADD(WEEK, @MonthlyBWWeek-1, @MonthlyBWNextInterval)
IF DATEADD(MINUTE, @Duration, @MonthlyBWNextInterval) < @Now BEGIN
-- Recalc for the next month interval
SET @MonthlyBWNextInterval = DATEADD(MONTH, (@MonthlyBWNumberOfCompletedIntervals + 1) * @MontlhyBWInterval, @StartTime)
-- Set the date to the first day of the month
SET @MonthlyBWNextInterval = DATEADD(DAY, -(DAY(@MonthlyBWNextInterval) - 1), @MonthlyBWNextInterval)
-- Set the date to the first day of week in the month
SET @MonthlyBWNextInterval = DATEADD(DAY, (7 - DATEPART(WEEKDAY, @MonthlyBWNextInterval) + @MonthlyBWDoW % 7), @MonthlyBWNextInterval)
-- Calculate date based on the week number to add
SET @MonthlyBWNextInterval = DATEADD(WEEK, @MonthlyBWWeek-1, @MonthlyBWNextInterval)
END
SET @NextMaintenanceWindow = @MonthlyBWNextInterval
END
END ELSE IF @RecurrenceType = @RecurrenceType_MONTHLYBYDATE BEGIN
DECLARE @MontlhyBDInterval INT; SET @MontlhyBDInterval = (@ScheduleDuration / POWER(2,10)) % POWER(2, 4)
DECLARE @MonthlyBDDoM INT; SET @MonthlyBDDoM = (@ScheduleDuration / POWER(2,14)) % POWER(2, 5)
IF @MonthlyBDDoM = 0 BEGIN
/* This is the last day of month logic */
-- Calculate the total number of completed intervals
DECLARE @MonthlyBDLDOMNumberOfCompletedIntervals INT; SET @MonthlyBDLDOMNumberOfCompletedIntervals = ROUND(CAST(DATEDIFF(MONTH, @StartTime, @Now) AS DECIMAL) / @MontlhyBDInterval, 0, 0)
-- Calculate the next interval
DECLARE @MonthlyBDLDOMNextInterval DATETIME; SET @MonthlyBDLDOMNextInterval = DATEADD(MONTH, @MonthlyBDLDOMNumberOfCompletedIntervals * @MontlhyBDInterval, @StartTime)
-- Calculate last day of month
SET @MonthlyBDLDOMNextInterval = DATEADD(DAY, DATEDIFF(DAY, @MonthlyBDLDOMNextInterval, DATEADD(DAY, -1, DATEADD(M, DATEDIFF(MONTH, 0, @MonthlyBDLDOMNextInterval) + 1, 0))), @MonthlyBDLDOMNextInterval)
-- Recalc the next interval if the next interval plus the expected duration is in the past
IF DATEADD(MINUTE, @Duration, @MonthlyBDLDOMNextInterval) < @Now BEGIN
SET @MonthlyBDLDOMNextInterval = DATEADD(DAY, DATEDIFF(DAY, @MonthlyBDLDOMNextInterval, DATEADD(DAY, -1, DATEADD(M, DATEDIFF(MONTH, 0, DATEADD(MONTH, (@MonthlyBDLDOMNumberOfCompletedIntervals + 1) * @MontlhyBDInterval, @StartTime)) + 1, 0))), @MonthlyBDLDOMNextInterval)
END
SET @NextMaintenanceWindow = @MonthlyBDLDOMNextInterval
END ELSE BEGIN
-- Check to make sure we won't loop forever if more than 31 days some how ends up in the token
IF @MonthlyBDDoM > 31 SET @MonthlyBDDoM = 31
-- Adjust the start time to match the next day of month that matches the interval
DECLARE @MonthlyBDStartTime DATETIME; SET @MonthlyBDStartTime = DATEADD(DAY, (31 - DATEPART(DAY, @StartTime) + @MonthlyBDDoM % 31), @StartTime)
-- This loop is used multiple times to search for the next valid date that falls on the desired day of month
WHILE(DATEPART(DAY, @MonthlyBDStartTime) <> @MonthlyBDDoM) BEGIN
SET @MonthlyBDStartTime = DATEADD(DAY, (31 - DATEPART(DAY, @MonthlyBDStartTime) + @MonthlyBDDoM) % 31, @MonthlyBDStartTime)
END
IF DATEADD(MINUTE, @Duration, @MonthlyBDStartTime) > @Now BEGIN
SET @NextMaintenanceWindow = @MonthlyBDStartTime
END ELSE BEGIN
-- Calculate the total number of completed intervals
DECLARE @MonthlyBDNumberOfCompletedIntervals INT; SET @MonthlyBDNumberOfCompletedIntervals = ROUND(CAST(DATEDIFF(MONTH, @MonthlyBDStartTime, @Now) AS DECIMAL) / @MontlhyBDInterval, 0, 0)
-- Calculate the next interval
DECLARE @MonthlyBDNextInterval DATETIME; SET @MonthlyBDNextInterval = DATEADD(MONTH, @MonthlyBDNumberOfCompletedIntervals * @MontlhyBDInterval, @MonthlyBDStartTime)
WHILE(DATEPART(DAY, @MonthlyBDNextInterval) <> @MonthlyBDDoM) BEGIN
SET @MonthlyBDNextInterval = DATEADD(DAY, (31 - DATEPART(DAY, @MonthlyBDNextInterval) + @MonthlyBDDoM % 31), @MonthlyBDNextInterval)
END
-- Recalc the next interval if the next interval plus the expected duration is in the past
IF DATEADD(MINUTE, @Duration, @MonthlyBDNextInterval) < @Now BEGIN
SET @MonthlyBDNextInterval = DATEADD(MONTH, (@MonthlyBDNumberOfCompletedIntervals + 1) * @MontlhyBDInterval, @MonthlyBDNextInterval)
WHILE(DATEPART(DAY, @MonthlyBDNextInterval) <> @MonthlyBDDoM) BEGIN
SET @MonthlyBDNextInterval = DATEADD(DAY, (31 - DATEPART(DAY, @MonthlyBDNextInterval) + @MonthlyBDDoM % 31), @MonthlyBDNextInterval)
END
END
SET @NextMaintenanceWindow = @MonthlyBDNextInterval
END
END
END
INSERT INTO @NextServiceWindow VALUES (@ScheduleToken, @RecurrenceType, @NextMaintenanceWindow, @Duration, @IsGMTTime)
RETURN
END
Thanks in advance for any suggestions!What an ungodly amount of the code for the task!
I tried
SELECT * FROM SCCM_GetNextServiceWindow('00811A9E08221600', 4)
Which is said mean "Occurs the Third Monday of every 1 month(s)" and it returned 2015-03-17. Which is a Tuesday. But it is the third Tuesday.
Turns out that I have British settings on that instance, DATEFIRST is 1. If do SET DATEFIRST 7, I get 2015-03-23. Which is a Monday, but the wrong one.
The current setting of DATEFIRST can be detected with @@DATEFIRST, and that would make the code even more complex.
My gut reaction would be to start over and do it all in C#, where at least I don't have to bother about SET DATEFIRST.
Or maybe first inspect that the ScheduleToken is correct. Maybe it is, but to me that is just an incomprehensible hex string.
Erland Sommarskog, SQL Server MVP, [email protected] -
Need Help updating custom API Interface to VME-MXI-2
Need Help.
I have a custom Visual C++ 6.0 application that interfaces to the VME-MXI-2 card.
This interface works on older machines, but when we upgrade to new PC's, the interface works, yet it appears that communication exists between the hardware board, and the PC Card appears to be working properly.
I suspect that the drivers have a different interface, but need the interface documentation in order to verify this, can you help?
Older machines use: PCI-MXI-2, and the driver is: C:\Windows\System32\Drivers\vvxid.sys (File version 1.2) cpright 1996-2000
Newer machine has: PCI-MXI-2, and the driver is: C:\Windows\System32\Drivers\nipalk.sys (File version 1.61f0) cpright 2002Alan,
As for reading and writing memory addresses from the VME memory map, you could use functions such as viIn8, viIn16, viIn32, viOut8, viOut16, or viOut32 in the NI-VISA API. You can find the NI-VISA Funtion help at "Start >> Programs >> National Instruments >> NI-VISA >> NI-VISA Help" for Windows. Alternativelly, the NI-VISA Programmers Reference Manual is available for download from ni.com.
What exactly is your application that uses ACFAIL? ACFAIL is typically pretty unrealiable, and is a difficult signal to catch (especially over a bus extension like MXI-2). Basically, ACFAIL is asserted right before a total failure/shutdown of the chassis, so you have a very short window of time to detect the signal before it disappears.
Regards,
Greg Caesar
App
lications Engineer
National Instruments -
Need help in customizing workflow
Hi All,
Need your help in customizing APINVAPR workflow.
Please help in clarifying below point.
How APINVAPR is mapped to invoice approval process,for PO we use document type form to map the POAPPRV workflows when we customize we will map the custom workflow XXXPOAPPRV to make our workflow work.
Similarly how will we customize APINVAPR and map the workflow, pls let me know your thoughts.
My requirement is to customize the APINVAPR workflow and increase the escalation days, during the Invoice Approval Process/Escalate Document Approval activity escalation will happen in 5 days, i need to increase it by 60 days.
If anyone have worked in similar requirement, please help.
Also while downloading getting following error
While downloading workflow APINVAPR, getting below errors
Item type APINVAPR
wferr:
- 1300: Could not load.
- 1114: Could not load from database.
- 1115: Could not load all definitions referenced by 'APINVAPR' item type.
- 1115: Could not load contents of 'APINVAPR' item type.
- 1101: Could not load item types from database. FILTER=APINVAPR
- 210: Oracle Error: ORA-01480: trailing null missing from STR bind value. SQL text: SELECT protect_level, custom_level, name, display_name, description, wf_selector, read_role, write_role, execute_role, persistence_type, to_char(persistence_days) FROM wf_item_types_vl WHERE name like :itemtype ORDER BY name
But it was fine when i downlaod POAPPRV.
Any one face similar kind of issues, please help.
Thanks
BadshaHello,
I am also getting the same error.
WFLOAD apps/apps 0 Y DOWNLOAD file_name.wft INVADJTO
Item type INVADJTOwferr:
- 1300: Could not load.
- 1114: Could not load from database.
- 1115: Could not load all definitions referenced by 'INVADJTO' item type.
- 1115: Could not load contents of 'INVADJTO' item type.
- 1101: Could not load item types from database. FILTER=INVADJTO
- 210: Oracle Error: ORA-01480: trailing null missing from STR bind value. SQ L text: SELECT protect_level, custom_level, name, display_name, description, wf_selector, read_role, write_role, execute_role, persistence_type, t o_char(persistence_days) FROM wf_item_types_vl WHERE name like :itemtype ORDE R BY name
The item type exists in system. It is a seeded one.
Can anyone help on this !!!
Thanks -
I need help in Custom Reporting
Hi,
i need help in auditing, SCOM 2012 R2 is deployed in 2 servers with ACS, i have 2 file server that has some shared folder in which users work on some certain document i need to have a report that i can run on certain file that will show me who access that
file when he access what he did like (read write, delete). i don't think we have this type of capability in default report. let me know if someone can help me in that. (free/paid) i know its a bit customized. let me know if u need any more info.
Syed KasifHi,
As far as I know, to audit file access, we should Enable Audit Policy, and then Set up Audit System Access Control List (SACL).
After that, we can make sure that under security event logs there are auditing logs for file access.
Please refer to the below link for more details about auditing file access on file server:
http://blogs.technet.com/b/mspfe/archive/2013/08/27/auditing-file-access-on-file-servers.aspx
And for Collecting Security Events Using Audit Collection Services in Operations Manager:
http://technet.microsoft.com/en-us/library/hh212908.aspx
Regards,
Yan Li
Regards, Yan Li -
Need Help: Generate Customer Data from Prod Database
Hi All,
My company have an Oracle Financial System, with and old version Oracle Application 11.0.3 and Oracle Database 8.0.5. The database name PROD. This system has been use for more than 7 years and in between there were many stuff resigned without handover and therefore many records and supporting steps cannot be trace back. However the system is still keep running and updated daily.
Recently we have a user request to generate out a list of customer company name, and their related products purchase from the database, this is because they does not have any methods to print out the list from application. Unfortunately, we do not know which tables or index is actualy storing the name of the customer and products. We have the list of below users accounts that able to log in to the database.
PA/PA
APPLSYS/APPS
APPS/APPS
ALR/ALR
AX/AX
AK/AK
GL/GLRG/RG
FA/FAHR/HR
SSP/SSP
HXT/HXT
OTA/OTA
RLA/RLA
VEH/VEH
QA/QA
ICX/ICX
AZ/AZ
AP/AP
AR/AR
OE/OE
OSM/OSM
NSM/NSM2020
CN/CN
MFG/MFG
INV/INV
PO/PO
BOM/BOM
ENG/ENG
MRP/MRP
CRP/CRP
WIP/WIP
CZ/CZ
PJM/PJM
FLM/FLM
MSC/MSC
CS/CS
CE/CE
EC/EC
JG/JG
APPS/APPS
All the reference documents is no longer exist. I am able to use SQL Plus to generate the list of tables with the command : select table_name from user_tables. Each user accounts will return different kind of table names. But still I cant locate which table that actually storing the name of the customers and products.
Is that anybody got hands on this case before? UrgentWe have this table: And need to unload this table data in flat file format.
Need help with unload SQL file with these two columns:
AMT_PAID_ORIG, AMT_PAID_ADJ
SQL> desc flconv.claim_adj_less
Name Null? Type
SAK_CLAIM_ADJ_LESS NUMBER(10)
SAK_CLAIM_ADJ NUMBER(10)
ADJ_CLAIM_ICN NUMBER(13)
ORIGINAL_CLAIM_ICN NUMBER(13)
DATE_PAID_ORIG NUMBER(8)
DATE_PAID_ADJ NUMBER(8)
AMT_PAID_ORIG NUMBER(10,2)
AMT_PAID_ADJ NUMBER(10,2)
SAK_PROV_LOC NUMBER(9)
SAK_FUND_CODE NUMBER(9)
CHECK_SAK NUMBER(9)
SAK_PUB_HLTH NUMBER(9) -
I need help with Analytic Function
Hi,
I have this little problem that I need help with.
My datafile has thousands of records that look like...
Client_Id Region Countries
[1] [1] [USA, Canada]
[1] [2] [Australia, France, Germany]
[1] [3] [China, India, Korea]
[1] [4] [Brazil, Mexico]
[8] [1] [USA, Canada]
[9] [1] [USA, Canada]
[9] [4] [Argentina, Brazil]
[13] [1] [USA, Canada]
[15] [1] [USA]
[15] [4] [Argentina, Brazil]
etc
My task is is to create a report with 2 columns - Client_Id and Countries, to look something like...
Client_Id Countries
[1] [USA, Canada, Australia, France, Germany, China, India, Korea, Brazil, Mexico]
[8] [USA, Canada]
[9] [USA, Canada, Argentina, Brazil]
[13] [USA, Canada]
[15] [USA, Argentina, Brazil]
etc.
How can I achieve this using Analytic Function(s)?
Thanks.
BDFHi,
That's called String Aggregation , and the following site shows many ways to do it:
http://www.oracle-base.com/articles/10g/StringAggregationTechniques.php
Which one should you use? That depends on which version of Oracle you're using, and your exact requirements.
For example, is order importatn? You said the results shoudl include:
CLIENT_ID COUNTRIES
1 USA, Canada, Australia, France, Germany, China, India, Korea, Brazil, Mexicobut would you be equally happy with
CLIENT_ID COUNTRIES
1 Australia, France, Germany, China, India, Korea, Brazil, Mexico, USA, Canadaor
CLIENT_ID COUNTRIES
1 Australia, France, Germany, USA, Canada, Brazil, Mexico, China, India, Korea?
Mwalimu wrote:
... How can I achieve this using Analytic Function(s)?The best solution may not involve analytic functions at all. Is that okay?
If you'd like help, post your best attempt, a little sample data (CREATE TABLE and INSERT statements), the results you want from that data, and an explanation of how you get those results from that data.
Always say which version of Oracle you're using.
Edited by: Frank Kulash on Aug 29, 2011 3:05 PM -
Need Help In "Custom" TopBar Class
New to Plumtree and need help to get rolling. Req's is simple thus far: To supress render of "Login" link in TopBarView for Guests if certain URL is captured at Request.
There were some topics here that suggests extending from the Class PlumtreeTopBarView.CS, I just need to identify which UI part that renders the "Login" html link to supress this. I got the function to use to capture the URL string -> GetRequestURL(), I am fishing info on where or what function in PlumtreeTopBarView I need to override to plugin a condition that if this URL string == <something> then suppress "Login" link, or the Search, or whatever elements in the TopBar I need to suppress if need be??
Is there some Help file in PT that I can reference that will enable me to find what namespace does GetRequestURL() belongs to? Please bear with me I am very new to PT code infrastructure, still trying to find stuff with strict deadlines. Much Obliged in advance...You just need to create your own version of PlumtreeTopBarView (original in com.plumtree.common.uiparts), and use CustomActivitySpace.xml to override that view with your own view. Your version would use some kidn fo logic to determine whether or not to display certain elements. TheUI Customization Guide should help quite a bit, and we have several quickstarts for overriding views you can start from.
Is there some Help file in PT that I can reference that will enable me to find what namespace does GetRequestURL() belongs to?I would simply do a string compare. Tokenize the URL into the base address / control arguments, perhaps splitting on the "?" symbol; then tokenize the base address on the ".". You'll end up with three strings. For portal.plumtree.com, the three strings would portal, plumtree, and com. You can then use those string in the logig you add to PlumtreeTopBarView.
David Phipps
Plumtree Software -
Need help for Customizing Correspondence Management
Hi,
Could anyone provide me some documents or reference links which will be helpful for Customizing Correspondence Management in ES4?
Many Thanks!!Hi Santosh,
Sorry for the late reply.
I have a XDP file having both static and dynamic content. I need to populate the dynamic content with some value which I will be getting from the XML which is stored in the body of the SOAP request. I want the letter to be generated dynamically (like no user selection of XML etc) because I want to avoid manual input in the correspondence management.
Could you please let me know if the above can be achieved. If yes, could you please provide any useful stuff related to above requirement.
Many Thanks!!! -
Need help pl/sql function body returning SQL query - Reports
I need help with Grouping by on a report that I developed in my application.
I have posted my Code in
Apex.oracle.com
workspace : c a s e _ m a n a g e m e n t
User Id : public
Password : public
I need help on Page 38 Reports.
I get blank lines when I do break by first , second and third columns on the reports attribute.
So I think I have to write "group by " or Distinct in side the SQL query. But not sure how to do it there.
Thank youIs this an APEX question, then try here:
Oracle Application Express (APEX)
Is this an Oracle Reports question, then try here:
Reports
Is this an SQL question:
Please provide sample data and expected output. Also please show what you have tried already. -
Need help in Custom component creation with cq
Hi,
I have created my own component in adobe cQ and able to drag an drop in any page. for each instance I am seeing the copy of
component under node /content/mypage/commoncomp. If I edit the properties using design dialog I can able to store values as
expected.
Need help in
1) When I drag and drop the component it shows null for the property by deafult if I click save on edit dialog then the
value is showing. The default value is not shown by default while drag and drop my component it requires atleast one time to
click save from dialog using design mode
2) I need to use the default properties of the orginal components which is root and use the duplicated properties if incase user edit the properties of duplicated component. This may be too messy.... to be more clear
I want to use a common component in many pages but the properties of the components should be updated only when user edit it in design dialog utill then I need the page to use properties of root component.
ThanksYou just need to create your own version of PlumtreeTopBarView (original in com.plumtree.common.uiparts), and use CustomActivitySpace.xml to override that view with your own view. Your version would use some kidn fo logic to determine whether or not to display certain elements. TheUI Customization Guide should help quite a bit, and we have several quickstarts for overriding views you can start from.
Is there some Help file in PT that I can reference that will enable me to find what namespace does GetRequestURL() belongs to?I would simply do a string compare. Tokenize the URL into the base address / control arguments, perhaps splitting on the "?" symbol; then tokenize the base address on the ".". You'll end up with three strings. For portal.plumtree.com, the three strings would portal, plumtree, and com. You can then use those string in the logig you add to PlumtreeTopBarView.
David Phipps
Plumtree Software -
Need help with customizing standard reports in Fusion Applications
Hi,
I have requirement to customize 'Asset Transfer Report' in Oracle Fusion.
This report is a BI Publisher report and Data Model lies in folder '/Share Folders/Financials/Fixed Assets/Tracking/Data Model' and report lies in folder '/Share Folders/Financials/Fixed Assets/Tracking'.
Steps which i have completed
I am trying to customize this report, i followed the below steps
Step 1:-
Copied Data Model into '/Shared Folder/Custom/Financials/Fixed Assets/Tracking/Data Model' and report into '/Shared Folder/Custom/Financials/Fixed Assets/Tracking/'
Step 2:-
Opened task 'Manage Custom Enterprise Scheduler Jobs for Ledger and Related Applications' and created a job with the following details.
Job Definition
Field Name
Value
Display Name
XX Asset Transfers Report
Name
XX_ASSET_TRANSFERS_REPORT
Path
/FA/
Application
Financials Common Module
Description
XX Asset Transfers Report
Job Application Name
FinancialsEss
Enable Submission from Enterprise Manager
Job Type
BIPJobType
Class Name
oracle.xdo.service.client.scheduler.BIPJobExecutable
Default Output Format
Report ID
/Custom/Financials/Fixed Assets/Tracking/Asset Transfers Report.xdo
Priority
Allow Multiple Pending Submissions
False
Enable Submission From Scheduled Processes
Yes
User Properties
Field Name
Value
PDF
.*\.pdf$
jobDefinitionName
FAS430
XML
.*\.xml$
jobPackageName
/oracle/apps/ess/financials/assets/tracking/transfers
EXT_PortletContainerWebModule
Ledger
Since the standard report has the below parameter i have created same set of parameters for the Job which i have created, but i do not know how to assign the list of values to these parameters
Parameter Prompt
Data Type
Page Element
Default Value
Required
Book
String
Text box
Yes
Currency
String
Text box
Yes
Period
String
Text box
Yes
Batch
String
Text box
No
Step 4:-
Now when i navigate to schedule process, when i click Schedule New Process Button in the list of values i can see the job which i created. When i submit the job is completing with error.
When i open the xml file, file is blank and no data is available in the file.
When i open the log file i see the below error
dummy file is deleted
================ BIPJobExecutable Execution Started ============
OutputFile : /u01/APPLTOP/instance/ess/rfd/67068/out/67068.xml
Request ID: 67068 ClassLoader is weblogic.utils.classloaders.GenericClassLoader@1c85c3a finder: weblogic.utils.classloaders.CodeGenClassFinder@1c85cb3 annotation: FinancialsEssApp#V2.0@
RequestId:67068
ReportID : /Custom/Financials/Fixed Assets/Tracking/FLY FA Transfers Report.xdo
Process : BIPDocGen
The bipJobID : 6252
bipJobID is updated to ESSRuntimeService
BIP_STATUS_URL is added to ESSRuntimeService
================ BIPJobExecutable is running in async mode. ============
================ Please check the ess status for more detail info. ============
Am i doing anything wrong while creating the job?
Note :- I created another test data model and report with 'Select SYSDATE from dual' and am able to see the report completing successfully.
Please kindly help, i am failing to meet my deadlines.
Regards,
Prasad RHello Jani Rautiainen,
Thanks a lot for replying my question.
This is the first time i am working with the BI Publisher reports and fusion applications.
My requirement is to add few columns to the standard report with out loosing the functionality.
I was not aware that there is two ways of doing this, i was always copying data model and report to a new folder and trying to create a new job for the report.
As mentioned in the document 7.2.1.4 Using the Customize Feature , i clicked on the more button on my report but i do not see the customize option. Do i need to have any specific role for this to appear in the menu? Please kindly let me know.
Also i see below limitations while customizing report
Limitations
Following are limitations of the Customize report option:
The Customize option is only available through direct access to the BI Publisher server using the /xmlpserver URL (for example:http://hostname.com:7001/xmlpserver). The Customize option is not available through the /analytics URL used to access Oracle Business Intelligence Enterprise Edition.
The Customize option is available only for reports. The Customize option is not available for data models, style templates, or sub templates.To customize data models, style templates or sub templates and insulate them from potential changes from patching: Make a copy of the data model, style template, or sub-template and either rename it or place it in a custom folder. Ensure that you update any reports to point to the customized data model, style template, or sub template.
My requirement is to add few additional columns which needs Data Model to be modified, Can i copy the data model to the custom folder and do my modifications and point this data model in the report(as mentioned in the point 2 in the limitations)? In that case, will the original report submission works?
Regards,
Prasad R -
Need help in customizing people screen.
Hi HRMS Gurus,
I am new to OA HRMS..
I am implementing the solution for a client which requires follwing :-
In people screen, i need one more form to appear.
Requirement goes like this:-
Navigate to people->Others-->End employment
I want End employment form to come in place of Picture in the people screen and
Picture to go inside Other and replace End employment form.
How can I achieve this?
Immediate help would be appreciated.
Thanks
SabyaHi,
thanks for ur input..but i m still stuck up here..
actually I configured a customized form and attatched it to the node and then a responsibility by using functions.
but i am facing some issues. The whole person and assignmed form disappears and only other form remains..
I need to interchange End employment form and Picture form from people screen...
Detailed steps would really help...
regards -
Need help with custom event from Main class to an unrelated class.
Hey guys,
I'm new to Flash and not great with OOP. I've made it pretty far with google and lurking, but I've been pulling my hair out on this problem for a day and everything I try throws an error or simply doesn't hit the listener.
I'm trying to get my Main class to send a custom event to an unrelated class called BigIcon. The rest of the code works fine, it's just the addEventListener and dispatchEvent that isn't working.
I've put in the relevant code in below. Let me know if anything else is needed to troubleshoot. Thank you!
Main.as
package
import flash.display.MovieClip;
import flash.events.MouseEvent;
public class Main extends MovieClip
var iconLayer_mc:MovieClip = new MovieClip();
public function Main()
Spin_btn.addEventListener(MouseEvent.CLICK,fl_MouseClickHandler);
addChildAt(iconLayer_mc,0);
placeIcons();
function placeIcons():void
var i:int;
var j:int;
for (i = 0; i < 4; i++)
for (j = 0; j < 5; j++)
//iconString_array has the names of illustrator objects that have been converted to MovieClips and are in the library.
var placedIcon_mc:BigIcon = new BigIcon(iconString_array[i][j],i,j);
iconLayer_mc.addChild(placedIcon_mc);
function fl_MouseClickHandler(event:MouseEvent):void
dispatchEvent(new Event("twitchupEvent",true));
BigIcon.as
package
import flash.display.MovieClip;
import flash.events.Event;
import flash.utils.getDefinitionByName;
public class BigIcon extends MovieClip
private var iconImage_str:String;
private var iconRow_int:int;
private var iconColumn_int:int;
public function BigIcon(iconImage_arg:String, iconRow_arg:int, iconColumn_arg:int)
iconImage_str = iconImage_arg;
iconRow_int = iconRow_arg;
iconColumn_int = iconColumn_arg;
this.addEventListener(Event.ADDED_TO_STAGE, Setup);
function Setup(e:Event)
this.y = iconRow_int;
this.x = iconColumn_int;
var ClassReference:Class = getDefinitionByName(iconImage_str) as Class;
var thisIcon_mc:MovieClip = new ClassReference;
this.addChild(thisIcon_mc);
addEventListener("twitchupEvent", twitchUp);
function twitchUp(e:Event)
this.y += 10;Ned Murphy wrote:
You should be getting an error for the Main.as class due to missing a line to import the Event class...
import flash.events.Event;
My apologies, I should attempt to compile my example code before I ask for help...
Alright, this compiles, gives me no errors, shows my 'book' and 'flowers' icons perfectly when ran, and prints 'addEventListener' to the output window as expected. I get no errors when I press the button, 'dispatchEvent' is output (good), but the 'twitchUp' function is never called and 'EventTriggered' is never output.
How do I get the 'twitchUp' event to trigger?
Main.as
package
import flash.display.MovieClip;
import flash.events.MouseEvent;
import flash.events.*;
public class Main extends MovieClip
var iconLayer_mc:MovieClip = new MovieClip();
var iconString_array:Array = new Array(2);
public function Main()
Spin_btn.addEventListener(MouseEvent.CLICK,fl_MouseClickHandler);
addChildAt(iconLayer_mc,0);
buildStringArray();
placeIcons();
function buildStringArray():void
var i:int;
var j:int;
for (i = 0; i < 2; i++)
iconString_array[i] = new Array(3);
for (j = 0; j < 3; j++)
if (Math.random() > .5)
//'flowers' is the name of an illustrator object that has been converted to a MovieClip and is in the library
iconString_array[i][j] = "flowers";
else
//'book' is the name of an illustrator object that has been converted to a MovieClip and is in the library
iconString_array[i][j] = "book";
function placeIcons():void
var i:int;
var j:int;
for (i = 0; i < 2; i++)
for (j = 0; j < 3; j++)
//iconString_array has the names of illustrator objects that have been converted to MovieClips and are in the library.
var placedIcon_mc:BigIcon = new BigIcon(iconString_array[i][j],i*50,j*50);
iconLayer_mc.addChild(placedIcon_mc);
function fl_MouseClickHandler(event:MouseEvent):void
dispatchEvent(new Event("twitchupEvent",true));
trace("dispatchEvent");
BigIcon.as
package
import flash.display.MovieClip;
import flash.events.*;
import flash.utils.getDefinitionByName;
public class BigIcon extends MovieClip
private var iconImage_str:String;
private var iconRow_int:int;
private var iconColumn_int:int;
public function BigIcon(iconImage_arg:String, iconRow_arg:int, iconColumn_arg:int)
iconImage_str = iconImage_arg;
iconRow_int = iconRow_arg;
iconColumn_int = iconColumn_arg;
this.addEventListener(Event.ADDED_TO_STAGE, Setup);
function Setup(e:Event)
this.y = iconRow_int;
this.x = iconColumn_int;
var ClassReference:Class = getDefinitionByName(iconImage_str) as Class;
var thisIcon_mc:MovieClip = new ClassReference;
this.addChild(thisIcon_mc);
addEventListener("twitchupEvent", twitchUp);
trace("addEventListener");
function twitchUp(e:Event)
this.y += 10;
trace("EventTriggered");
Output:
[SWF] Untitled-1.swf - 40457 bytes after decompression
addEventListener
addEventListener
addEventListener
addEventListener
addEventListener
addEventListener
dispatchEvent
[UnloadSWF] Untitled-1.swf
Test Movie terminated.
Maybe you are looking for
-
I have to do a project in my final year Computer Engineering. Can someone give me any ideas about project(to be done in Java)? If anyone can help me with any idea, please do so. Thank You!!
-
My US ATV in the UK isn't working properly. Can anyone advise please?
My friend bought me an ATV from the US, but I can't seem to get it to work properly. It's plugged into a US-UK adaptor, powers up fine, got past the point where I connect to my network. It's just when I get to the main menu screen, it freezes up - st
-
Hello there, I am trying to use the MDM 7.1 ABAP API to access MDM data from within a BI system. Now I am wondering how to access key mapping for records in the Main Table. In the Java API there is the RetrieveRecordsKeyMappingsCommand which returns
-
Creating .jnlp files from .java files
Last resort: Ask on the forums. I'm having a lot of trouble creating .jnlp files with only a .java file. For some reason if I do create project, the project does not run correctly, but when I make the file and run the file alone, it works perfectly f
-
After updating to OS7, I now have a mailbox full of old emails, some that were deleted years ago. I used to be able to limit the mailbox size to 50 emails. Is that option still available? If so, where is it? Apple really needs to address this questio