﻿<?xml version="1.0"?>
<Entity>
	<Name>TempRoomOut</Name>
	<Type>Single</Type>
	<Table>
		<Name>TempRoomOut</Name>
		<Column>
			<Name>OutListCode</Name>
			<DataType>System.String</DataType>
			<IsKey>true</IsKey>
			<IsAllowNull>false</IsAllowNull>
			<ColumnSize>20</ColumnSize>
		</Column>
		<Column>
			<Name>OutListName</Name>
			<DataType>System.String</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>50</ColumnSize>
		</Column>
		<Column>
			<Name>Out_Date</Name>
			<DataType>System.DateTime</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>8</ColumnSize>
		</Column>
		<Column>
			<Name>Out_state</Name>
			<DataType>System.String</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>50</ColumnSize>
		</Column>
		<Column>
			<Name>ProjectCode</Name>
			<DataType>System.String</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>50</ColumnSize>
		</Column>
		<Column>
			<Name>ConferMark</Name>
			<DataType>System.String</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>50</ColumnSize>
		</Column>
		<Column>
			<Name>Remark</Name>
			<DataType>System.String</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>1000</ColumnSize>
		</Column>
		<Column>
			<Name>CurYear</Name>
			<DataType>System.Int32</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>4</ColumnSize>
		</Column>
		<Column>
			<Name>SumNo</Name>
			<DataType>System.Int32</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>4</ColumnSize>
		</Column>
		<Column>
			<Name>OutAspect</Name>
			<DataType>System.String</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>50</ColumnSize>
		</Column>
		<Column>
			<Name>CodeName</Name>
			<DataType>System.String</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>50</ColumnSize>
		</Column>
		<Column>
			<Name>CopyFor</Name>
			<DataType>System.String</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>200</ColumnSize>
		</Column>
		<Column>
			<Name>UserCode</Name>
			<DataType>System.String</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>20</ColumnSize>
		</Column>
		<Column>
			<Name>CheckState</Name>
			<DataType>System.Int32</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>4</ColumnSize>
		</Column>
		<Column>
			<Name>CheckDate</Name>
			<DataType>System.DateTime</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>8</ColumnSize>
		</Column>
		<Column>
			<Name>CheckPerson</Name>
			<DataType>System.String</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>50</ColumnSize>
		</Column>
		<Column>
			<Name>InputDate</Name>
			<DataType>System.DateTime</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>8</ColumnSize>
		</Column>
		<Column>
			<Name>ModiDate</Name>
			<DataType>System.DateTime</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>8</ColumnSize>
		</Column>
		<Column>
			<Name>ModiPerson</Name>
			<DataType>System.String</DataType>
			<IsKey>false</IsKey>
			<IsAllowNull>true</IsAllowNull>
			<ColumnSize>50</ColumnSize>
		</Column>
		<Sql>
			<Name>Select</Name>
			<String> select  OutListCode, OutListName, Out_Date, Out_state, ProjectCode, ConferMark, Remark, CurYear, SumNo, OutAspect, CodeName, CopyFor, UserCode, CheckState, CheckDate, CheckPerson, InputDate, ModiDate, ModiPerson from TempRoomOut where  OutListCode=@OutListCode</String>
			<CommandType>Text</CommandType>
			<Param>
				<Name>@OutListCode</Name>
				<Column>OutListCode</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
		</Sql>
		<Sql>
			<Name>SelectAll</Name>
			<String> select  OutListCode, OutListName, Out_Date, Out_state, ProjectCode, ConferMark, Remark, CurYear, SumNo, OutAspect, CodeName, CopyFor, UserCode, CheckState, CheckDate, CheckPerson, InputDate, ModiDate, ModiPerson from TempRoomOut</String>
			<CommandType>Text</CommandType>
		</Sql>
		<Sql>
			<Name>Insert</Name>
			<String> Insert into TempRoomOut (  OutListCode, OutListName, Out_Date, Out_state, ProjectCode, ConferMark, Remark, CurYear, SumNo, OutAspect, CodeName, CopyFor, UserCode, CheckState, CheckDate, CheckPerson, InputDate, ModiDate, ModiPerson ) values (  @OutListCode, @OutListName, @Out_Date, @Out_state, @ProjectCode, @ConferMark, @Remark, @CurYear, @SumNo, @OutAspect, @CodeName, @CopyFor, @UserCode, @CheckState, @CheckDate, @CheckPerson, @InputDate, @ModiDate, @ModiPerson )</String>
			<CommandType>Text</CommandType>
			<Param>
				<Name>@OutListCode</Name>
				<Column>OutListCode</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@OutListName</Name>
				<Column>OutListName</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@Out_Date</Name>
				<Column>Out_Date</Column>
				<SqlDbType>DateTime</SqlDbType>
			</Param>
			<Param>
				<Name>@Out_state</Name>
				<Column>Out_state</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@ProjectCode</Name>
				<Column>ProjectCode</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@ConferMark</Name>
				<Column>ConferMark</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@Remark</Name>
				<Column>Remark</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@CurYear</Name>
				<Column>CurYear</Column>
				<SqlDbType>Int</SqlDbType>
			</Param>
			<Param>
				<Name>@SumNo</Name>
				<Column>SumNo</Column>
				<SqlDbType>Int</SqlDbType>
			</Param>
			<Param>
				<Name>@OutAspect</Name>
				<Column>OutAspect</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@CodeName</Name>
				<Column>CodeName</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@CopyFor</Name>
				<Column>CopyFor</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@UserCode</Name>
				<Column>UserCode</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@CheckState</Name>
				<Column>CheckState</Column>
				<SqlDbType>Int</SqlDbType>
			</Param>
			<Param>
				<Name>@CheckDate</Name>
				<Column>CheckDate</Column>
				<SqlDbType>DateTime</SqlDbType>
			</Param>
			<Param>
				<Name>@CheckPerson</Name>
				<Column>CheckPerson</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@InputDate</Name>
				<Column>InputDate</Column>
				<SqlDbType>DateTime</SqlDbType>
			</Param>
			<Param>
				<Name>@ModiDate</Name>
				<Column>ModiDate</Column>
				<SqlDbType>DateTime</SqlDbType>
			</Param>
			<Param>
				<Name>@ModiPerson</Name>
				<Column>ModiPerson</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
		</Sql>
		<Sql>
			<Name>Update</Name>
			<String> Update TempRoomOut set OutListName=@OutListName,Out_Date=@Out_Date,Out_state=@Out_state,ProjectCode=@ProjectCode,ConferMark=@ConferMark,Remark=@Remark,CurYear=@CurYear,SumNo=@SumNo,OutAspect=@OutAspect,CodeName=@CodeName,CopyFor=@CopyFor,UserCode=@UserCode,CheckState=@CheckState,CheckDate=@CheckDate,CheckPerson=@CheckPerson,InputDate=@InputDate,ModiDate=@ModiDate,ModiPerson=@ModiPerson where  OutListCode=@OutListCode</String>
			<CommandType>Text</CommandType>
			<Param>
				<Name>@OutListCode</Name>
				<Column>OutListCode</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@OutListName</Name>
				<Column>OutListName</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@Out_Date</Name>
				<Column>Out_Date</Column>
				<SqlDbType>DateTime</SqlDbType>
			</Param>
			<Param>
				<Name>@Out_state</Name>
				<Column>Out_state</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@ProjectCode</Name>
				<Column>ProjectCode</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@ConferMark</Name>
				<Column>ConferMark</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@Remark</Name>
				<Column>Remark</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@CurYear</Name>
				<Column>CurYear</Column>
				<SqlDbType>Int</SqlDbType>
			</Param>
			<Param>
				<Name>@SumNo</Name>
				<Column>SumNo</Column>
				<SqlDbType>Int</SqlDbType>
			</Param>
			<Param>
				<Name>@OutAspect</Name>
				<Column>OutAspect</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@CodeName</Name>
				<Column>CodeName</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@CopyFor</Name>
				<Column>CopyFor</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@UserCode</Name>
				<Column>UserCode</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@CheckState</Name>
				<Column>CheckState</Column>
				<SqlDbType>Int</SqlDbType>
			</Param>
			<Param>
				<Name>@CheckDate</Name>
				<Column>CheckDate</Column>
				<SqlDbType>DateTime</SqlDbType>
			</Param>
			<Param>
				<Name>@CheckPerson</Name>
				<Column>CheckPerson</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@InputDate</Name>
				<Column>InputDate</Column>
				<SqlDbType>DateTime</SqlDbType>
			</Param>
			<Param>
				<Name>@ModiDate</Name>
				<Column>ModiDate</Column>
				<SqlDbType>DateTime</SqlDbType>
			</Param>
			<Param>
				<Name>@ModiPerson</Name>
				<Column>ModiPerson</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
		</Sql>
		<Sql>
			<Name>Delete</Name>
			<String> Delete from TempRoomOut  where  OutListCode=@OutListCode</String>
			<CommandType>Text</CommandType>
			<Param>
				<Name>@OutListCode</Name>
				<Column>OutListCode</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
		</Sql>
		<Sql>
			<Name>SelectAllIncludeDtl</Name>
			<String> select * 
				, (select count(*) from TempRoomStructure s where OutListCode=a.OutListCode) as RoomNum
				,(select sum(BuildArea) from TempRoomStructure s,Room b where OutListCode=a.OutListCode and s.TempRoomCode=b.RoomCode) as BuildArea
				,(select sum(PreBuildArea) from TempRoomStructure s,Room b where OutListCode=a.OutListCode and s.TempRoomCode=b.RoomCode) as FBuildArea from TempRoomOut a </String>
			<CommandType>Text</CommandType>
		</Sql>
		<Sql>
			<Name>SelectAllIncludeBuildDtl</Name>
			<String> select * 
				, (select count(*) from TempRoomStructure s where OutListCode=a.OutListCode) as RoomNum
				,(select sum(YuBoArea) from TempRoomStructure s,Building b where OutListCode=a.OutListCode and s.TempBuildingCode=b.BuildingCode) as BuildArea
				 from TempRoomOut a
			</String>
			<CommandType>Text</CommandType>
		</Sql>
		<Sql>
			<Name>SelectAllRoomNumAndDim</Name>
			<String> 
					select OutListCode 
					, ( select count(roomcode) from room r , TempRoomStructure tr where tr.TempRoomCode = roomcode  and tr.outlistcode = temproomout.outlistcode ) as RoomNum 
					, ( select sum(BuildArea)  from room r , TempRoomStructure tr where tr.TempRoomCode = roomcode  and tr.outlistcode = temproomout.outlistcode ) as BuildArea
					, ( select sum(PreBuildArea) from room r , TempRoomStructure tr where tr.TempRoomCode = roomcode  and tr.outlistcode = temproomout.outlistcode ) as PreBuildArea
					from temproomout where OutListCode=@OutListCode
			 </String>
			<CommandType>Text</CommandType>
			<Param>
				<Name>@OutListCode</Name>
				<Column>OutListCode</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			
		</Sql>		
		<Sql>
			<Name>SelectTempRoomOutByRoomCodeAndState</Name>
			<String> select  top 1 *  from TempRoomOut where  Out_state=@Out_state and OutListCode in (select OutListCode from TempRoomStructure where TempState=@Out_state and TempRoomCode=@RoomCode) order by CodeName,CurYear desc ,SumNo desc</String>
			<CommandType>Text</CommandType>
			<Param>
				<Name>@Out_state</Name>
				<Column>Out_state</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>
			<Param>
				<Name>@RoomCode</Name>
				<Column>RoomCode</Column>
				<SqlDbType>VarChar</SqlDbType>
			</Param>			
		</Sql>
	</Table>
</Entity>