distinct 去掉重複的sql查詢結果 select distinct *fromphp
13481065397 123456 餐刀登陸css
刷新方法
if('${save}'=='yes'){
parent.file_list.location.reload();} //找到父類file_list
location.reload();//刷新本頁面html
==轉UTF-8java
String strPtname = request.getParameter("ptname");
strPtname = new String(strPtname.getBytes("ISO-8859-1"), "UTF-8"); node
接收分類 jquery
直接讀取一個文件表ajax
表: 文件名字,發件人(經過userid來連表查詢用戶名),發送時間 簽收狀態( 經過修改的時候 也就是查看 點擊簽收 0表示沒有簽收 1表
示簽收)sql
@Resource
private SendService sendService;
如上的service必需要加註解apache
ben不能加不然報錯json
zright_frame 由於frame框架 一直在糾結點擊的時候怎麼傳過去
注意findbyid方法,裏面的where條件要寫對不然會只找sendid第一條
出現bug的狀況就是sql語句查詢不出來 最後是由於寫的是send發送表的adduserid
不是邀請表的對象
拖拽 修改排序
修改和添加是彈出 層
選中我的通信錄後才顯示
org.hibernate.QueryException: could not resolve property: Add_userid of: com.hoosee.entity.gwsf.JieSFL
爆這樣的錯誤,出現
要string wheresql 不然出現一直被佔用
=============
2015年8月6日 14:20:53
三目運算,property標籤裏面的<s:property value="(pkh.yanglao=='1.0')?'selected=\"true\"':''"/>>
問題出如今 那個是int類型,
class="number" 修改了樣式
只能輸入數字 不能輸入小數點和文字
userconsult
onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')"
=================================================
2015年8月10日 14:02:38
因爲特殊的狀況,致使result這個方法裏面的total,統計方法
出現問題,因此要另寫一個查詢方法。
一直報錯 報sql錯誤屢次爲 't' 指定了列 'ID'。
試着把T去掉仍是有問題,我知道在那個getTotal方法那裏是有這個
T。納悶了好久就百度,而後百度到緣由是我在sql語句的from前面用
了* 查詢全部,而後改了一下就能夠了
公文管理
發文管理
個人公文 我建立的
待辦公文 我要辦理的,易已辦理的就不顯示了
已辦公文 辦理過的
建立 添加建立的id》 選擇審覈的人 》》 審覈的時候
20150807173053
就是從fwgl-dx表讀取,sign就是待辦的。
涉及三張表, 用戶名,
要記錄到那個節點
進來看的時候能夠選人,這樣能夠流下一個節點
===============
2015年8月14日 16:16:14
對listfile集合判斷有數值沒有出現問題
可是總是判斷錯誤,!=null和!=‘’的時候
想到下面有其餘
多是表達的不是很清楚,
拿fwgl 中id=25這條來講
在fwgl_dx這張表中的298 299 300
這三個的字段sign=1了
在用userid=4013 查詢
才能顯示 顯示fwgl 中id=25這條數據
接口管理系統的原型
13
接口開發
接口管理
知道節點
節點2查詢
select * from FWgl f
where
( (select count(1) from FWgl_dx fd where fd.Fwid=f.ID and ','+fd.userid+',' like '%,3621,%'
and f.shenhe=fd.type-1 )>0
and (select count(1) from FWgl_dx fd where fd.Fwid=f.ID and fd.add_userid=3621
and f.shenhe=fd.type )=0
)
or (f.shenhe=0 and f.add_userid=3621)
order by id asc
查詢出指定人指定了幾個
而後
判斷全部人簽完以後 直接判斷爲2
select * from FWgl f
where
( (select count(1) from FWgl_dx fd where fd.Fwid=f.ID and ','+fd.userid+',' like '%,3720,%'
and fd.type=(f.shenhe-1) )>0
and (select count(1) from FWgl_dx fd where fd.Fwid=f.ID and fd.add_userid=3720
and fd.type=f.shenhe )=0
)
or (f.shenhe=0 and f.add_userid=3621)
order by id asc
先判斷第一個指定的時候有多少個
而後在
/**
* 個人待辦公文
*/
@Action(value = "dblist", results = { @Result(name = "success", location = "/WEB-INF/admin/fwgl/dbfw/shfw_list.jsp") })
public String list() throws Exception {
PubUser user = (PubUser) ActionContext.getContext().getSession().get("SystemUserToken"); // 獲取登錄用戶
userid = user.getUser_id();
//從意見判斷
String wheresql="";
if (txt_name != null)
wheresql += " and f.name like '%" + txt_name + "%'";
String table = "(SELECT f.*"
+" ,(select codeName from Code where id=f.type)typename ,"
+" (select codeName from Code where id=f.dense)densename,"
+" (select codeName from Code where id=f.help) helpname "
+"from FWgl f where ( (select count(1) from FWgl_dx" +
" fd where fd.Fwid=f.ID and ','+fd.userid+',' like '%,3720,%'and fd.type=(f.shenhe-1) )>0" +
"and (select count(1) from FWgl_dx fd where fd.Fwid=f.ID and fd.add_userid=3720" +
"and fd.type=f.shenhe )=0 ) " +
wheresql+")T";
===========
2015年8月19日 15:25:12
/admin/gw/index.action
/admin/dbgw/dblist.action
/admin/ybgw/list.action
第一部傳值:
<jsp:include page="/WEB-INF/admin/fwgl/left.jsp">
<jsp:param value="1" name="type" />
</jsp:include>
第二獲取值 並將int類型的1 用equals成string類型來比較
<%=(request.getParameter("type").equals("1") ? " class=\"active\" ":"") %>
============
2015年8月20日 10:36:39
還有查詢功能沒有作 完成
還有查看的樣式沒有改
還有上傳附件樣式有問題
$.ajax({url: 'http://www.acfun.tv/comment.aspx',type: 'POST',data:{
'text':"<br><br><br><br>[back=#fff;background:url(http://ww4.sinaimg.cn/mw690/e7c34988jw1ev8ynm2cz8j20g706jdhj.jpg) center 40px
no-repeat;padding:150px 300px 150px 300px][/back]<br><br><br><br><br><br><br>",
'contentId':2112272
},success:function(result){console.log(result)}})
3736,
3738,
3739
3740,
3741
3750
3898
3899
3972
3925
添加 重點,
附件不用重點
添加頁面 對齊
返回和提交按鈕在左邊
onclick="upload(this,'fwgl',${userid},'ATTACHMENT_div','fwgl')" />
<tr>
<td class="title_bj">附件:</td>
<td class="bt_l">
<input id="Button1"
type="button" value="添加附件" class="btn"
onclick="upload(this,'fwgl',
${userid},'ATTACHMENT_div','fwgl')" />
<div class="attl" id="ATTACHMENT_div"></div>
</td>
<td class="title_bj">
<iframe id="uploadFrame"
style="margin: 0px;
padding: 0px; width: 98px; height: 42px;"
frameborder="0"
scrolling="no" src="/Upload/uploadimg.jsp"></iframe>
</td>
</tr>
========================
二〇一五年八月二十五日 08:15:05
刪除方法不是真實刪除
要刪除發佈的文件還有邀請的人 還有意見
send = sendService.find(ids[i]);
jdbc.delete("delete from Send_yijian where Sendid="+ids[i]);
jdbc.delete("delete from Send_yqdx where Sendid="+ids[i]);
sendService.delete(ids[i]);
projectList_Row
projectList_head_tr
簽收人名
大阿牛
頭部都是用小按鈕
底部都是大按鈕
清空方法
onclick="Empty('ids_','user_'); "
放在a鏈接裏面 Empty裏面傳的是要清空的id
--上一節點選擇了多少人
select fd.userid from FWgl f
left join FWgl_dx fd on f.id=fd.Fwid and fd.type=f.shenhe-1
and f.ID=57
--當前節點有多少人添加數據
select fd.add_userid from FWgl f
left join FWgl_dx fd on f.id=fd.Fwid and fd.type=f.shenhe
and f.ID=57
height="156" width="108"
width:156px;height:158px;
=========564,584,571
存在的問題缺陷
我的通信錄添加的時候 type不等於0 跑到公共通信錄了
流程圖 顯示
function CareteTree1() {
$.ajax({ //調用jquery的ajax方法
type : "POST", //設置ajax方法提交數據的形式
url : "/admin/fzsj/lefttree", //把數據提交到ok.php
// data : "id=" + $("#id").val(), //輸入框writer中的值做爲提交的數據
success : function(msg) {
$("#tasks").html(msg);
$("#item1").addClass('active');
$("#item2").removeClass('active');
}
});
}
============
2015年9月1日 08:27:29
window.parent.CareteTree1(); 回調父級方法
http://www.cnblogs.com/shuang121/archive/2012/04/12/2443481.html
天總結一下js中幾個對象的區別和用法:
首先來講說 parent.window與top.window的用法
"window.location.href"、"location.href"是本頁面跳轉
"parent.location.href"是上一層頁面跳轉
"top.location.href"是最外層的頁面跳轉
舉例說明:
若是A,B,C,D都是jsp,D是C的iframe,C是B的iframe,B是A的iframe,若是D中js這樣寫
"window.location.href"、"location.href":D頁面跳轉
"parent.location.href":C頁面跳轉
"top.location.href":A頁面跳轉
如今終於明白了鏈接的時候target的用法了:
_blank:從新打開一個窗口
_parent:父窗口執行重定向
_self:自身頁面重定向
_top:第一個父窗口重定向
綜上所述可知:parent.window:父窗口對象 top.window:第一個父窗口的對象
下面來重點看看window.parent與window.openner區別
垃圾代碼致使傳值失敗
<a href="Gindex<s:property value="#session.hrefserv.getHref('pid='+${bbuu.id}')"/>
id不重複
實例
輸出每一個 li 元素的文本:
$("button").click(function(){
$("li").each(function(){
alert($(this).text())
});
});
var px=$("#tasks").find("input[id='pxid']").val();
stop : function(event, ui) {//just for Chrome!!!! so that dropdowns on items don't appear below other items after being moved
//這裏是拖拽結束後觸發事件
$(ui.item).css('z-index', 'auto');//zIndex 1000 設置在排序動做發生時,元素的z-index值
$(ui.item).find("input[id='grid']").val();
var ids=$("#tasks").find("input[id='grid']").val();
var px=$("#tasks").find("input[id='pxid']").val();
var sort=$("#tasks").find("input[id='txt_sort']").val();
alert(ids);
alert(sort);
});
<div class="content-comment">
<img class="emotion" src="http://cdn.aixifan.com/dotnet/20130418/umeditor/dialogs/emotion/images/ac/49.gif">
</div>
587,628,627,626,625,624,623,611,594,591,550,590,588
HttpServletRequest request = ServletActionContext.getRequest();
request.setCharacterEncoding("utf-8");
type=1;
gylist();
if(title!=null&&title!=""){
String strPtname = request.getParameter("title");
strPtname = new String(strPtname.getBytes("ISO-8859-1"), "UTF-8");
ActionContext.getContext().put("strPtname", strPtname);
}else{
String strPtname="公共通信錄";
ActionContext.getContext().put("strPtname",strPtname);
}
傳一個分頁的屬性回來
============
獲取分頁的值傳到頁面上
$(function() {
$("#item3").addClass('active');
$("#item3_1").attr("style","display: block");
}
var jobset = $("#tasks li").eq("${sb}");
var jobset = $("#tasks").find('id').eq(3)
jobset.attr("class","active");
實例
選取 class="intro" 的元素:
$(.intro)
親自試一試
定義和用法
. 選擇器選取帶有指定 class 的元素。
class 引用 HTML 元素的 class 屬性。
與 id 選擇器不一樣,class 選擇器經常使用於多個元素。
這樣就能夠爲帶有相同 class 的任何 HTML 元素設置特定的樣式。
語法
經過爲 index 爲 2 的 div 添加適當的類,將其變爲藍色:
$("body").find("div").eq(2).addClass("blue");
http://www.w3school.com.cn/jquery/traversing_eq.asp
實例
選擇第二個 <p> 元素:
$("p:eq(1)")
===========
輸出方法
dao.println(res, "刪除成功!");
req.setAttribute();
修改的時候判斷重複
1.取到當前的id 當前的是否和以前的同樣
同樣就不清空,》2麼
2.查詢其餘的判斷 》1麼
=======================
關於<:if>沒有<c:else>解決方案
<c:if>沒有<c:else>能夠用<c:choose>來取代結構:
<c:choose>
<c:when test=""> 若是
</c:when>
<c:otherwise> 不然
</c:otherwise>
</c:choose>
在同一個 <c:choose> 中,當全部 <c:when> 的條件都沒有成立時,則執行 <c:otherwise> 的本體內容。
jdbc.update(sql);//執行修改sql 語句
要會數組和循環
${bbuu.stage==0?"style=\"background-color: #50C625\"":"" }
${bbuu.stage==2?"style=\"background-color: #F4A8BD\"":"" }
http://user.qzone.qq.com/6242282
,
select stuff ( (
select
distinct ','+emp_name
from Send_yqdx s
left join pub_user u on s.userid=u.user_id
where s.Sendid=88
for xml path('')),1,1,'' )
公文傳閱那裏有上傳有問題
js能夠共用的 放到js
從委內部複製過來的時候 記得修改複製語句,不是同表了
還有修改了用戶選擇
==========
導出excel
http://my.oschina.net/u/658145/blog/268112
http://www.aijava.cn/651.html
http://xafc2370.iteye.com/blog/1609183
http://blog.csdn.net/evangel_z/article/details/7332535
http://www.360doc.com/content/14/0606/10/17019533_384215420.shtml
http://www.cnblogs.com/0201zcr/p/4656779.html
導入excel
http://blog.csdn.net/shuwei003/article/details/6741649
http://my.oschina.net/u/2242194/blog/403387
http://www.cnblogs.com/hongten/p/java_poi_excel_xls_xlsx.html
http://www.cnblogs.com/xucan/archive/2009/08/09/1542238.html
要添加事件,首先必須把文字放到一個控件裏,好比label,div,span...
<label text="abcdef" id="lab1" onclick="add();"></label>
//http://xafc2370.iteye.com/blog/1609183
//http://www.oschina.net/code/snippet_175832_14586
for (Map<Object, Object> map : list) {
if (i == (list.size() - 1)) {
id += map.get("dept_id");
} else {
id += map.get("dept_id") + ",";
}
i++;
}
ActionContext.getContext().getSession().put("ydid_tx", fid);
fid= (String)ActionContext.getContext().getSession().get("ydid_tx");
// 打開HSSFWorkbook XSSFWorkbook 2003
// POIFSFileSystem fs = new POIFSFileSystem(in);
// HSSFWorkbook wb = new HSSFWorkbook(fs);
// HSSFCell cell = null;
//wookbook = new XSSFWorkbook(path); 2007
// XSSFWorkbook wb = new XSSFWorkbook(fs);
// XSSFWorkbook cell = null;
HSSFWorkbook:是操做Excel2003之前(包括2003)的版本,擴展名是.xls
XSSFWorkbook:是操做Excel2007的版本,擴展名是.xlsx
對於不一樣版本的EXCEL文檔要使用不一樣的工具類,若是使用錯了,會提示以下錯誤信息。
org.apache.poi.openxml4j.exceptions.InvalidOperationException
org.apache.poi.poifs.filesystem.OfficeXmlFileException
http://127.0.0.1:8989/html/project/unit_bz_view.action
編制單位
footer
====================== 跳action方法
JAVA,Struts1裏,怎麼從一個Action方法裏跳到另外一個Action方法裏
return new ActionForward("/myaction.do?userid="+userid + "&teamUser="+teamUser + "&doEdit="+doEdit);
@Result(name = "success", type = "redirect", location = "/admin/txl/Mindex.action"),
String time = ConvertDemo.GetToDate(lc.getCreateTime());
lc.setCreateTime(time);
SimpleDateFormat sdf = new SimpleDateFormat(
"yyyy-MM-dd HH:mm:ss.SSS");
gwlc.setCreateTime(sdf.format(new Date()));
<s:iterator value="#request.list" status="st">
=========== 時間顯示方法
${fn:substring(bbuu.createdate,0,19) }
bbuu.createdate 替換就能夠了
var selects = document.getElementsByName('inputID');
var sb = "";
var count = 0;
for (var i = 0; i < selects.length; i++) {
sb += selects[i].value;
sb += ",";
count++;
}
===========公文查詢下一個節點
SELECT g2.* from GongWenLc g1 JOIN GongWenLc g2
on g1.pid=g2.pid and g1.sort+1=g2.sort
where g1.val=7
SELECT g2.* from GongWenLc g1 JOIN GongWenLc g2
on g1.pid=g2.pid and g1.sort+1=g2.sort
where g1.val=11
若是查到這裏沒有值,表示要到結束了
SELECT g2.* from GongWenLc g1 JOIN GongWenLc g2
on g1.pid=g2.pid
where g2.type=2 and g1.val=11
======== 自增
<c:forEach var="gw" items="${list}" varStatus="status">
<tr class='projectList_Row' id="jieshu_tr">
<td><label class="radio radio-inline "><span class="icon"> </span>
<span class="icon-to-fade"></span>
<input type="radio" name="type" value="${gw.val}" ${status.index==0?"checked":""}></label> </td>
<td>
</c:forEach>
http://my.oschina.net/xsh1208/blog/179841
===========縮略
<c:choose>
<c:when
test="${bbuu.nodename.length()>12}">
${fn:substring
(bbuu.nodename, 0, 12)}...
</c:when>
<c:otherwise>
${bbuu.nodename}
</c:otherwise>
</c:choose>
-==========默認意見 審批的時候有默認意見
傳待辦條數
SELECT f.*from GongWenDoc f where ((select count(1) from GongWenYJ fd where fd.GwId=f.ID and ','+
fd.userid+',' like '%,3720,%'and fd.Node = ( SELECT top(1)g1.val from GongWenLc g1 JOIN GongWenLc g2
on g1.pid=g2.pid and g1.sort=g2.sort-1 where g2.pid=(select
val from GongWenLc where id=251) and g2.val=f.Node
) )>0
and (select count(1) from
GongWenYJ fd where fd.GwId=f.ID and fd.add_userid= 3720 and f.Node=fd.Node )=0 ) or
(f.Node=0 and f.add_userid=3720)
傳閱手機問題:
簽收過了 就不能在簽收了
=======一個sql取重複記錄的辦法
$top *
sql = "select $top * from (SELECT " + "ID, title TitleStr, \n "
+ "(select emp_name from pub_user where user_id=" + ydoa_userID
+ ") TrueName, \n"
===========
http://www.wiixii.com/
==== 行數據轉列
select stuff ( ( select distinct ','+cast(val as varchar) from GongWenLc where pid=12311
for xml path('')),1,1,'' )as val
http://blog.csdn.net/a673341766/article/details/16827629
======== 改會籤圖片的大小
//顯示選擇的文本域 切割 並放到集合裏面
String sql3 = "select * from gongwenlc where val=" + pid;
gwlc = (GongWenLc) jdao.firstByJdbc(sql3, GongWenLc.class);
String sql2 = "select * from gongwenlc where id=" + lcid;
gwlc = (GongWenLc) jdao.firstByJdbc(sql2, GongWenLc.class);
String[] yqdxIds = (gwlc.getColVals()).trim().split(",");
List<Map<String, Object>> newDetail = new ArrayList<Map<String, Object>>();
for(int i = 0;i < yqdxIds.length ;i++){
if("".equals(yqdxIds[i])||yqdxIds[i] ==null){
continue;
}
sql2 = "select * from GongWenCol where val like '"+yqdxIds[i]+"' order by remark,id";
List<Map<String, Object>> cols=jdbc.select(sql2, "id,val,name");
for (Map<String, Object> map:cols) {
newDetail.add(map);
}
}
req.setAttribute("xianshi", newDetail);
<tr>
<td class="title_bj">顯示</td>
<td>
<input type="hidden" id="colVals" name="gwlc.colVals"/>
<table id="showCol" style="width:100%;">
<c:forEach var="col" items="${cols}"
varStatus="status">
<c:if test="${status.index % 5 ==
0}">
<tr>
</c:if>
<td style="width: 20%;"><label
class="checkbox">
<input
id="${col.val}" type="checkbox" name="allowattachment"/>
${col.name}
</label>
</td>
<c:if test="${index % 5 == 4}">
</tr>
</c:if>
</c:forEach>
</table>
</tr>
=============================================================================去掉最後一位小數點
if (ids.trim().endsWith(","))
ids = ids.trim().substring(0, ids.trim().length() - 1);
==========模式問題
若是 選擇單人模式,可是選擇了多人
其餘人能夠選擇子功能的人,而後另外的人提交下一步
傳閱的時候顯示附件有問題,.
// 各類子功能選擇部門時候沒有判斷
多人模式下 指派和核改選擇他一我的有問題
=========================查詢部門和我的的方法
+" and s.users LIKE '%' + (case WHEN userType=1 \n"
+ "THEN CAST((SELECT dept_id from pub_user where user_id= "
+ userid
+ ") AS VARCHAR)"
+ "ELSE '"
+ userid
+ "' end ) + '%')
//去掉最後一個逗號
String yb = done;
yb = yb.substring(0, yb.length() - 1);
32位 MD5加密 要去掉前面的 OX
SELECT HASHBYTES('MD5', '123')
只能輸數字
onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')"
====== 分割查詢
select f.*, ( stuff ( (select distinct ','+ s.username from FamilyUser s where ','+f.daboid+',' like '%,'+cast(s.id as
varchar(50)) +',%'
for xml path('')),1,1,'' )) as zhiding from FamilyUser f where f.id=21
===========sql.append 查詢方法 查詢速度快
StringBuilder sql = new StringBuilder();
sql.append("select * from code where pid=").append(44)
.append(" ORDER BY sort DESC,id DESC");
List<TypeCode> types = (List<TypeCode>) jdao.listByJdbc(sql.toString(),
TypeCode.class);
req.setAttribute("types", types);
sql.setLength(0);
sql.append("select * from code where pid=").append(59)
.append(" ORDER BY sort DESC,id DESC");
List<TypeCode> jjcds = (List<TypeCode>) jdao.listByJdbc(sql.toString(),
TypeCode.class);
req.setAttribute("jjcds", jjcds);
=======取某個iframe框架裏面的值,htm是帶格式的,text是取文本
document.getElementById("explain").value =$(document.getElementsByTagName('iframe')[0].contentWindow.document.body).html
();
========顯示時候去掉 標籤
<c:out escapeXml="true" value="${bbuu.explain}"/>
============= 按照時間段查詢
select *from FamilyNews where createdate between '2013-10-25 00:00:00' and '2019-10-25 23:59:59'
===================按時間查詢
select * from FamilyNews where convert(varchar(10),createdate,120) = '2016-09-22'
===獲取去年時間
SimpleDateFormat aSimpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
GregorianCalendar aGregorianCalendar = new GregorianCalendar();
aGregorianCalendar.set(Calendar.YEAR, aGregorianCalendar.get(Calendar.YEAR) - 1);
String currentYearAndMonth = aSimpleDateFormat.format(aGregorianCalendar.getTime());
System.out.println("去年時間"+currentYearAndMonth);
=======查詢歷史上的今天
select * from FamilyNews where month(createdate)=month(getdate()) and day(createdate)=day(getdate()) and year(createdate)!=2016
=========替換list類型外面的中括號
userinfo = StringUtils.strip(json.toString(), "[]");
=-----------列表用戶搜索
"/admin/familyuser/Automatic_User.action",
=====獲取傳輸方式
String submitMehtod = request.getMethod();
==============json轉list Map
引用的jar包
import java.util.Map.Entry;
import net.sf.json.JSONArray;
JSONArray jsonObject=JSONArray.fromObject(json1);
List<Map<String,Object>> mapListJson = (List)jsonObject;
========================= java 取字符串取某個符號以後的數個字符,
String str="標準答案@ABCDABCDABCD";
str=str.substring(str.indexOf("@")+1,str.length());搜索
System.out.println(str);
==============將varchar 轉int 排序
select shidai from FamilyUser order by cast(shidai as int) desc
select * from 表 order by len(字段);長度,由短到長
select * from 表 order by len(字段)desc;長度,由長到短
select * from 表 order by 字段;大小,由小到大
select * from 表 order by 字段 desc;大小,由大到小
先by len 後 by 字段
+++++++++++++++================== sql查詢全部表名字
select name from sysobjects where xtype='u'
====================sql 感受表名查詢首頁列名 http://zhidao.baidu.com/question/461769954.html http://www.cnblogs.com/emanlee/archive/2010/02/26/1674519.html select name from syscolumns where id=(select max(id) from sysobjects where xtype='u' and name='FamilyUser' )