Universal Primary Free School Meals (Wales) Release Pack
Workstation patch is now available - ESS has withdrawn the interim artefacts.
Warnings and Caveats
- Time period - September 5th 2022 onwards.
- Applies to - Welsh Primary Schools (and corresponding Welsh primary test data)
- Workstation patch available from Partner Support (bit only works on the above)
Release contents
- New Screens in SIMS
- New Schema in SIMS
- New Base Data in SIMS
- New 3rd Party APIs in SIMS
Sample Solution
public class UPFSM
{
/// <summary>
/// Gets the lookups for UPFSM
/// </summary>
/// <param name="server"></param>
/// <param name="database"></param>
/// <param name="user"></param>
/// <param name="password"></param>
/// <returns></returns>
public static System.Xml.XmlDocument GetXmlUPFSM_LookupsCommand(string server, string database, string user, string password)
{
ThirdPartyCommands.GetXmlUPFSM_LookupsCommand con = new ThirdPartyCommands.GetXmlUPFSM_LookupsCommand(server, database, false, user, password);
System.Xml.XmlDocument d = con.ExecuteCommand();
return d;
}
/// <summary>
/// Gets the configuration for UPFSM - I.e. the status of each NC year group with regard to UPFSM entitlement
/// </summary>
/// <param name="server"></param>
/// <param name="database"></param>
/// <param name="user"></param>
/// <param name="password"></param>
/// <returns></returns>
public static System.Xml.XmlDocument GetXmlUPFSM_ConfigCommand(string server, string database, string user, string password)
{
ThirdPartyCommands.GetXmlUPFSM_ConfigCommand con = new ThirdPartyCommands.GetXmlUPFSM_ConfigCommand(server, database, false, user, password);
System.Xml.XmlDocument d = con.ExecuteCommand();
return d;
}
/// <summary>
/// Gets the exceptions for UPFSM for a date range.
/// </summary>
/// <param name="server"></param>
/// <param name="database"></param>
/// <param name="user"></param>
/// <param name="password"></param>
/// <param name="startDate">nullable = start of time - start date</param>
/// <param name="endDate">nullable = end of relative time - end date</param>
/// <returns></returns>
public static System.Xml.XmlDocument GetXmlUPFSM_ExceptionsCommand(string server, string database, string user, string password, DateTime? startDate, DateTime? endDate)
{
ThirdPartyCommands.GetXmlUPFSM_ExceptionsCommand con = new ThirdPartyCommands.GetXmlUPFSM_ExceptionsCommand(server, database, false, user, password);
System.Xml.XmlDocument d = con.ExecuteCommand(startDate, endDate);
return d;
}
}
This shows the call model. Below has examples of calls.
System.Xml.XmlDocument lookup= SIMSInterface.UPFSM.GetXmlUPFSM_LookupsCommand(Server, Database, User, Password);
System.Xml.XmlDocument config = SIMSInterface.UPFSM.GetXmlUPFSM_ConfigCommand(Server, Database, User, Password);
System.Xml.XmlDocument exception = SIMSInterface.UPFSM.GetXmlUPFSM_ExceptionsCommand(Server, Database, User, Password, null, null);
exception = SIMSInterface.UPFSM.GetXmlUPFSM_ExceptionsCommand(Server, Database, User, Password, new DateTime(2022, 05, 01), null);
exception = SIMSInterface.UPFSM.GetXmlUPFSM_ExceptionsCommand(Server, Database, User, Password, new DateTime(2022, 06, 01), null);
exception = SIMSInterface.UPFSM.GetXmlUPFSM_ExceptionsCommand(Server, Database, User, Password, new DateTime(2022, 07, 01), null);
exception = SIMSInterface.UPFSM.GetXmlUPFSM_ExceptionsCommand(Server, Database, User, Password, new DateTime(2022, 05, 01), new DateTime(2022, 08, 01));
exception = SIMSInterface.UPFSM.GetXmlUPFSM_ExceptionsCommand(Server, Database, User, Password, new DateTime(2022, 05, 01), new DateTime(2022, 05, 01));
exception = SIMSInterface.UPFSM.GetXmlUPFSM_ExceptionsCommand(Server, Database, User, Password, new DateTime(2022, 06, 01), new DateTime(2022, 08, 01));
exception = SIMSInterface.UPFSM.GetXmlUPFSM_ExceptionsCommand(Server, Database, User, Password, new DateTime(2022, 06, 01), new DateTime(2022, 07, 01));
exception = SIMSInterface.UPFSM.GetXmlUPFSM_ExceptionsCommand(Server, Database, User, Password, new DateTime(2022, 06, 01), new DateTime(2022, 06, 01));
exception = SIMSInterface.UPFSM.GetXmlUPFSM_ExceptionsCommand(Server, Database, User, Password, new DateTime(2022, 07, 01), new DateTime(2022, 08, 01));
exception = SIMSInterface.UPFSM.GetXmlUPFSM_ExceptionsCommand(Server, Database, User, Password, new DateTime(2022, 07, 01), new DateTime(2022, 07, 01));
exception = SIMSInterface.UPFSM.GetXmlUPFSM_ExceptionsCommand(Server, Database, User, Password, new DateTime(2022, 08, 01), new DateTime(2022, 08, 01));
exception = SIMSInterface.UPFSM.GetXmlUPFSM_ExceptionsCommand(Server, Database, User, Password, new DateTime(2022, 08, 01), new DateTime(2022, 07, 01));
Lookup
<?xml version="1.0"?>
<UPFSM_Lookups>
<UPFSM_Lookup>
<code>PO</code>
<description>Parents Opted out</description>
</UPFSM_Lookup>
<UPFSM_Lookup>
<code>PE</code>
<description>Policy Exception</description>
</UPFSM_Lookup>
</UPFSM_Lookups>
Config
<?xml version="1.0"?>
<UPFSM_Curriculum_Years>
<UPFSM_Curriculum_Year>
<id>1</id>
<DisplayOrder>2</DisplayOrder>
<Curriculum_Year_Name>N2</Curriculum_Year_Name>
<Curriculum_Year_Description>Curriculum Year N2</Curriculum_Year_Description>
</UPFSM_Curriculum_Year>
<UPFSM_Curriculum_Year>
<id>2</id>
<DisplayOrder>3</DisplayOrder>
<Curriculum_Year_Name>R</Curriculum_Year_Name>
<Curriculum_Year_Description>Curriculum Year R</Curriculum_Year_Description>
<Start>20220901T00:00:00</Start>
<LastUpdated>20220711T15:02:00</LastUpdated>
</UPFSM_Curriculum_Year>
...
Exceptions
<?xml version="1.0"?>
<UPFSM_Exceptions>
<UPFSM_Exception>
<Pupil_External_Id>8AF7EB40-3E9D-4CFF-B03D-9A182879E225</Pupil_External_Id>
<Pupil_Internal_Id>2475</Pupil_Internal_Id>
<START>2022-07-12T00:00:00</START>
<Exception_Code>1</Exception_Code>
</UPFSM_Exception>
<UPFSM_Exception>
<Pupil_External_Id>40FD4603-9895-4D8A-BDFC-AA84ACC7524F</Pupil_External_Id>
<Pupil_Internal_Id>2482</Pupil_Internal_Id>
<START>2022-06-15T00:00:00</START>
<Exception_Code>2</Exception_Code>
</UPFSM_Exception>
...
Click here to download a visual studio solution for the above.